From 271e0fd9c87a97bb066b35f537a052235413fe5f Mon Sep 17 00:00:00 2001 From: Mikael Magnusson Date: Fri, 20 Feb 2009 17:41:34 +0100 Subject: [PATCH] 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. --- data/rc.xml | 2 +- openbox/config.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/data/rc.xml b/data/rc.xml index 49700fb..ebe2f31 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 d274517..96fdd0f 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); } -- 1.9.1