For the past three weeks there was a lot going on. First of all, the userTracking idea we initially had proved to provide a bit less than we actually needed, so we agreed that we needed to come up with something more complex, and that lead us to the creation of a new module, the UserTracker. Basically, the user tracker is a whole new module that does what its name says it does :). But the old userTracking stuff was integrated in the ChatView (hence the need to separate the logic into a stand-alone module). This was a bit difficult as not all the things were clear from the start: what signals to send, how to filter them so that we don’t end up with a ton of signals everywhere around the app that would need their own filtering process.
Very important thing: the UserTracker watches users both locally (in the room you are on) and globally (all the rooms you are on, rooms that are all on the same network). So, each network (or account, as they are called) has its own UserTracker that has the job of tracking the local status in all the rooms, and the global one on that network.
The global tracking part uses detailed signals, while the local one uses callbacks in order to kind of simulate the idea of signals. Both these measures were taken so that we minimize the number of filtered signals (basically there is minimum filtering done).
Whoa. A lot about the tracker so far. Now the visual part that will use it. Well, visually speaking there is not much of a change on the Popovers, sure, there were some minor bugs fixed, but in a nutshell the popovers are very much the same visually speaking. What happens in the back-end, well, that’s a different story :).
The Popovers had to be rebased on the tracker branch, and that had its own challenges as well. The current work that’s being done is in order to make use of all the things that tracker has to offer, but inside the popovers.
Stay tuned for more news on the popovers, as the work on them is advancing towards the finish line :).