diff options
author | David Zeuthen <zeuthen@gmail.com> | 2012-12-05 18:51:37 -0500 |
---|---|---|
committer | David Zeuthen <zeuthen@gmail.com> | 2012-12-05 19:01:01 -0500 |
commit | bb4e7ed0236855d2ced7cfd4445877822da8fe7b (patch) | |
tree | 724f143759400f3059c888007838aa70009675d6 /monitor/udisks2/gvfsudisks2volume.c | |
parent | 986f052f48aa87288ff4eb55fb7f8b9e157e33bc (diff) | |
download | gvfs-bb4e7ed0236855d2ced7cfd4445877822da8fe7b.tar.gz |
udisks2: add support for mount option x-gvfs-symbolic-icon
... and also the new Block:HintSymbolicIcon icon just added to udisks
master.
Signed-off-by: David Zeuthen <zeuthen@gmail.com>
Diffstat (limited to 'monitor/udisks2/gvfsudisks2volume.c')
-rw-r--r-- | monitor/udisks2/gvfsudisks2volume.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/monitor/udisks2/gvfsudisks2volume.c b/monitor/udisks2/gvfsudisks2volume.c index 7bb816cc..0266b5c2 100644 --- a/monitor/udisks2/gvfsudisks2volume.c +++ b/monitor/udisks2/gvfsudisks2volume.c @@ -165,6 +165,7 @@ apply_options_from_fstab (GVfsUDisks2Volume *volume, { gchar *name; gchar *icon_name; + gchar *symbolic_icon_name; name = gvfs_udisks2_utils_lookup_fstab_options_value (fstab_options, "x-gvfs-name="); if (name != NULL) @@ -180,6 +181,14 @@ apply_options_from_fstab (GVfsUDisks2Volume *volume, volume->icon = g_themed_icon_new_with_default_fallbacks (icon_name); g_free (icon_name); } + + symbolic_icon_name = gvfs_udisks2_utils_lookup_fstab_options_value (fstab_options, "x-gvfs-symbolic-icon="); + if (symbolic_icon_name != NULL) + { + g_clear_object (&volume->symbolic_icon); + volume->symbolic_icon = g_themed_icon_new_with_default_fallbacks (symbolic_icon_name); + g_free (symbolic_icon_name); + } } @@ -446,8 +455,16 @@ update_volume (GVfsUDisks2Volume *volume) g_clear_object (&volume->icon); volume->icon = g_themed_icon_new_with_default_fallbacks (hint); } +#if UDISKS_CHECK_VERSION(2,0,90) + hint = udisks_block_get_hint_symbolic_icon_name (volume->block); + if (hint != NULL && strlen (hint) > 0) + { + g_clear_object (&volume->symbolic_icon); + volume->symbolic_icon = g_themed_icon_new_with_default_fallbacks (hint); + } +#endif - /* Use x-gvfs-name=The%20Name and x-gvfs-icon=foo-name, if available */ + /* Use x-gvfs-name=The%20Name, x-gvfs-icon=foo-name, x-gvfs-icon=foo-name-symbolic, if available */ g_variant_iter_init (&iter, udisks_block_get_configuration (block)); while (g_variant_iter_next (&iter, "(&s@a{sv})", &configuration_type, &configuration_value)) { |