Currently, Nautilus is hardcoded to draw the desktop icon’s captions in white with a black background. This works well for Latin scripts, but for CJK scripts where each character is pretty complex, the captions quickly become a jumble of black and white pixels.
Hence the following patch against Nautilus 2.12. It adds a GConf key /apps/nautilus/preferences/desktop_label_shadow, which when set to False prevents the shadows from being drawn. A nice side benefit is that Nautilus then checks the background colour, and draws captions in black if the background is light. Nice.
Screenshots later; gotta run now.
--- ./libnautilus-private/nautilus-global-preferences.c.old 2005-11-19 10:58:42.000000000 +0800
+++ ./libnautilus-private/nautilus-global-preferences.c 2005-11-19 11:00:32.000000000 +0800
@@ -404,6 +404,10 @@
PREFERENCE_STRING,
NULL, default_font_callback, g_free
},
+ { NAUTILUS_PREFERENCES_DESKTOP_LABEL_SHADOW,
+ PREFERENCE_BOOLEAN,
+ GINT_TO_POINTER (TRUE)
+ },
/* Icon View Default Preferences */
{ NAUTILUS_PREFERENCES_ICON_VIEW_DEFAULT_SORT_ORDER,
--- ./libnautilus-private/nautilus-global-preferences.h.old 2005-11-19 10:58:47.000000000 +0800
+++ ./libnautilus-private/nautilus-global-preferences.h 2005-11-19 10:59:35.000000000 +0800
@@ -54,6 +54,7 @@
#define NAUTILUS_PREFERENCES_SHOW_DESKTOP "preferences/show_desktop"
#define NAUTILUS_PREFERENCES_DESKTOP_IS_HOME_DIR "preferences/desktop_is_home_dir"
#define NAUTILUS_PREFERENCES_DESKTOP_FONT "preferences/desktop_font"
+#define NAUTILUS_PREFERENCES_DESKTOP_LABEL_SHADOW "preferences/desktop_label_shadow"
/* Display */
#define NAUTILUS_PREFERENCES_SHOW_HIDDEN_FILES "/desktop/gnome/file_views/show_hidden_files"
--- ./libnautilus-private/apps_nautilus_preferences.schemas.in.old 2005-11-19 11:04:30.000000000 +0800
+++ ./libnautilus-private/apps_nautilus_preferences.schemas.in 2005-11-19 11:06:17.000000000 +0800
@@ -321,6 +321,20 @@
<schema>
+ <key>/schemas/apps/nautilus/preferences/desktop_label_shadow</key>
+ <applyto>/apps/nautilus/preferences/desktop_label_shadow</applyto>
+ <owner>nautilus</owner>
+ <type>bool</type>
+ <default>true</default>
+ <locale name="C">
+ <short>Desktop label shadow</short>
+ <long>
+ If set to true, then Nautilus will draw shadows for the desktop icon's captions.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
<key>/schemas/apps/nautilus/preferences/desktop_is_home_dir</key>
<applyto>/apps/nautilus/preferences/desktop_is_home_dir</applyto>
<owner>nautilus</owner>
--- ./src/file-manager/fm-desktop-icon-view.c.old 2005-11-19 10:53:43.000000000 +0800
+++ ./src/file-manager/fm-desktop-icon-view.c 2005-11-19 10:58:01.000000000 +0800
@@ -532,7 +532,7 @@
fm_icon_view_filter_by_screen (FM_ICON_VIEW (desktop_icon_view), TRUE);
icon_container = get_icon_container (desktop_icon_view);
- nautilus_icon_container_set_use_drop_shadows (icon_container, TRUE);
+ nautilus_icon_container_set_use_drop_shadows (icon_container, eel_preferences_get_boolean (NAUTILUS_PREFERENCES_DESKTOP_LABEL_SHADOW));
fm_icon_container_set_sort_desktop (FM_ICON_CONTAINER (icon_container), TRUE);
/* Set up details */</schema>
Awesome! Just what I was looking for.
I don’t use CJK scripts or anything, but on a bright white background it’s pretty hard to read aswell, I think.
Thanks!