Metacity Goals

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
    them

    Bjö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 ConfigureRequests

    Turns 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 focus

    Good 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 window

    You 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.

4 Responses to “Metacity Goals”

  1. HE says:

    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.

  2. lm says:

    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.

  3. Nick says:

    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! :P