VERSION | 2 configure.ac | 2 settings-backend/gconf.c | 903 +++++++++++++++++++---------------------------- 3 files changed, 369 insertions(+), 538 deletions(-)
New commits: commit eab7857a661fe71331266688ecd6523d9210bfe3 Author: Guillaume Seguin <[EMAIL PROTECTED]> Date: Fri Apr 4 00:17:25 2008 +0200 * Bump version to 0.7.4 diff --git a/VERSION b/VERSION index a48124b..8eafcce 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -VERSION=0.7.3 +VERSION=0.7.4 commit 9eb664c9e44695105dab379d514b20c71f9db637 Author: Guillaume Seguin <[EMAIL PROTECTED]> Date: Thu Mar 6 22:46:37 2008 +0100 * Bump version to 0.7.3 diff --git a/VERSION b/VERSION index 70d11ae..a48124b 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -VERSION=0.7.2 +VERSION=0.7.3 commit 30a7e4000fc7640ffc99c6e2778163488b1a2d1f Author: Guillaume Seguin <[EMAIL PROTECTED]> Date: Thu Mar 6 22:46:36 2008 +0100 * Bump version to 0.7.2 diff --git a/VERSION b/VERSION index 58d3865..70d11ae 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -VERSION=0.6.99 +VERSION=0.7.2 commit 567e48816362ef9c50029791dec024d31b85ca09 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sun Feb 10 12:51:03 2008 +0100 Fix move, resize & window menu initiate binding integration. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 311d113..e837147 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -150,13 +150,20 @@ const SpecialOption specialOptions[] = { {"show_desktop_key", "core", FALSE, METACITY "/global_keybindings/show_desktop", OptionKey}, + {"initiate_key", "move", FALSE, + METACITY "/window_keybindings/begin_move", OptionKey}, + {"initiate_key", "resize", FALSE, + METACITY "/window_keybindings/begin_resize", OptionKey}, + {"window_menu_key", "core", FALSE, + METACITY "/window_keybindings/activate_window_menu", OptionKey}, + + /* integration of Metacity's mouse_button_modifier option */ {"initiate_button", "move", FALSE, METACITY "/window_keybindings/begin_move", OptionSpecial}, {"initiate_button", "resize", FALSE, METACITY "/window_keybindings/begin_resize", OptionSpecial}, {"window_menu_button", "core", FALSE, METACITY "/window_keybindings/activate_window_menu", OptionSpecial}, - /* this option does not exist in Compiz */ {"mouse_button_modifier", NULL, FALSE, METACITY "/general/mouse_button_modifier", OptionSpecial}, @@ -1087,33 +1094,20 @@ readIntegratedOption (CCSContext *context, ((strcmp (settingName, "window_menu_button") == 0) && (strcmp (pluginName, "core") == 0))) { - if (gconfValue->type == GCONF_VALUE_STRING) - { - const char *value; - - value = gconf_value_get_string (gconfValue); + CCSSettingButtonValue button; + memset (&button, 0, sizeof (CCSSettingButtonValue)); + ccsGetButton (setting, &button); + + button.buttonModMask = getGnomeMouseButtonModifier (); + if (strcmp (settingName, "window_menu_button") == 0) + button.button = 3; + else if (strcmp (pluginName, "resize") == 0) + button.button = 2; + else + button.button = 1; - if (value) - { - CCSSettingButtonValue button; - memset (&button, 0, sizeof (CCSSettingButtonValue)); - ccsGetButton (setting, &button); - if (ccsStringToButtonBinding (value, &button)) - { - button.buttonModMask = - getGnomeMouseButtonModifier (); - if (strcmp (settingName, "window_menu_button") == 0) - button.button = 3; - else if (strcmp (pluginName, "resize") == 0) - button.button = 2; - else - button.button = 1; - - ccsSetButton (setting, button); - ret = TRUE; - } - } - } + ccsSetButton (setting, button); + ret = TRUE; } } break; @@ -1625,28 +1619,9 @@ writeIntegratedOption (CCSContext *context, ((strcmp (settingName, "window_menu_button") == 0) && (strcmp (pluginName, "core") == 0))) { - char *newValue; - gchar *currentValue; unsigned int modMask; modMask = setting->value->value.asButton.buttonModMask; - newValue = - ccsButtonBindingToString (&setting->value->value.asButton); - if (newValue) - { - currentValue = gconf_client_get_string(client, - optionName, &err); - - if (!err && currentValue) - { - if (strcmp (currentValue, newValue) != 0) - gconf_client_set_string(client, optionName, - newValue, NULL); - g_free (currentValue); - } - free (newValue); - } - setGnomeMouseButtonModifier (modMask); setButtonBindingForSetting (context, "move", "initiate_button", 1, modMask); commit 84f078169fbd65321e6c9d0d6fe9487fd99cb706 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sun Jan 6 17:52:45 2008 +0100 Don't define VERSION twice. diff --git a/configure.ac b/configure.ac index 6950b8a..1e3bef8 100644 --- a/configure.ac +++ b/configure.ac @@ -2,8 +2,6 @@ AC_PREREQ(2.57) AC_INIT([compizconfig-backend-gconf],esyscmd(. ./VERSION;echo -n $VERSION), [EMAIL PROTECTED]) -AC_DEFINE_UNQUOTED(VERSION,"$VERSION",[Version]) - #AC_CONFIG_AUX_DIR(config) AM_INIT_AUTOMAKE([1.9 dist-bzip2]) commit e5e731d5831370cfd2c35b7e511725498f8c08e9 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sun Oct 28 11:15:02 2007 +0100 More * -> *_button renames. Whitespace fixes. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 72b3adf..311d113 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -557,15 +557,18 @@ gnomeValueChanged (GConfClient *client, needInit = FALSE; } - s = findDisplaySettingForPlugin (context, "core", "window_menu"); + s = findDisplaySettingForPlugin (context, "core", + "window_menu_button"); if (s) readSetting (context, s); - s = findDisplaySettingForPlugin (context, "move", "initiate"); + s = findDisplaySettingForPlugin (context, "move", + "initiate_button"); if (s) readSetting (context, s); - s = findDisplaySettingForPlugin (context, "resize", "initiate"); + s = findDisplaySettingForPlugin (context, "resize", + "initiate_button"); if (s) readSetting (context, s); } @@ -1082,7 +1085,7 @@ readIntegratedOption (CCSContext *context, ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || ((strcmp (settingName, "window_menu_button") == 0) && - (strcmp (pluginName, "core") == 0))) + (strcmp (pluginName, "core") == 0))) { if (gconfValue->type == GCONF_VALUE_STRING) { @@ -1620,7 +1623,7 @@ writeIntegratedOption (CCSContext *context, ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || ((strcmp (settingName, "window_menu_button") == 0) && - (strcmp (pluginName, "core") == 0))) + (strcmp (pluginName, "core") == 0))) { char *newValue; gchar *currentValue; commit 71661914c0f9f54900b5955cdfb38b8982ad0728 Author: Christopher Williams <[EMAIL PROTECTED]> Date: Sat Oct 27 23:53:07 2007 -0400 Fix Mouse Button Modifier bindings (window menu, initiate move, initiate resize) diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 1b4740e..72b3adf 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -1078,10 +1078,11 @@ readIntegratedOption (CCSContext *context, } } } - else if (((strcmp (settingName, "initiate") == 0) && + else if (((strcmp (settingName, "initiate_button") == 0) && ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || - (strcmp (settingName, "window_menu") == 0)) + ((strcmp (settingName, "window_menu_button") == 0) && + (strcmp (pluginName, "core") == 0))) { if (gconfValue->type == GCONF_VALUE_STRING) { @@ -1098,7 +1099,7 @@ readIntegratedOption (CCSContext *context, { button.buttonModMask = getGnomeMouseButtonModifier (); - if (strcmp (settingName, "window_menu") == 0) + if (strcmp (settingName, "window_menu_button") == 0) button.button = 3; else if (strcmp (pluginName, "resize") == 0) button.button = 2; @@ -1615,10 +1616,11 @@ writeIntegratedOption (CCSContext *context, g_free (currentValue); } } - else if (((strcmp (settingName, "initiate") == 0) && - ((strcmp (pluginName, "move") == 0) || + else if (((strcmp (settingName, "initiate_button") == 0) && + ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || - (strcmp (settingName, "window_menu") == 0)) + ((strcmp (settingName, "window_menu_button") == 0) && + (strcmp (pluginName, "core") == 0))) { char *newValue; gchar *currentValue; @@ -1644,11 +1646,11 @@ writeIntegratedOption (CCSContext *context, setGnomeMouseButtonModifier (modMask); setButtonBindingForSetting (context, "move", - "initiate", 1, modMask); + "initiate_button", 1, modMask); setButtonBindingForSetting (context, "resize", - "initiate", 2, modMask); + "initiate_button", 2, modMask); setButtonBindingForSetting (context, "core", - "window_menu", 3, modMask); + "window_menu_button", 3, modMask); } } break; commit 811237591b2cb629c1b07941f34cc178f34f6641 Author: Guillaume Seguin <[EMAIL PROTECTED]> Date: Sun Oct 21 12:52:44 2007 +0200 * Bump version to 0.6.99 diff --git a/VERSION b/VERSION index de3b1c2..58d3865 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -VERSION=0.6.0 +VERSION=0.6.99 commit 1074bb25eb6fbd31791e72046126e12bc44a1881 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Wed Oct 10 12:05:04 2007 +0200 Fix integration of maximize horizontally/vertically keys. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 8fa34f9..1b4740e 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -134,9 +134,9 @@ const SpecialOption specialOptions[] = { METACITY "/window_keybindings/maximize", OptionKey}, {"unmaximize_window_key", "core", FALSE, METACITY "/window_keybindings/unmaximize", OptionKey}, - {"toggle_window_maximized_horizontally_key", "core", FALSE, + {"maximize_window_horizontally_key", "core", FALSE, METACITY "/window_keybindings/maximize_horizontally", OptionKey}, - {"toggle_window_maximized_vertically_key", "core", FALSE, + {"maximize_window_vertically_key", "core", FALSE, METACITY "/window_keybindings/maximize_vertically", OptionKey}, {"raise_window_key", "core", FALSE, METACITY "/window_keybindings/raise", OptionKey}, commit f3eebbab44aa235744531e3b5825f60287f2197e Author: Danny Baumann <[EMAIL PROTECTED]> Date: Wed Oct 10 12:04:23 2007 +0200 Use gconf_value processing in integrated settings reading. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 0fc98ec..8fa34f9 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -958,63 +958,65 @@ readIntegratedOption (CCSContext *context, CCSSetting *setting, int index) { - GError *err = NULL; - Bool ret = FALSE; + GConfValue *gconfValue; + GError *err = NULL; + Bool ret = FALSE; - switch (specialOptions[index].type) + gconfValue = gconf_client_get (client, + specialOptions[index].gnomeName, + &err); + + if (err) { + g_error_free (err); + return FALSE; + } + + if (!gconfValue) + return FALSE; + + switch (specialOptions[index].type) { case OptionInt: + if (gconfValue->type == GCONF_VALUE_INT) { guint value; - value = gconf_client_get_int (client, - specialOptions[index].gnomeName, - &err); - if (!err) - { - ccsSetInt (setting, value); - ret = TRUE; - } + value = gconf_value_get_int (gconfValue); + ccsSetInt (setting, value); + ret = TRUE; } break; case OptionBool: + if (gconfValue->type == GCONF_VALUE_BOOL) { gboolean value; - value = gconf_client_get_bool (client, - specialOptions[index].gnomeName, - &err); - if (!err) - { - ccsSetBool (setting, value ? TRUE : FALSE); - ret = TRUE; - } + value = gconf_value_get_bool (gconfValue); + ccsSetBool (setting, value ? TRUE : FALSE); + ret = TRUE; } break; case OptionString: + if (gconfValue->type == GCONF_VALUE_STRING) { - char *value; - value = gconf_client_get_string (client, - specialOptions[index].gnomeName, - &err); + const char *value; - if (!err && value) - { + value = gconf_value_get_string (gconfValue); + if (value) + { ccsSetString (setting, value); ret = TRUE; - g_free (value); } } break; case OptionKey: + if (gconfValue->type == GCONF_VALUE_STRING) { - char *value; - value = gconf_client_get_string (client, - specialOptions[index].gnomeName, - &err); + const char *value; - if (!err && value) - { + value = gconf_value_get_string (gconfValue); + if (value) + { CCSSettingKeyValue key; memset (&key, 0, sizeof (CCSSettingKeyValue)); @@ -1024,7 +1026,6 @@ readIntegratedOption (CCSContext *context, ccsSetKey (setting, key); ret = TRUE; } - g_free (value); } } break; @@ -1035,48 +1036,46 @@ readIntegratedOption (CCSContext *context, if (strcmp (settingName, "current_viewport") == 0) { - const char *name; - gboolean showAll; - - name = specialOptions[index].gnomeName; - showAll = gconf_client_get_bool (client, name, &err); - if (!err) + if (gconfValue->type == GCONF_VALUE_BOOL) { + gboolean showAll; + + showAll = gconf_value_get_bool (gconfValue); ccsSetBool (setting, !showAll); ret = TRUE; } } else if (strcmp (settingName, "fullscreen_visual_bell") == 0) { - const char *name; - char *value; - - name = specialOptions[index].gnomeName; - value = gconf_client_get_string (client, name, &err); - if (!err && value) + if (gconfValue->type == GCONF_VALUE_STRING) { - Bool fullscreen; + const char *value; - fullscreen = strcmp (value, "fullscreen") == 0; - ccsSetBool (setting, fullscreen); - ret = TRUE; - g_free (value); + value = gconf_value_get_string (gconfValue); + if (value) + { + Bool fullscreen; + + fullscreen = strcmp (value, "fullscreen") == 0; + ccsSetBool (setting, fullscreen); + ret = TRUE; + } } } else if (strcmp (settingName, "click_to_focus") == 0) { - char *focusMode; - const char *name; + if (gconfValue->type == GCONF_VALUE_STRING) + { + const char *focusMode; - name = specialOptions[index].gnomeName; - focusMode = gconf_client_get_string (client, name, &err); + focusMode = gconf_value_get_string (gconfValue); - if (!err && focusMode) - { - Bool clickToFocus = (strcmp (focusMode, "click") == 0); - ccsSetBool (setting, clickToFocus); - ret = TRUE; - g_free (focusMode); + if (focusMode) + { + Bool clickToFocus = (strcmp (focusMode, "click") == 0); + ccsSetBool (setting, clickToFocus); + ret = TRUE; + } } } else if (((strcmp (settingName, "initiate") == 0) && @@ -1084,31 +1083,32 @@ readIntegratedOption (CCSContext *context, (strcmp (pluginName, "resize") == 0))) || (strcmp (settingName, "window_menu") == 0)) { - char *value; - const char *name; + if (gconfValue->type == GCONF_VALUE_STRING) + { + const char *value; - name = specialOptions[index].gnomeName; - value = gconf_client_get_string (client, name, &err); + value = gconf_value_get_string (gconfValue); - if (!err && value) - { - CCSSettingButtonValue button; - memset (&button, 0, sizeof (CCSSettingButtonValue)); - ccsGetButton (setting, &button); - if (ccsStringToButtonBinding (value, &button)) + if (value) { - button.buttonModMask = getGnomeMouseButtonModifier (); - if (strcmp (settingName, "window_menu") == 0) - button.button = 3; - else if (strcmp (pluginName, "resize") == 0) - button.button = 2; - else - button.button = 1; - - ccsSetButton (setting, button); - ret = TRUE; + CCSSettingButtonValue button; + memset (&button, 0, sizeof (CCSSettingButtonValue)); + ccsGetButton (setting, &button); + if (ccsStringToButtonBinding (value, &button)) + { + button.buttonModMask = + getGnomeMouseButtonModifier (); + if (strcmp (settingName, "window_menu") == 0) + button.button = 3; + else if (strcmp (pluginName, "resize") == 0) + button.button = 2; + else + button.button = 1; + + ccsSetButton (setting, button); + ret = TRUE; + } } - g_free (value); } } } @@ -1117,8 +1117,7 @@ readIntegratedOption (CCSContext *context, break; } - if (err) - g_error_free (err); + gconf_value_free (gconfValue); return ret; } commit f935a550950f4687636d8cab291d5727291b79e2 Author: Jigish Gohil <[EMAIL PROTECTED](none)> Date: Wed Oct 3 13:22:59 2007 +0530 bump version to 0.6.0 diff --git a/VERSION b/VERSION index 2313ac4..de3b1c2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -VERSION=0.5.2 +VERSION=0.6.0 commit 843cf815ad793c8e7c2c980e12c2b387d4d0a908 Author: Kristian Lyngstøl <[EMAIL PROTECTED](none)> Date: Tue Sep 18 20:32:51 2007 +0200 Ignore num_workspaces (Patch by Mirco Müller) diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 8cebe31..0fc98ec 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -391,8 +391,8 @@ const SpecialOption specialOptions[] = { {"audible_bell", "core", FALSE, METACITY "/general/audible_bell", OptionBool}, - {"hsize", "core", TRUE, - METACITY "/general/num_workspaces", OptionInt}, + /*{"hsize", "core", TRUE, + METACITY "/general/num_workspaces", OptionInt},*/ }; #define N_SOPTIONS (sizeof (specialOptions) / sizeof (struct _SpecialOption)) commit e1a0a86fb1f9e5a446ea2fdc1404bddcf3820964 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sun Sep 9 09:53:47 2007 +0200 Metacity doesn't like the key binding "Disabled", it wants "disabled". diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index a0a177d..8cebe31 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -1544,6 +1544,12 @@ writeIntegratedOption (CCSContext *context, newValue = ccsKeyBindingToString (&setting->value->value.asKey); if (newValue) { + if (strcmp (newValue, "Disabled") == 0) + { + /* Metacity doesn't like "Disabled", it wants "disabled" */ + newValue[0] = 'd'; + } + currentValue = gconf_client_get_string (client, optionName, &err); commit b6571fea49f7996487fdfb4eb4c2c40c5776be7b Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sun Sep 9 08:27:59 2007 +0200 Revert "Integrate desktop layout option of workspace switcher applet." This reverts commit b772db8b966ec5254d75dd6353799e08056818d0. Reasoning: While this conversion is correct in theory, and it works fine controling Metacity, it has the unwanted side effect of libwnck setting _NET_DESKTOP_GEOMETRY so that we e.g. get a 3 desktop, 3x3 viewport layout if we just wanted to have a 3x3 viewport layout. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 8c9c859..a0a177d 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -31,7 +31,6 @@ #include <malloc.h> #include <string.h> #include <dirent.h> -#include <math.h> #include <ccs.h> #include <ccs-backend.h> @@ -81,10 +80,9 @@ static const char* watchedGnomeDirectories[] = { METACITY, "/desktop/gnome/applications/terminal", - "/apps/panel/applets/window_list/prefs", - "/apps/panel/applets/workspace_switcher/prefs" + "/apps/panel/applets/window_list/prefs" }; -#define NUM_WATCHED_DIRS 4 +#define NUM_WATCHED_DIRS 3 static GConfClient *client = NULL; static GConfEngine *conf = NULL; @@ -393,11 +391,8 @@ const SpecialOption specialOptions[] = { {"audible_bell", "core", FALSE, METACITY "/general/audible_bell", OptionBool}, - {"hsize", "core", TRUE, - METACITY "/general/num_workspaces", OptionSpecial}, - {"vsize", "core", TRUE, - "/apps/panel/applets/workspace_switcher/prefs/num_rows", OptionSpecial} + METACITY "/general/num_workspaces", OptionInt}, }; #define N_SOPTIONS (sizeof (specialOptions) / sizeof (struct _SpecialOption)) @@ -1084,35 +1079,6 @@ readIntegratedOption (CCSContext *context, g_free (focusMode); } } - else if ((strcmp (settingName, "hsize") == 0) || - (strcmp (settingName, "vsize") == 0)) - { - int numDesks, numRows; - int hsize, vsize, value; - - numDesks = gconf_client_get_int (client, METACITY - "/general/num_workspaces", - &err); - if (err) - break; - - numRows = gconf_client_get_int (client, "/apps/panel/applets/" - "workspace_switcher/prefs/" - "num_rows", &err); - if (err) - break; - - hsize = ceil ((float)numDesks / (float) numRows); - vsize = numRows; - - if (strcmp (settingName, "hsize") == 0) - value = hsize; - else - value = vsize; - - ccsSetInt (setting, value); - ret = TRUE; - } else if (((strcmp (settingName, "initiate") == 0) && ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || @@ -1644,36 +1610,6 @@ writeIntegratedOption (CCSContext *context, g_free (currentValue); } } - else if ((strcmp (settingName, "hsize") == 0) || - (strcmp (settingName, "vsize") == 0)) - { - CCSPlugin *p; - CCSSetting *s; - int hsize, vsize; - - p = ccsFindPlugin (context, "core"); - if (!p) - break; - - s = ccsFindSetting (p, "hsize", TRUE, 0); - if (!s) - break; - if (!ccsGetInt (s, &hsize)) - break; - - s = ccsFindSetting (p, "vsize", TRUE, 0); - if (!s) - break; - if (!ccsGetInt (s, &vsize)) - break; - - gconf_client_set_int (client, METACITY - "/general/num_workspaces", - hsize * vsize, NULL); - gconf_client_set_int (client, "/apps/panel/applets/" - "workspace_switcher/prefs/num_rows", - vsize, NULL); - } else if (((strcmp (settingName, "initiate") == 0) && ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || commit b772db8b966ec5254d75dd6353799e08056818d0 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sat Sep 8 19:44:59 2007 +0200 Integrate desktop layout option of workspace switcher applet. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index a0a177d..8c9c859 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -31,6 +31,7 @@ #include <malloc.h> #include <string.h> #include <dirent.h> +#include <math.h> #include <ccs.h> #include <ccs-backend.h> @@ -80,9 +81,10 @@ static const char* watchedGnomeDirectories[] = { METACITY, "/desktop/gnome/applications/terminal", - "/apps/panel/applets/window_list/prefs" + "/apps/panel/applets/window_list/prefs", + "/apps/panel/applets/workspace_switcher/prefs" }; -#define NUM_WATCHED_DIRS 3 +#define NUM_WATCHED_DIRS 4 static GConfClient *client = NULL; static GConfEngine *conf = NULL; @@ -391,8 +393,11 @@ const SpecialOption specialOptions[] = { {"audible_bell", "core", FALSE, METACITY "/general/audible_bell", OptionBool}, + {"hsize", "core", TRUE, - METACITY "/general/num_workspaces", OptionInt}, + METACITY "/general/num_workspaces", OptionSpecial}, + {"vsize", "core", TRUE, + "/apps/panel/applets/workspace_switcher/prefs/num_rows", OptionSpecial} }; #define N_SOPTIONS (sizeof (specialOptions) / sizeof (struct _SpecialOption)) @@ -1079,6 +1084,35 @@ readIntegratedOption (CCSContext *context, g_free (focusMode); } } + else if ((strcmp (settingName, "hsize") == 0) || + (strcmp (settingName, "vsize") == 0)) + { + int numDesks, numRows; + int hsize, vsize, value; + + numDesks = gconf_client_get_int (client, METACITY + "/general/num_workspaces", + &err); + if (err) + break; + + numRows = gconf_client_get_int (client, "/apps/panel/applets/" + "workspace_switcher/prefs/" + "num_rows", &err); + if (err) + break; + + hsize = ceil ((float)numDesks / (float) numRows); + vsize = numRows; + + if (strcmp (settingName, "hsize") == 0) + value = hsize; + else + value = vsize; + + ccsSetInt (setting, value); + ret = TRUE; + } else if (((strcmp (settingName, "initiate") == 0) && ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || @@ -1610,6 +1644,36 @@ writeIntegratedOption (CCSContext *context, g_free (currentValue); } } + else if ((strcmp (settingName, "hsize") == 0) || + (strcmp (settingName, "vsize") == 0)) + { + CCSPlugin *p; + CCSSetting *s; + int hsize, vsize; + + p = ccsFindPlugin (context, "core"); + if (!p) + break; + + s = ccsFindSetting (p, "hsize", TRUE, 0); + if (!s) + break; + if (!ccsGetInt (s, &hsize)) + break; + + s = ccsFindSetting (p, "vsize", TRUE, 0); + if (!s) + break; + if (!ccsGetInt (s, &vsize)) + break; + + gconf_client_set_int (client, METACITY + "/general/num_workspaces", + hsize * vsize, NULL); + gconf_client_set_int (client, "/apps/panel/applets/" + "workspace_switcher/prefs/num_rows", + vsize, NULL); + } else if (((strcmp (settingName, "initiate") == 0) && ((strcmp (pluginName, "move") == 0) || (strcmp (pluginName, "resize") == 0))) || commit 0dbfbe14102185bd1acd24aaaa32f32d5b82c374 Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sat Sep 8 14:12:17 2007 +0200 Integrate visual_bell and fullscreen_visual_bell options of the fade plugin. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 763c903..a0a177d 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -160,6 +160,11 @@ const SpecialOption specialOptions[] = { {"mouse_button_modifier", NULL, FALSE, METACITY "/general/mouse_button_modifier", OptionSpecial}, + {"visual_bell", "fade", TRUE, + METACITY "/general/visual_bell", OptionBool}, + {"fullscreen_visual_bell", "fade", TRUE, + METACITY "/general/visual_bell_type", OptionSpecial}, + {"next_key", "switcher", FALSE, METACITY "/global_keybindings/switch_windows", OptionKey}, {"prev_key", "switcher", FALSE, @@ -1041,6 +1046,23 @@ readIntegratedOption (CCSContext *context, ret = TRUE; } } + else if (strcmp (settingName, "fullscreen_visual_bell") == 0) + { + const char *name; + char *value; + + name = specialOptions[index].gnomeName; + value = gconf_client_get_string (client, name, &err); + if (!err && value) + { + Bool fullscreen; + + fullscreen = strcmp (value, "fullscreen") == 0; + ccsSetBool (setting, fullscreen); + ret = TRUE; + g_free (value); + } + } else if (strcmp (settingName, "click_to_focus") == 0) { char *focusMode; @@ -1551,6 +1573,24 @@ writeIntegratedOption (CCSContext *context, gconf_client_set_bool (client, optionName, !currentViewport, NULL); } + else if (strcmp (settingName, "fullscreen_visual_bell") == 0) + { + Bool fullscreen; + gchar *currentValue, *newValue; + if (!ccsGetBool (setting, &fullscreen)) + break; + + newValue = fullscreen ? "fullscreen" : "frame_flash"; + currentValue = gconf_client_get_string (client, + optionName, &err); + if (!err && currentValue) + { + if (strcmp (currentValue, newValue) != 0) + gconf_client_set_string (client, optionName, + newValue, NULL); + g_free (currentValue); + } + } else if (strcmp (settingName, "click_to_focus") == 0) { Bool clickToFocus; @@ -1564,7 +1604,7 @@ writeIntegratedOption (CCSContext *context, if (!err && currentValue) { - if (strcmp(currentValue, newValue) != 0) + if (strcmp (currentValue, newValue) != 0) gconf_client_set_string (client, optionName, newValue, NULL); g_free (currentValue); commit cb1fcdb05863a7865857a89c31e012f5d6a77fb1 Author: Dennis Kasprzyk <[EMAIL PROTECTED]> Date: Sun Sep 2 22:34:44 2007 +0200 Support empty lists. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 11fcd3b..763c903 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c @@ -829,7 +829,10 @@ readListValue (CCSSetting *setting, valueList = gconf_value_get_list (gconfValue); if (!valueList) - return FALSE; + { + ccsSetList (setting, NULL); + return TRUE; + } nItems = g_slist_length (valueList); commit ce196cce1fb63bace69b8f44916f43bc9c39ff5a Author: Danny Baumann <[EMAIL PROTECTED]> Date: Sun Sep 2 13:59:49 2007 +0200 Remove cruft. diff --git a/settings-backend/gconf.c b/settings-backend/gconf.c index 6cfd004..11fcd3b 100644 --- a/settings-backend/gconf.c +++ b/settings-backend/gconf.c -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]