Ah, the days when Compass was young, and had extranneous lists dependent on window state. Sigh. How foolish we were back then. Of course, it was only yesterday. But still, it's good to reminisce.
Recent changes: o As noted above, the active/hidden window list structure has been supplanted by a single window list per Desktop. Much nicer.
While this doesn't seem like a lot, this sets the stage for MouseMove, and was one of the few pivotal changes remaining for a version 1.0 release.
Features remaining: o MouseMove, Ted's baby. Was blocked awaiting the changes committed today, should ensue shortly. (Ted) o Resolution change support. This is fairly important, and still unclaimed. o Sticky window recognition via Window Title as well as Window Class. (Donovan). o Wraparound preferences for StepQuadrant/Desktop. (Donovan) o New actions: Quit, GatherWindows, Toggle Sticky, ShiftWindow. (Various unclaimed.) o Low Priority: Theme colors. (Unclaimed.)
Bugs: o As a result of the major changes, the development branch doesn't handle stickies quite right (barely inconveniencing, but still wrong). All desktops should share the sticky window structs, with relative positions stored in them rather than absolute. This should be fixed soon by Donovan. o Possible bug report (unverified) of Compass assert-ing when run without Registry settings. Needs verification, and possible fix. o With new changes in the code, the code should be run again under purify to verify good memory management.
Minor, cosmetic changes: o Quadrants should be indexed via 0...(n-1) rather than 1...(n). (Open) o Keep the selected desktop's index, rather than a direct reference in WindowManager.c. (Open) o Cache the selected quadrants of the selected desktop in the WindowManager subsystem. (Open)
If you've thought about developing, but haven't started yet, now's your chance: Dig in!