summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2008-01-13 03:40:14 -0500
committerDana Jansens <danakj@orodu.net>2008-01-13 03:40:14 -0500
commit6dfc3c726a2164ba70cfac3df436ee035822bdb1 (patch)
tree4238449d30fb6ab53f40b5976961e591e35e4631 /openbox
parent5148b839fefe16b54f26bc0d2c7a500127cf2725 (diff)
don't skip windows that are skip_taskbar unless they are normal typed.. i.e. if a dialog sets this don't skip it (gnome shutdown/logout dialogs don't get focused otherwise in arch linux)
Diffstat (limited to 'openbox')
-rw-r--r--openbox/client.c2
-rw-r--r--openbox/focus.c10
2 files changed, 5 insertions, 7 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 1e2040fd..22eb8403 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -450,6 +450,8 @@ void client_manage(Window window)
g_free(monitor);
monitor = NULL;
+ ob_debug_type(OB_DEBUG_FOCUS, "Going to try activate new window? %s\n",
+ activate ? "yes" : "no");
if (activate) {
gboolean raise = FALSE;
diff --git a/openbox/focus.c b/openbox/focus.c
index df02cb76..a4eb2cfa 100644
--- a/openbox/focus.c
+++ b/openbox/focus.c
@@ -337,13 +337,9 @@ gboolean focus_valid_target(ObClient *ft,
that can be focused instead */
!focus_target_has_siblings(ft, iconic_windows, all_desktops))));
- /* it's not set to skip the taskbar (unless it is a type that would be
- expected to set this hint, or modal) */
- ok = ok && ((ft->type == OB_CLIENT_TYPE_DOCK ||
- ft->type == OB_CLIENT_TYPE_DESKTOP ||
- ft->type == OB_CLIENT_TYPE_TOOLBAR ||
- ft->type == OB_CLIENT_TYPE_MENU ||
- ft->type == OB_CLIENT_TYPE_UTILITY) ||
+ /* it's not set to skip the taskbar (but this only applies to normal typed
+ windows, and is overridden if the window is modal) */
+ ok = ok && (ft->type != OB_CLIENT_TYPE_NORMAL ||
ft->modal ||
!ft->skip_taskbar);