1 Tasks specified in task plan:
2 * Write an Installation Guide (and probably an installation script).
5 Best-effort requirements:
6 * Respect size hints and try to respond to configure events.
7 * Do testing in common desktop environments: GNOME, KDE, XFCE.
8 * Allow some configuration (border width, focus model?)
9 * Make a package for Ubuntu.
10 * Set up a web site for continued collaboration with users and development. The project web site is not good enough for this.
12 Usability/Attractiveness:
13 * Do some usability testing.
14 * Smoother switching between window managers: --replace, and sessions.
15 * Provide some visual feedback when dragging/dropping windows.
16 * Find a better way for the user to activate the split tile operation.
17 * Add tooltips for the titlebars.
18 * Provide visual feedback of which window is visible in a tile when that window is not focused.
19 * Very weird things happen with Konqueror, especially in fullscreen mode.
20 * Improve the way transients are handled.
21 * Get some icons for the split/close buttons.
22 * Draw more borders, and make the borders prettier.
23 * Draw a different-colored border around the active tile from the others.
24 * Make the focus model more consistent, motion events on titlebars should activate the tile's visible window.
27 * We should use GDK_POINTER_MOTION_HINT_MASK when resizing. This is left out currently to work around a bug where the border would lag behind the cursor.
28 * Fix the "FIXME" comments in the code.
29 * Handle changes in screen resolution.
30 * Figure out how to handle weird situations with _NET_WM_STRUT properly
31 * LuccaBin seems to be unable to get button press/release and expose events when run in Xorg, but widgets inside a LuccaBin can. Yet it works fine in Xephyr. What gives?
32 * Run valgrind or something similar to check for memory leaks.
33 * Implement all the stuff in the design. Some of it doesn't appear to be needed to meet the requirements, and I've been ignoring them.
34 * Check ICCCM/EWMH for correctness/features that should be implemented but aren't.
35 * The window->ignore_focus work-around will fail if a user calls lucca_window_configure multiple times before we get a focus event from the first time.
36 * Window Lists in GNOME panel should function.
37 * GNOME clock applet should pop out a calendar?
38 * Get someone who knows something about window managers and/or GTK to look at this stuff.
40 After project completion:
41 * Add icons. Seriously. They help a lot.
42 * Possibly revise the design of the window management library to contain some abstract base classes/interfaces. In particular, LuccaWindow would benefit from having separate LuccaXWindow, LuccaInternalWindow, and maybe even LuccaInternalManagedWindow classes.
43 * Set up an interface for MDI. This would test the design in weird situations (the wm root isn't the real root). It probably wouldn't be very useful otherwise.
44 * Windows port. It's not clear if this is even possible, but it'd be so cool if it were.
45 * Multiple monitors: find out what happens now and what would be sensible behavior.
46 * Really this depends on what users/potential users want.