diff options
author | Jasmine Hassan <[email protected]> | 2012-11-29 19:39:28 +0200 |
---|---|---|
committer | Jasmine Hassan <[email protected]> | 2012-12-03 21:15:16 +0200 |
commit | 01c34579453893b76849400c9375dcc67c44622f (patch) | |
tree | 38ec0ab84f3effe6017c2b3989905b9f127bc1fe /src | |
parent | 532fbb1ce6bf446c8c5e40f8a49abc3e450a65d0 (diff) | |
download | caja-01c34579453893b76849400c9375dcc67c44622f.tar.bz2 caja-01c34579453893b76849400c9375dcc67c44622f.tar.xz |
[global-prefs|application] use MATE global 'show-desktop-icons' setting
instead of a local-to-caja setting 'show-desktop'
This key would indicate that file managers (by default Caja, but applies to
others like Thunar or ROX) should handle desktop, i.e. draw a background and
place icons there. Otherwise (when false), mate-settings-daemon will take
over drawing desktop background.
This is different from 'draw-background', which is a separate option used
only for drawing background without icons (by mate-settings-daemon).
To Caja, 'show-desktop-icons' implies 'draw-background', and so if set to
false, Caja won't (needlessly) draw the desktop.
However, if the user uses the "Background & Emblems dialog" to drop an
image-pattern/color/reset on the desktop, Caja will again draw the desktop.
For reference:
https://bugzilla.gnome.org/show_bug.cgi?id=632225
Diffstat (limited to 'src')
-rw-r--r-- | src/caja-application.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/caja-application.c b/src/caja-application.c index 47a956c4..f09e2720 100644 --- a/src/caja-application.c +++ b/src/caja-application.c @@ -74,6 +74,8 @@ #include <libcaja-private/caja-signaller.h> #include <libcaja-extension/caja-menu-provider.h> #include <libcaja-private/caja-autorun.h> +#define MATE_DESKTOP_USE_UNSTABLE_API +#include <libmateui/mate-bg.h> #include "glibcompat.h" /* for g_list_free_full */ @@ -964,7 +966,7 @@ caja_application_startup (CajaApplication *application, char *accel_map_filename; if (!no_desktop && - !g_settings_get_boolean (caja_preferences, CAJA_PREFERENCES_SHOW_DESKTOP)) + !g_settings_get_boolean (mate_background_preferences, MATE_BG_KEY_SHOW_DESKTOP)) { no_desktop = TRUE; } @@ -989,7 +991,8 @@ caja_application_startup (CajaApplication *application, } /* Monitor the preference to show or hide the desktop */ - g_signal_connect_swapped (caja_preferences, "changed::" CAJA_PREFERENCES_SHOW_DESKTOP, + g_signal_connect_swapped (mate_background_preferences, + "changed::" MATE_BG_KEY_SHOW_DESKTOP, G_CALLBACK(desktop_changed_callback), G_OBJECT (application)); @@ -1567,7 +1570,7 @@ desktop_changed_callback (gpointer user_data) CajaApplication *application; application = CAJA_APPLICATION (user_data); - if (g_settings_get_boolean (caja_preferences, CAJA_PREFERENCES_SHOW_DESKTOP)) + if (g_settings_get_boolean (mate_background_preferences, MATE_BG_KEY_SHOW_DESKTOP)) { caja_application_open_desktop (application); } |