diff options
| author | Dana Jansens <danakj@orodu.net> | 2008-01-22 12:54:53 -0500 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2008-01-22 13:01:56 -0500 |
| commit | f476442531061fb6d36e3cc79decac10b985db35 (patch) | |
| tree | 8b5de42361d49f5985f43dc61d5406fb0cde0381 | |
| parent | 1b33ab6c0d9117a84325e1bc01489bde566cda64 (diff) | |
print a warning when the session has a different number of desktops than the openbox config
| -rw-r--r-- | openbox/config.c | 4 | ||||
| -rw-r--r-- | openbox/config.h | 2 | ||||
| -rw-r--r-- | openbox/screen.c | 6 |
3 files changed, 9 insertions, 3 deletions
diff --git a/openbox/config.c b/openbox/config.c index 867dfb51..56e625d4 100644 --- a/openbox/config.c +++ b/openbox/config.c @@ -55,7 +55,7 @@ RrFont *config_font_menuitem; RrFont *config_font_menutitle; RrFont *config_font_osd; -gint config_desktops_num; +guint config_desktops_num; GSList *config_desktops_names; guint config_screen_firstdesk; guint config_desktop_popup_time; @@ -605,7 +605,7 @@ static void parse_desktops(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node, if ((n = parse_find_node("number", node))) { gint d = parse_int(doc, n); if (d > 0) - config_desktops_num = d; + config_desktops_num = (unsigned) d; } if ((n = parse_find_node("firstdesk", node))) { gint d = parse_int(doc, n); diff --git a/openbox/config.h b/openbox/config.h index 240b04f1..50e7dfe3 100644 --- a/openbox/config.h +++ b/openbox/config.h @@ -143,7 +143,7 @@ extern RrFont *config_font_menuitem; extern RrFont *config_font_osd; /*! The number of desktops */ -extern gint config_desktops_num; +extern guint config_desktops_num; /*! Desktop to start on, put 5 to start in the center of a 3x3 grid */ extern guint config_screen_firstdesk; /*! Names for the desktops */ diff --git a/openbox/screen.c b/openbox/screen.c index e008ffe5..932b157e 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -402,7 +402,13 @@ void screen_startup(gboolean reconfig) screen_num_desktops = 0; if (PROP_GET32(RootWindow(ob_display, ob_screen), net_number_of_desktops, cardinal, &d)) + { + if (d != config_desktops_num) { + g_warning(_("Openbox is configured for %d desktops, but the current session has %d. Overriding the Openbox configuration."), + config_desktops_num, d); + } screen_set_num_desktops(d); + } /* restore from session if possible */ else if (session_num_desktops) screen_set_num_desktops(session_num_desktops); |
