From: Mikael Magnusson Date: Fri, 20 Feb 2009 16:41:34 +0000 (+0100) Subject: Fix per-app monitor setting X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fopenbox;a=commitdiff_plain;h=271e0fd9c87a97bb066b35f537a052235413fe5f Fix per-app monitor setting A couple of things were wrong, the parser added 1 to the value despite expecting the user to give values in the range of 1 to screen_num_monitors, rc.xml documented the values to start from 0 and finally the monitor value wasn't copied over at all when matching the client. --- diff --git a/data/rc.xml b/data/rc.xml index 49700fb4..ebe2f310 100644 --- a/data/rc.xml +++ b/data/rc.xml @@ -682,7 +682,7 @@ 200 1 # specifies the monitor in a xinerama setup. - # 0 is the first head, or 'mouse' for wherever the mouse is + # 1 is the first head, or 'mouse' for wherever the mouse is yes diff --git a/openbox/config.c b/openbox/config.c index d2745178..96fdd0f4 100644 --- a/openbox/config.c +++ b/openbox/config.c @@ -128,6 +128,7 @@ void config_app_settings_copy_non_defaults(const ObAppSettings *src, copy_if(type, (ObClientType)-1); copy_if(decor, -1); copy_if(shade, -1); + copy_if(monitor, -1); copy_if(focus, -1); copy_if(desktop, 0); copy_if(layer, -2); @@ -267,7 +268,7 @@ static void parse_per_app_settings(ObParseInst *inst, xmlDocPtr doc, if (!g_ascii_strcasecmp(s, "mouse")) settings->monitor = 0; else - settings->monitor = parse_int(doc, c) + 1; + settings->monitor = parse_int(doc, c); g_free(s); }