blob: a766d1f284528122794395668fea1c8be532d0b3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
diff --git a/openbox/config.c b/openbox/config.c
index dad5d1b..0e0d1f9 100644
--- a/openbox/config.c
+++ b/openbox/config.c
@@ -48,6 +48,7 @@ StrutPartial config_margins;
gchar *config_theme;
gboolean config_theme_keepborder;
guint config_theme_window_list_icon_size;
+gboolean config_theme_strict_skip_taskbar;
gchar *config_title_layout;
@@ -719,6 +720,8 @@ static void parse_theme(xmlNodePtr node, gpointer d)
else if (config_theme_window_list_icon_size > 96)
config_theme_window_list_icon_size = 96;
}
+ if ((n = obt_xml_find_node(node, "strictSkipTaskbar")))
+ config_theme_strict_skip_taskbar = obt_xml_node_bool(n);
for (n = obt_xml_find_node(node, "font");
n;
diff --git a/openbox/config.h b/openbox/config.h
index 96a66cf..4e6e88e 100644
--- a/openbox/config.h
+++ b/openbox/config.h
@@ -152,6 +152,8 @@ extern gchar *config_title_layout;
extern gboolean config_animate_iconify;
/*! Size of icons in focus switching dialogs */
extern guint config_theme_window_list_icon_size;
+/*! not show in tasklist iconified windows with _NET_WM_STATE_SKIP_TASKBAR hint */
+extern gboolean config_theme_strict_skip_taskbar;
/*! The font for the active window's title */
extern RrFont *config_font_activewindow;
diff --git a/openbox/focus.c b/openbox/focus.c
index a4626bf..257cce6 100644
--- a/openbox/focus.c
+++ b/openbox/focus.c
@@ -365,7 +365,7 @@ gboolean focus_valid_target(ObClient *ft,
not be long-lasting windows */
ok = ok && (!ft->skip_taskbar ||
(ft->modal || user_request ||
- (ft->iconic && !ft->parents) ||
+ (!config_theme_strict_skip_taskbar && ft->iconic && !ft->parents) ||
ft->demands_attention ||
ft->type == OB_CLIENT_TYPE_DIALOG));
|