Inspired by Vincent’s
awesome Gnome Goals
project, I decided to do a much smaller Metacity Goals project.
These are simple coding tasks for those wanting to get started in
Gnome. The first step is to build a CVS version of Metacity — this
is much easier than you might expect because you do not need to build
all of Gnome (or even any other modules) and you don’t have to actually install it. Just follow the few steps in the “Minimal
Building/Testing Environment” section of Metacity’s HACKING
file to do this.
Second, pick out a Metacity bug. There are a half dozen or so easy
ones that I’ve put on the gnome-love
report (which can help you get involved in many other modules too). Of course, the ambitous can just look through bugzilla
for bugs, but I thought I’d point out some ones that I thought would
be easy (and which haven’t already been jumped on by someone else):
-
Bug
335076 — Maximizing and unmaximizing windows doesn’t raise
themBjörn left good directions on how to reproduce, I listed the
relevant functions that would need to be fixed and other
example functions showing how similar stuff has been fixed
elsewhere. There are two closely related issues in this bug
and both should be easy to change, though we’ll need some
usability guidance one whether we want to change the second. -
Bug
335351 — Support sibling from restacking ConfigureRequestsTurns out there was a FIXME in the code that just never got
implemented before because of no requests, but now we have one
(and I’d like it for a few other things too). I pointed out
what part of the code needs to be fixed and another section
that has code very similar to what’s needed in the fix. -
Bug
338361 — Focus with maximize/unmaximize keyboard commands
and sloppy/mouse focusGood steps to duplicate and like the above two bugs I point out
the functions you’d need to look at. -
Bug
334899 — Right clicking on icon for minimized window and
selecting close can result in a “are you sure you want to
exit?” dialog that isn’t shown.I’m prety sure this is a one-liner to fix; see comment
6 for pointers. Ignore the other patch; it was just a
workaround for gedit, but this bug will affect lots of apps. -
Bug
335524 — Warn when apps set WM_TRANSIENT_FOR to a
non-top-level windowYou just need to detect if an app sets an invalid hint (which
should only be 1-2 lines of code, I think; see comment
9 for pointers). Then spit out a warning in that case.
Feature I’d like to see: Per workspace focus stacks. When I go back to a previously visited workspace, I want the focus to be whatever it was when I left even though I moved my mouse. This is the main reason I use openbox instead, it fakes this functionality by ignoring mouse enter on workspace switch.
I’d like to see also a better window placement algorithm, something like the “first-fit” in the old sawfish. Or at least I’d like to have window placed starting from the top left instead of center of the screen.
What about http://bugzilla.gnome.org/show_bug.cgi?id=304763
Heya – I’d really appreciate the ability to double click the App/Window icon on the top left to close a window. It’s difficult coming from a KDE environment to GNOME as it is – Please help! 😛