mikachu/openbox.git
10 years agoUse the ObClient *c variable in client_search_focus_tree_full
Mikael Magnusson [Fri, 19 Feb 2010 21:36:10 +0000 (22:36 +0100)]
Use the ObClient *c variable in client_search_focus_tree_full

10 years agoUse the ObClient *c variable in moverelative
Mikael Magnusson [Fri, 19 Feb 2010 21:34:43 +0000 (22:34 +0100)]
Use the ObClient *c variable in moverelative

10 years agoname/class/type_set are set on the next three lines
Mikael Magnusson [Fri, 19 Feb 2010 21:33:14 +0000 (22:33 +0100)]
name/class/type_set are set on the next three lines

10 years agoDead store to e in menu_frame_render
Mikael Magnusson [Fri, 19 Feb 2010 21:25:06 +0000 (22:25 +0100)]
Dead store to e in menu_frame_render

10 years agoUse c_pfocus in prompt_startup
Mikael Magnusson [Fri, 19 Feb 2010 21:22:59 +0000 (22:22 +0100)]
Use c_pfocus in prompt_startup

It has the same content as c_press though so no functional change.

10 years agoUnused variables in resist_size_monitors()
Mikael Magnusson [Fri, 19 Feb 2010 21:19:47 +0000 (22:19 +0100)]
Unused variables in resist_size_monitors()

10 years agoUnused variables in screen_area()
Mikael Magnusson [Fri, 19 Feb 2010 21:16:44 +0000 (22:16 +0100)]
Unused variables in screen_area()

10 years agoUnused variable guint old
Mikael Magnusson [Fri, 19 Feb 2010 21:13:46 +0000 (22:13 +0100)]
Unused variable guint old

10 years agog_message with variable
Mikael Magnusson [Fri, 19 Feb 2010 21:13:32 +0000 (22:13 +0100)]
g_message with variable

10 years agoRevert "i learnt what xkb does with the state."
Mikael Magnusson [Fri, 19 Feb 2010 20:53:05 +0000 (21:53 +0100)]
Revert "i learnt what xkb does with the state."

But apparently not well enough

This reverts commit 041ac5784fa7f3da3667281e046507963d241551.

10 years agodon't use a variable as a format string
Dana Jansens [Wed, 17 Feb 2010 16:44:12 +0000 (11:44 -0500)]
don't use a variable as a format string

10 years agolower the default submenu show delay
Dana Jansens [Tue, 16 Feb 2010 13:19:00 +0000 (08:19 -0500)]
lower the default submenu show delay

10 years agoinitialize the action shutdown function to NULL
Dana Jansens [Thu, 11 Feb 2010 19:58:53 +0000 (14:58 -0500)]
initialize the action shutdown function to NULL

10 years agodont trust the _NET_ACTIVE_WINDOW timestamp. (fixes bug #4519)
Dana Jansens [Mon, 15 Feb 2010 17:33:33 +0000 (12:33 -0500)]
dont trust the _NET_ACTIVE_WINDOW timestamp. (fixes bug #4519)

if we decide to focus the window, do not use their provided timestamp.
chromium gives a very old timestamp, which means we think we're focusing the
window but it never actually gets focus, leading to inconsistent behaviour by
openbox.  use the timestamp for making decisions about passing focus if you
want (we dont right now), but not for the XSetInputFocus call.

10 years agoCheck node->name for null
Mikael Magnusson [Fri, 12 Feb 2010 04:07:00 +0000 (05:07 +0100)]
Check node->name for null

Seems to happen sometimes with a well placed xml comment.

10 years agorefresh the xlib keyboard stuff on mappingnotify
Dana Jansens [Fri, 19 Feb 2010 20:22:05 +0000 (15:22 -0500)]
refresh the xlib keyboard stuff on mappingnotify

10 years agomake the execute action not segfault when using a prompt (bug #4543)
Dana Jansens [Thu, 11 Feb 2010 15:25:35 +0000 (10:25 -0500)]
make the execute action not segfault when using a prompt (bug #4543)

also save the client when using a prompt so it can be used if you choose "yes" from the prompt

10 years agoadd an optional shutdown function which actions can register
Dana Jansens [Thu, 11 Feb 2010 15:25:22 +0000 (10:25 -0500)]
add an optional shutdown function which actions can register

10 years agoi learnt what xkb does with the state.
Dana Jansens [Wed, 10 Feb 2010 02:03:01 +0000 (21:03 -0500)]
i learnt what xkb does with the state.

use the state from keyrelease events directly, rather than query the state (which is not as accurate!)

the xkb state (as opposed to the normally sent compat state) contains extra info like the keyboard group, the pointer buttons, etc.  so we can just strip that stuff out. (See section 2.2.2 of the XKB proto document)

10 years agofix crash in 3.4 that doesnt show up in work
Dana Jansens [Mon, 8 Feb 2010 23:06:16 +0000 (18:06 -0500)]
fix crash in 3.4 that doesnt show up in work

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 8 Feb 2010 19:28:04 +0000 (14:28 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoadd doc/obxprop.1 to gitignore
Dana Jansens [Mon, 8 Feb 2010 19:27:49 +0000 (14:27 -0500)]
add doc/obxprop.1 to gitignore

10 years agobump version and add changelog for 3.4.11
Dana Jansens [Mon, 8 Feb 2010 19:04:23 +0000 (14:04 -0500)]
bump version and add changelog for 3.4.11

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 8 Feb 2010 19:24:08 +0000 (14:24 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoAdd obxprop manpage to install
Dana Jansens [Mon, 8 Feb 2010 19:17:09 +0000 (14:17 -0500)]
Add obxprop manpage to install

10 years agoUpdate the manpage for obxprop
Dana Jansens [Mon, 8 Feb 2010 18:55:29 +0000 (13:55 -0500)]
Update the manpage for obxprop

Specify that it allows you to specify properties on the command line.
Update the variable names to _OB_APP_*.

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 8 Feb 2010 18:42:46 +0000 (13:42 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoAdd a hook to unset the client in the open menu frame instead of closing it
Mikael Magnusson [Mon, 18 Jan 2010 15:48:00 +0000 (16:48 +0100)]
Add a hook to unset the client in the open menu frame instead of closing it

Also nukes menu_frame_hide_all_client() as it is now unused.

10 years agoDon't close the menu when you held control even for execute
Mikael Magnusson [Mon, 18 Jan 2010 15:48:27 +0000 (16:48 +0100)]
Don't close the menu when you held control even for execute

10 years agoDon't alt-tab to skip_taskbar iconic windows if they have parents
Mikael Magnusson [Sat, 16 Jan 2010 18:32:44 +0000 (19:32 +0100)]
Don't alt-tab to skip_taskbar iconic windows if they have parents

10 years agoadjust who shows up in the alt-tab list using SKIP_TASKBAR (Fixes bug #4503)
Dana Jansens [Mon, 18 Jan 2010 21:08:23 +0000 (16:08 -0500)]
adjust who shows up in the alt-tab list using SKIP_TASKBAR (Fixes bug #4503)

allow window types != NORMAL to not show up in the alt-tab list
but don't allow DIALOG types to hide from the list
also any window which is DEMANDS_ATTENTION should appear in the list regardless
  of its SKIP_TASKBAR status

10 years agodon't use client_move() to end a move
Dana Jansens [Fri, 15 Jan 2010 22:49:54 +0000 (17:49 -0500)]
don't use client_move() to end a move

client_move() uses the client's current width/height, whereas all along we
  were using the width/height the client had at the start, so this causes
  client_configure() to behave differently at the end than during the move

10 years agoallow multiple escaped _'s in a menu label, and allow a real _ to come later in the...
Dana Jansens [Fri, 15 Jan 2010 21:40:29 +0000 (16:40 -0500)]
allow multiple escaped _'s in a menu label, and allow a real _ to come later in the label (Fixes bug #4355).

10 years agoRemember the maximized state of a window when it goes fullscreen and try restore...
Dana Jansens [Fri, 15 Jan 2010 19:50:36 +0000 (14:50 -0500)]
Remember the maximized state of a window when it goes fullscreen and try restore it after

10 years agocatch the SIGTTOU and SIGTTIN signals when an app we launch tries to use its stdin...
Dana Jansens [Fri, 15 Jan 2010 20:48:56 +0000 (15:48 -0500)]
catch the SIGTTOU and SIGTTIN signals when an app we launch tries to use its stdin/out (but we don't have one either).  Fixes bug #4072.

10 years agomake xdg-autostart use the OPENBOX environment by default, so you can say OnlyShowIn...
Dana Jansens [Thu, 28 Jan 2010 01:01:24 +0000 (20:01 -0500)]
make xdg-autostart use the OPENBOX environment by default, so you can say OnlyShowIn=OPENBOX in a .desktop and it will work as expected

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 25 Jan 2010 20:00:39 +0000 (15:00 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoFix bug #4492 better, the test in openbox-gnome-session needs to be inverted
Dana Jansens [Sun, 24 Jan 2010 05:07:56 +0000 (00:07 -0500)]
Fix bug #4492 better, the test in openbox-gnome-session needs to be inverted

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Thu, 14 Jan 2010 21:20:10 +0000 (16:20 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoUpdate hungarian translation.
Laszlo Dvornik [Fri, 8 Jan 2010 21:40:40 +0000 (22:40 +0100)]
Update hungarian translation.

10 years agoPrefer to use larger images and scale down than to scale up (more distortion)
Dana Jansens [Thu, 14 Jan 2010 20:03:06 +0000 (15:03 -0500)]
Prefer to use larger images and scale down than to scale up (more distortion)

10 years agodon't resize the label to 0
Dana Jansens [Thu, 14 Jan 2010 19:57:18 +0000 (14:57 -0500)]
don't resize the label to 0

10 years agoFixes bug #4492 (mis-using the return value of grep -q in openbox-gnome-session script
Dana Jansens [Tue, 12 Jan 2010 18:59:25 +0000 (13:59 -0500)]
Fixes bug #4492 (mis-using the return value of grep -q in openbox-gnome-session script

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Tue, 12 Jan 2010 15:11:01 +0000 (10:11 -0500)]
Merge branch 'backport' into 3.4-working

10 years agomake focus cycle target fallback work right by going to the next prev window
Dana Jansens [Mon, 11 Jan 2010 20:37:36 +0000 (15:37 -0500)]
make focus cycle target fallback work right by going to the next prev window

10 years agoMake the focus cycle indicator follow target fallback in the popup
Dana Jansens [Mon, 11 Jan 2010 20:35:47 +0000 (15:35 -0500)]
Make the focus cycle indicator follow target fallback in the popup

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 11 Jan 2010 20:14:36 +0000 (15:14 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoMore work on refreshing the focus cycle dialog when windows are added/removed from...
Dana Jansens [Mon, 11 Jan 2010 20:13:55 +0000 (15:13 -0500)]
More work on refreshing the focus cycle dialog when windows are added/removed from the valid focus order

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 11 Jan 2010 18:44:13 +0000 (13:44 -0500)]
Merge branch 'backport' into 3.4-working

Conflicts:

configure.ac

10 years agoWhen a user id is specified, or --root, use the ID directly, don't try find a client...
Dana Jansens [Mon, 11 Jan 2010 18:43:25 +0000 (13:43 -0500)]
When a user id is specified, or --root, use the ID directly, don't try find a client child of it

10 years agoAdd _OB_VERSION and _OB_APP_ROLE/CLASS/NAME/TYPE
Dana Jansens [Mon, 11 Jan 2010 18:42:50 +0000 (13:42 -0500)]
Add _OB_VERSION and _OB_APP_ROLE/CLASS/NAME/TYPE

Add _OB_VERSION property on the root window.
Change _OB_ROLE/CLASS/NAME to _OB_APP_*.
Add _OB_APP_TYPE which has a string for the type chosen for the window on
  mapping by Openbox.
Adjust the rc.xml to match these changes.

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 11 Jan 2010 18:12:43 +0000 (13:12 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoReuse ObFocusCyclePopupTargets when refreshing the focus cycle dialog
Dana Jansens [Mon, 11 Jan 2010 18:12:09 +0000 (13:12 -0500)]
Reuse ObFocusCyclePopupTargets when refreshing the focus cycle dialog

10 years agoRedraw the focus cycle popup when the list of focusable windows changes, rather than...
Dana Jansens [Mon, 11 Jan 2010 17:47:59 +0000 (12:47 -0500)]
Redraw the focus cycle popup when the list of focusable windows changes, rather than closing it

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 11 Jan 2010 16:11:24 +0000 (11:11 -0500)]
Merge branch 'backport' into 3.4-working

Conflicts:

po/hu.po
po/lv.po

10 years agoIf a window is added to the focus order while focus cycling, stop the focus cycling...
Dana Jansens [Mon, 11 Jan 2010 16:02:48 +0000 (11:02 -0500)]
If a window is added to the focus order while focus cycling, stop the focus cycling istead of crashing (See bug #4411)

10 years agoUpdate latvian translation.
Einars Sprugis [Sun, 10 Jan 2010 21:23:20 +0000 (22:23 +0100)]
Update latvian translation.

10 years agoUpdate hungarian translation.
Laszlo Dvornik [Fri, 8 Jan 2010 21:40:40 +0000 (22:40 +0100)]
Update hungarian translation.

10 years agoPass NULL, not 0, handle invalid --id better.
Mikael Magnusson [Fri, 8 Jan 2010 20:51:35 +0000 (21:51 +0100)]
Pass NULL, not 0, handle invalid --id better.

10 years agoobxprop: Add ability to limit listing to given properties
Mikael Magnusson [Fri, 8 Jan 2010 20:51:04 +0000 (21:51 +0100)]
obxprop: Add ability to limit listing to given properties

10 years agoFix the ~ expansion regex
Mikael Magnusson [Fri, 8 Jan 2010 20:07:04 +0000 (21:07 +0100)]
Fix the ~ expansion regex

The look-around things are fixed-width but the [stuff] is 1 char, and
the $ is 0 so it didn't work.  I already used that trick for the ^,
maybe it used to work due to a bug or smth.

10 years agoChange Usage translation in japanese, this is what gtk uses
Mikael Magnusson [Thu, 17 Dec 2009 16:24:50 +0000 (17:24 +0100)]
Change Usage translation in japanese, this is what gtk uses

10 years agomake Home and End keys navigate to top/bottom of the active menu
Dana Jansens [Fri, 8 Jan 2010 14:04:25 +0000 (09:04 -0500)]
make Home and End keys navigate to top/bottom of the active menu

10 years agoUse submenuShowDelay when navigating menus with the keyboard
Dana Jansens [Fri, 8 Jan 2010 14:00:00 +0000 (09:00 -0500)]
Use submenuShowDelay when navigating menus with the keyboard

10 years agoadd the 3.4.10 changelog, update the version for release release-3.4.10
Dana Jansens [Thu, 7 Jan 2010 19:24:24 +0000 (14:24 -0500)]
add the 3.4.10 changelog, update the version for release

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Thu, 7 Jan 2010 18:26:28 +0000 (13:26 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoFix a crash when moving into a menu on top of a separator and nothing is selected
Dana Jansens [Wed, 6 Jan 2010 23:58:27 +0000 (18:58 -0500)]
Fix a crash when moving into a menu on top of a separator and nothing is selected

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Wed, 6 Jan 2010 22:32:14 +0000 (17:32 -0500)]
Merge branch 'backport' into 3.4-working

Conflicts:

openbox/actions/focus.c

10 years agoImproved menu behaviour
Dana Jansens [Wed, 6 Jan 2010 22:30:42 +0000 (17:30 -0500)]
Improved menu behaviour

Make 'left' key in a menu close it's visible child menu and move to the parent
  properly.
Make clicking on a menu item in a menu close any of its grandchildren and
  remove focus from its children, effectively focusing the menu item you
  clicked on.

10 years agoChange the openbox website to openbox.org
Dana Jansens [Wed, 6 Jan 2010 18:41:15 +0000 (13:41 -0500)]
Change the openbox website to openbox.org

10 years agoadd a manpage for obxprop
Dana Jansens [Wed, 6 Jan 2010 18:39:02 +0000 (13:39 -0500)]
add a manpage for obxprop

10 years agoAdd a --root option for obxprop
Dana Jansens [Wed, 6 Jan 2010 18:24:41 +0000 (13:24 -0500)]
Add a --root option for obxprop

10 years agoAllow infinite delay for submenu show/hide by using a negative value.
Dana Jansens [Mon, 4 Jan 2010 20:26:10 +0000 (15:26 -0500)]
Allow infinite delay for submenu show/hide by using a negative value.

10 years agoSome fixes for the submenu hide delay code
Dana Jansens [Mon, 4 Jan 2010 20:07:10 +0000 (15:07 -0500)]
Some fixes for the submenu hide delay code

When nothing in a menu is selected, go back to selecting the open submenu.
Adjust the LeaveNotify event handling to only respond when there is not a
  EnterNotify coming for the same menu frame.
Change the default submenu show/hide delays.
Have the default values for submenu show/hide match the default rc.xml

10 years agoimprove submenu hide delay
Alexey Korop [Mon, 4 Jan 2010 18:21:12 +0000 (13:21 -0500)]
improve submenu hide delay

10 years agoRevert "Don't hide submenus immediately when unselecting the parent's entry"
Dana Jansens [Tue, 22 Dec 2009 14:31:50 +0000 (09:31 -0500)]
Revert "Don't hide submenus immediately when unselecting the parent's entry"

This reverts commit 828c095c8b5a2df96a38faaeb8a0df504e68e70f.

10 years agoRevert "Fix the delayed hiding of submenus, so that they don't end up hidden while...
Dana Jansens [Tue, 22 Dec 2009 14:31:38 +0000 (09:31 -0500)]
Revert "Fix the delayed hiding of submenus, so that they don't end up hidden while the entry is selected"

This reverts commit 8ada991d829671ab5e6dd4c5526b6a0238ba6a16.

10 years agoRevert "A fix for delayed hiding of submenus."
Dana Jansens [Tue, 22 Dec 2009 14:31:24 +0000 (09:31 -0500)]
Revert "A fix for delayed hiding of submenus."

This reverts commit 1fb198410e9d3ca660d91d1049249db0f2f47732.

10 years agofix a broken if statement (bug #4464)
Dana Jansens [Wed, 6 Jan 2010 02:37:58 +0000 (21:37 -0500)]
fix a broken if statement (bug #4464)

10 years agoMake the Focus action stop all interactive actions (Fixes bug #4436)
Dana Jansens [Mon, 4 Jan 2010 21:25:13 +0000 (16:25 -0500)]
Make the Focus action stop all interactive actions (Fixes bug #4436)

Old < 3.4.8 Openbox versions would stop focus cycling when focus moved.  Now that is not the case, but you should be able to stop it by Choosing a window explicitly still.

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Tue, 22 Dec 2009 14:31:00 +0000 (09:31 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoRename obprop to obxprop (Fixes bug #4419)
Dana Jansens [Mon, 21 Dec 2009 14:59:28 +0000 (09:59 -0500)]
Rename obprop to obxprop (Fixes bug #4419)

Avoids collision with openbabel.

10 years agoA fix for delayed hiding of submenus.
Dana Jansens [Mon, 21 Dec 2009 14:51:11 +0000 (09:51 -0500)]
A fix for delayed hiding of submenus.

It fixes this:
(Mikachu) dana: i think his issue was if you have a menu with two
          submenus s1 and s2, open the s1 submenu, then point to s2 and
          go into s1, then after the delay, s1 is hidden despite you
          being inside it still, because s2 was never unselected

10 years agoupdate CHANGELOG and bump version to 3.4.9 release-3.4.9
Dana Jansens [Fri, 18 Dec 2009 15:55:09 +0000 (10:55 -0500)]
update CHANGELOG and bump version to 3.4.9

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Thu, 17 Dec 2009 23:32:10 +0000 (18:32 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoAllow delayed focus to work while in a menu or move/resize since it wont kill them now
Dana Jansens [Thu, 17 Dec 2009 21:03:20 +0000 (16:03 -0500)]
Allow delayed focus to work while in a menu or move/resize since it wont kill them now

10 years agoHide the focus popup if we change desktops and one of the windows in it disappears
Dana Jansens [Thu, 17 Dec 2009 20:43:46 +0000 (15:43 -0500)]
Hide the focus popup if we change desktops and one of the windows in it disappears

10 years agoDon't move focus away from a window if it was focused and it didnt hide when switchin...
Dana Jansens [Thu, 17 Dec 2009 20:40:25 +0000 (15:40 -0500)]
Don't move focus away from a window if it was focused and it didnt hide when switching desktops

10 years agoRanges of 0 width cannot intersect (Fixes bug #3717)
Dana Jansens [Thu, 17 Dec 2009 15:22:05 +0000 (10:22 -0500)]
Ranges of 0 width cannot intersect (Fixes bug #3717)

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Wed, 16 Dec 2009 21:48:23 +0000 (16:48 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoadd a test that iconifies a window after a short delay
Dana Jansens [Wed, 16 Dec 2009 21:46:13 +0000 (16:46 -0500)]
add a test that iconifies a window after a short delay

10 years agoCalculate the work area using other already existing and better maintained and truste...
Dana Jansens [Wed, 16 Dec 2009 21:40:07 +0000 (16:40 -0500)]
Calculate the work area using other already existing and better maintained and trusted code

10 years agoFix resistance against struts, the resistance was always 0
Dana Jansens [Wed, 16 Dec 2009 21:05:56 +0000 (16:05 -0500)]
Fix resistance against struts, the resistance was always 0

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Wed, 16 Dec 2009 20:37:36 +0000 (15:37 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoFix the delayed hiding of submenus, so that they don't end up hidden while the entry...
Dana Jansens [Wed, 16 Dec 2009 20:32:51 +0000 (15:32 -0500)]
Fix the delayed hiding of submenus, so that they don't end up hidden while the entry is selected

10 years agoIgnore enter events caused by closing openbox menus
Dana Jansens [Wed, 16 Dec 2009 15:43:22 +0000 (10:43 -0500)]
Ignore enter events caused by closing openbox menus

10 years agoComment out some debug messages for the image cache
Dana Jansens [Tue, 15 Dec 2009 21:03:35 +0000 (16:03 -0500)]
Comment out some debug messages for the image cache

10 years agoMake the NET_WORKAREA hint work the way it used to, across all monitors
Dana Jansens [Tue, 15 Dec 2009 19:53:29 +0000 (14:53 -0500)]
Make the NET_WORKAREA hint work the way it used to, across all monitors

The spec is not going to change this hint, but rather add a new one. So for now
just revert to the old behaviour.

10 years agoMerge branch 'backport' into 3.4-working
Dana Jansens [Mon, 14 Dec 2009 23:29:14 +0000 (18:29 -0500)]
Merge branch 'backport' into 3.4-working

10 years agoDon't hide submenus immediately when unselecting the parent's entry
Dana Jansens [Mon, 14 Dec 2009 23:18:10 +0000 (18:18 -0500)]
Don't hide submenus immediately when unselecting the parent's entry

This allows users to move to the submenu across other menu items (the same
as they already could across other menu items that were submenus).

This uses the same config delay for hiding submenus as it does for showing
new ones.

Based off the ideas in bug #3762.