Bug 343824 - Maximize and unmaximize have different keyboard shortcuts
Maximize and unmaximize have different keyboard shortcuts
Status: RESOLVED FIXED
Product: metacity
Classification: Other
Component: general
2.14.x
Other All
: Normal minor
: ---
Assigned To: Metacity maintainers list
Metacity maintainers list
:
: 433343 (view as bug list)
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2006-06-04 13:36 UTC by Oded Arbel
Modified: 2009-01-03 15:01 UTC (History)
9 users (show)

See Also:
GNOME target: ---
GNOME version: 2.13/2.14


Attachments

Description Oded Arbel 2006-06-04 13:36:22 UTC
Which makes little sense, as the two actions cannot be available at the same time and are also complementary - its more like a toggle then two actually different actions. 

I think that the keyboard shortcut for the two actions should be the same, or possibly just unifing the configuration for them (having a "maximize/unmaximize" item in the keyboard shortcut dialog).

Other information:
Comment 1 Elijah Newren 2006-06-04 16:12:55 UTC
It was done this way intentionally for CUA compliance.  If you prefer to change it, you can just set the toggled_maximized keybinding to whatever you prefer and disable the maximize and unmaximize keybindings.
Comment 2 Oded Arbel 2006-06-04 16:42:52 UTC
What is CUA ? 
IMO, the "toggle maximization state" vs. "maximize" + "unmaximize" is a bit baroque, and I wouldn't expect a newbie (or even a power user who is not proficient with GNOME) to understand that bit. But whatever - I don't mind that much as I don't use the shortcuts for that, its just seemed to me like a poor choice.
Comment 3 Elijah Newren 2006-06-04 17:13:49 UTC
Common User Access.  Some IBM standard from like the 80s or so widely adopted so that keybindings are similar between operating systems/desktop environments.  Anyway, if you want us to go against it, you'd need to file a bug against the HIG first; see http://developer.gnome.org/projects/gup/hig/2.0/input-keyboard.html#window-manager-navigation
Comment 4 Björn Lindqvist 2006-06-04 18:17:09 UTC
IMHO: CUA or no CUA, I agree with Oded and have many times mistakenly pressed <Alt>F10 because I thought it would restore the window. Learning two keybindings is harder and counter-intuitive because both double-clicking on the titlebar toggles and clicking on the un/maximize icon. 
But if changing the maximize and unmaximize keybindings isn't possible due to CUA then I think it would instead be nice if the toggle_maximized keybinding was set to a keybinding by default. Then the behaviour would atleast be consistent across different installations and you wouldn't have to resort to gconf hackery to get the functionality.
Even nicer if the toggle_maximized keybinding could show up in the window menu because then it would be discoverable by non-power users.
Comment 5 Oded Arbel 2006-06-05 06:44:42 UTC
I don't see anything in the HIG precluding metacity from using ALT-F10 to both maximize and restore at the same time, or ALT-F5, or both. That list is only as specified to prevent from other applications from overriding keyboard shortcuts used by the window manager.

I'm not familiar with the CUA, but from your description I would think that "expanding" on it so that the shortcut for "maximize" when hit again would restore (and vice-versa) would not be a violation.
Comment 6 Elijah Newren 2006-06-05 16:29:13 UTC
If you can get mpt, calum, and bryan to make the usability declaration that something should be changed here and they specify the exact change, then I'll accept patches for it (please reopen in that case).  Otherwise, I'll leave it as is.  ;-)
Comment 7 Oded Arbel 2006-06-05 17:49:06 UTC
Ok. Sorry for the bug spam I'm generating (I'm new to GNOME but would really like to help), but could you please give me some hints as to how do I get in contact with mpt, calum and/or bryan about this (and other issues) ?
Comment 8 Elijah Newren 2006-06-05 17:59:09 UTC
They're on the usability-maint@gnome.bugs alias, so they should have received a copy of the last two updates of this bug (plus the one I'm about to make).  You can also find them at times on irc (irc.gnome.org).  I was referring to them by their irc nicknames, except that I made a mistake in the case of bryan (whose irc nick is clarkbw).  Anyway, their real names are
  mpt     - Matthew Thomas
  calum   - Calum Benson
  clarkbw - Bryan Clark
You can also probably track them down by googling (on e.g. 'mpt gnome' or other variations).  I'd suggest contacting calum first, as he has been more involved with metacity and keybindings from the beginning, then mpt as he's more likely to be available than clarkbw.
Comment 9 Calum Benson 2006-06-08 16:39:01 UTC
FWIW, the relevant CUA guidelines are here:
http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/F29AL000/2.2.106?SHELF=CEESL002&DT=19921204095534

("Unmaximize" is called "Restore" there, as it is on Windows).

I can't think of any specific objection to Alt+F10 working in addition to Alt+F5, when a window is maximized-- in fact, this is exactly what CDE does, so our CDE->GNOME switchers would probably thank us for it :)
Comment 10 Elijah Newren 2006-06-08 16:49:45 UTC
Then, for consistency, should Alt+F5 re-maximize if pressed again?
Comment 11 Calum Benson 2006-06-08 17:20:26 UTC
Hmm, CDE doesn't do that, but there's a slightly different model happening there-- CDE minimizes windows to the desktop, from where you can either press Alt+F5 to restore, or Alt+F10 to maximize.  So, Alt+F5 /always/ means Restore in CDE, and Alt+F10 always means "toggle between restored and maximized state" (although it's only ever shown as "Maximize" on the menus, and is disabled when the window is maximized even though it does something, which is all a bit weird).

However, were the window list's keyboard navigation ever to be augmented so that you could focus individual window buttons (by pressing left/right arrows once the gripper was focused), we'd then effectively be in the same position as CDE.

If we think that's ever likely to happen, we probably don't want Alt+F5 to toggle; it should always mean "Restore".

If it's never going to happen, we're looking at a situation where we only really need one command, for which we might want to define two shortcuts for historic compatability (especially if bug 338805 ever comes to fruition).  And if that were to happen, we might want to move away from the notion of one of those states being 'maximized' anyway, and just toggle between two known states like the Mac does.  That's a whole different discussion though :)

I guess I'm saying "I don't really know", but I'd agree that, the way things are today, having Alt+F5 toggle as well would probably be consistent and harmless... but that may change if either of those other two things happen.
Comment 12 Bryan W Clark 2006-06-08 18:10:51 UTC
Calum's assesment sounds fair to me.  Hard to say how this will work if the changes in question take effect, however it's probably best to take the harmless and consistent approach for now; crossing the next bridge as we come to it.
Comment 13 Elijah Newren 2006-06-08 18:52:53 UTC
Okay, next question:  Sounds like the current suggestion is to make Alt+F10 become the default binding for toggle_maximize (which is currently unbound by default) and make maximize become unbound by default.  Now, do we want to change the titlebar-right-click menu or the tasklist-right-click-menu (by s/maximize/toggle maximize/ or similar)?
Comment 14 Oded Arbel 2006-06-09 11:04:05 UTC
I think it should stay as it is now - maximize or unmaximize depending on the state (although I personally would have preferred if it said "restore" instead of "unmaximize", which is a bit techy) - but also show the shortcut button for "toggle maximize" in both states - currently it doesn't show the shortcut if you assigned "toggle maximize" but not maximize or unmaximize shortcuts.

I think the logic should be sometehing like:
- are we in maximized state ? if "unmaximize" shortcut enabled - show "unmaximize <unmaximize shortcut>". if "toggle" shortcut enabled - show "unmaximize <toggle shortcut>". otherwise show just "unmaximize".
- same thing for not-maximized state.
Comment 15 Oded Arbel 2006-12-19 10:22:32 UTC
BTW - is the change agreed above going to get into GNOME 2.18 ? Because in 2.17.2 that I'm using now it isn't implemented.
Comment 16 Elijah Newren 2007-04-25 16:50:56 UTC
*** Bug 433343 has been marked as a duplicate of this bug. ***
Comment 17 Oded Arbel 2008-12-21 19:56:40 UTC
Hi guys, sorry for the bug spam but what is the status for this 2.5 years old report? 
(especially considering that on 2006 it appeared that this usability issue is close to being fixed)
Comment 18 Thomas Thurman 2008-12-21 20:10:37 UTC
Okay, so what do we have to do here?

1) Change the binding for "maximize" to unbound.
2) Change the binding for "toggle maximize" to the previous binding for "maximize".
3) Rename "unmaximize" to "restore".
4) Make the right-click menu display the toggle keybinding if it's bound, with an appropriate name; otherwise display maximize, and unmaximize (this seems a bit over-complicated, and I'd rather just display the toggle keybinding with an appropriate name)

Right?
Comment 19 Oded Arbel 2008-12-21 20:27:32 UTC
(1) & (2): Sounds about right. 

(3) & (4): Naming the actions is just a pet grieve of mine - it can be very simple. I just think that "unmaximize" sounds ungainly (and Mozilla's spell checker hates it ;-) )
Comment 20 Thomas Thurman 2008-12-25 16:54:04 UTC
Okay, I've done 1, 2 and 3, which were easy. :)

http://svn.gnome.org/viewvc/metacity?rev=4064&view=rev

Note You need to log in before you can comment on or make changes to this bug.