From 9c1d90653ce9be677d5518edad2d01f626d92750 Mon Sep 17 00:00:00 2001 From: Alexander Schwinn Date: Thu, 14 Jun 2018 14:08:30 +0200 Subject: [PATCH] More options for thumbnail size in iconview (Bug #14451) --- thunar/thunar-enum-types.c | 59 +++++++++++++++++++++++--------------- thunar/thunar-enum-types.h | 52 ++++++++++++++------------------- thunar/thunar-icon-renderer.c | 2 +- thunar/thunar-icon-view.c | 8 +++--- thunar/thunar-preferences-dialog.c | 36 ++++++++++++++--------- thunar/thunar-preferences.c | 10 +++---- thunar/thunar-view.c | 4 +-- thunar/thunar-window.c | 2 +- 8 files changed, 93 insertions(+), 80 deletions(-) diff --git a/thunar/thunar-enum-types.c b/thunar/thunar-enum-types.c index 5585f4a7..42cd1fe5 100644 --- a/thunar/thunar-enum-types.c +++ b/thunar/thunar-enum-types.c @@ -121,14 +121,18 @@ thunar_icon_size_get_type (void) { static const GEnumValue values[] = { - { THUNAR_ICON_SIZE_SMALLEST, "THUNAR_ICON_SIZE_SMALLEST", "smallest", }, - { THUNAR_ICON_SIZE_SMALLER, "THUNAR_ICON_SIZE_SMALLER", "smaller", }, - { THUNAR_ICON_SIZE_SMALL, "THUNAR_ICON_SIZE_SMALL", "small", }, - { THUNAR_ICON_SIZE_NORMAL, "THUNAR_ICON_SIZE_NORMAL", "normal", }, - { THUNAR_ICON_SIZE_LARGE, "THUNAR_ICON_SIZE_LARGE", "large", }, - { THUNAR_ICON_SIZE_LARGER, "THUNAR_ICON_SIZE_LARGER", "larger", }, - { THUNAR_ICON_SIZE_LARGEST, "THUNAR_ICON_SIZE_LARGEST", "largest", }, - { 0, NULL, NULL, }, + { THUNAR_ICON_SIZE_16, "THUNAR_ICON_SIZE_16", "16px", }, + { THUNAR_ICON_SIZE_24, "THUNAR_ICON_SIZE_24", "24px", }, + { THUNAR_ICON_SIZE_32, "THUNAR_ICON_SIZE_32", "32px", }, + { THUNAR_ICON_SIZE_48, "THUNAR_ICON_SIZE_48", "48px", }, + { THUNAR_ICON_SIZE_64, "THUNAR_ICON_SIZE_64", "64px", }, + { THUNAR_ICON_SIZE_96, "THUNAR_ICON_SIZE_96", "96px", }, + { THUNAR_ICON_SIZE_128, "THUNAR_ICON_SIZE_128", "128px", }, + { THUNAR_ICON_SIZE_170, "THUNAR_ICON_SIZE_170", "170px", }, + { THUNAR_ICON_SIZE_200, "THUNAR_ICON_SIZE_200", "200px", }, + { THUNAR_ICON_SIZE_256, "THUNAR_ICON_SIZE_256", "256px", }, + { THUNAR_ICON_SIZE_512, "THUNAR_ICON_SIZE_512", "512px", }, + { 0, NULL, NULL, }, }; type = g_enum_register_static (I_("ThunarIconSize"), values); @@ -171,14 +175,18 @@ thunar_zoom_level_get_type (void) { static const GEnumValue values[] = { - { THUNAR_ZOOM_LEVEL_SMALLEST, "THUNAR_ZOOM_LEVEL_SMALLEST", "smallest", }, - { THUNAR_ZOOM_LEVEL_SMALLER, "THUNAR_ZOOM_LEVEL_SMALLER", "smaller", }, - { THUNAR_ZOOM_LEVEL_SMALL, "THUNAR_ZOOM_LEVEL_SMALL", "small", }, - { THUNAR_ZOOM_LEVEL_NORMAL, "THUNAR_ZOOM_LEVEL_NORMAL", "normal", }, - { THUNAR_ZOOM_LEVEL_LARGE, "THUNAR_ZOOM_LEVEL_LARGE", "large", }, - { THUNAR_ZOOM_LEVEL_LARGER, "THUNAR_ZOOM_LEVEL_LARGER", "larger", }, - { THUNAR_ZOOM_LEVEL_LARGEST, "THUNAR_ZOOM_LEVEL_LARGEST", "largest", }, - { 0, NULL, NULL, }, + { THUNAR_ZOOM_LEVEL_16, "THUNAR_ZOOM_LEVEL_16", "16px", }, + { THUNAR_ZOOM_LEVEL_24, "THUNAR_ZOOM_LEVEL_24", "24px", }, + { THUNAR_ZOOM_LEVEL_32, "THUNAR_ZOOM_LEVEL_32", "32px", }, + { THUNAR_ZOOM_LEVEL_48, "THUNAR_ZOOM_LEVEL_48", "48px", }, + { THUNAR_ZOOM_LEVEL_64, "THUNAR_ZOOM_LEVEL_64" "64px", }, + { THUNAR_ZOOM_LEVEL_96, "THUNAR_ZOOM_LEVEL_96", "96px", }, + { THUNAR_ZOOM_LEVEL_128, "THUNAR_ZOOM_LEVEL_128", "128px", }, + { THUNAR_ZOOM_LEVEL_170, "THUNAR_ZOOM_LEVEL_170", "170px", }, + { THUNAR_ZOOM_LEVEL_200, "THUNAR_ZOOM_LEVEL_200", "200px", }, + { THUNAR_ZOOM_LEVEL_256, "THUNAR_ZOOM_LEVEL_256", "256px", }, + { THUNAR_ZOOM_LEVEL_512, "THUNAR_ZOOM_LEVEL_512", "512px", }, + { 0, NULL, NULL, }, }; type = g_enum_register_static (I_("ThunarZoomLevel"), values); @@ -228,13 +236,18 @@ thunar_zoom_level_to_icon_size (ThunarZoomLevel zoom_level) { switch (zoom_level) { - case THUNAR_ZOOM_LEVEL_SMALLEST: return THUNAR_ICON_SIZE_SMALLEST; - case THUNAR_ZOOM_LEVEL_SMALLER: return THUNAR_ICON_SIZE_SMALLER; - case THUNAR_ZOOM_LEVEL_SMALL: return THUNAR_ICON_SIZE_SMALL; - case THUNAR_ZOOM_LEVEL_NORMAL: return THUNAR_ICON_SIZE_NORMAL; - case THUNAR_ZOOM_LEVEL_LARGE: return THUNAR_ICON_SIZE_LARGE; - case THUNAR_ZOOM_LEVEL_LARGER: return THUNAR_ICON_SIZE_LARGER; - default: return THUNAR_ICON_SIZE_LARGEST; + case THUNAR_ZOOM_LEVEL_16: return THUNAR_ICON_SIZE_16; + case THUNAR_ZOOM_LEVEL_24: return THUNAR_ICON_SIZE_24; + case THUNAR_ZOOM_LEVEL_32: return THUNAR_ICON_SIZE_32; + case THUNAR_ZOOM_LEVEL_48: return THUNAR_ICON_SIZE_48; + case THUNAR_ZOOM_LEVEL_64: return THUNAR_ICON_SIZE_64; + case THUNAR_ZOOM_LEVEL_96: return THUNAR_ICON_SIZE_96; + case THUNAR_ZOOM_LEVEL_128: return THUNAR_ICON_SIZE_128; + case THUNAR_ZOOM_LEVEL_170: return THUNAR_ICON_SIZE_170; + case THUNAR_ZOOM_LEVEL_200: return THUNAR_ICON_SIZE_200; + case THUNAR_ZOOM_LEVEL_256: return THUNAR_ICON_SIZE_256; + case THUNAR_ZOOM_LEVEL_512: return THUNAR_ICON_SIZE_512; + default: return THUNAR_ICON_SIZE_512; } } diff --git a/thunar/thunar-enum-types.h b/thunar/thunar-enum-types.h index e5e6aa97..004971f8 100644 --- a/thunar/thunar-enum-types.h +++ b/thunar/thunar-enum-types.h @@ -120,25 +120,21 @@ GType thunar_column_get_type (void) G_GNUC_CONST; /** * ThunarIconSize: - * @THUNAR_ICON_SIZE_SMALLEST : icon size for #THUNAR_ZOOM_LEVEL_SMALLEST. - * @THUNAR_ICON_SIZE_SMALLER : icon size for #THUNAR_ZOOM_LEVEL_SMALLER. - * @THUNAR_ICON_SIZE_SMALL : icon size for #THUNAR_ZOOM_LEVEL_SMALL. - * @THUNAR_ICON_SIZE_NORMAL : icon size for #THUNAR_ZOOM_LEVEL_NORMAL. - * @THUNAR_ICON_SIZE_LARGE : icon size for #THUNAR_ZOOM_LEVEL_LARGE. - * @THUNAR_ICON_SIZE_LARGER : icon size for #THUNAR_ZOOM_LEVEL_LARGER. - * @THUNAR_ICON_SIZE_LARGEST : icon size for #THUNAR_ZOOM_LEVEL_LARGEST. - * * Icon sizes matching the various #ThunarZoomLevels. **/ typedef enum { - THUNAR_ICON_SIZE_SMALLEST = 16, - THUNAR_ICON_SIZE_SMALLER = 24, - THUNAR_ICON_SIZE_SMALL = 32, - THUNAR_ICON_SIZE_NORMAL = 48, - THUNAR_ICON_SIZE_LARGE = 64, - THUNAR_ICON_SIZE_LARGER = 96, - THUNAR_ICON_SIZE_LARGEST = 128, + THUNAR_ICON_SIZE_16 = 16, + THUNAR_ICON_SIZE_24 = 24, + THUNAR_ICON_SIZE_32 = 32, + THUNAR_ICON_SIZE_48 = 48, + THUNAR_ICON_SIZE_64 = 64, + THUNAR_ICON_SIZE_96 = 96, + THUNAR_ICON_SIZE_128 = 128, + THUNAR_ICON_SIZE_170 = 170, + THUNAR_ICON_SIZE_200 = 200, + THUNAR_ICON_SIZE_256 = 256, + THUNAR_ICON_SIZE_512 = 512, } ThunarIconSize; GType thunar_icon_size_get_type (void) G_GNUC_CONST; @@ -186,26 +182,22 @@ GType thunar_recursive_permissions_get_type (void) G_GNUC_CONST; /** * ThunarZoomLevel: - * @THUNAR_ZOOM_LEVEL_SMALLEST : smallest possible zoom level. - * @THUNAR_ZOOM_LEVEL_SMALLER : smaller zoom level. - * @THUNAR_ZOOM_LEVEL_SMALL : small zoom level. - * @THUNAR_ZOOM_LEVEL_NORMAL : the default zoom level. - * @THUNAR_ZOOM_LEVEL_LARGE : large zoom level. - * @THUNAR_ZOOM_LEVEL_LARGER : larger zoom level. - * @THUNAR_ZOOM_LEVEL_LARGEST : largest possible zoom level. - * * Lists the various zoom levels supported by Thunar's * folder views. **/ typedef enum { - THUNAR_ZOOM_LEVEL_SMALLEST, - THUNAR_ZOOM_LEVEL_SMALLER, - THUNAR_ZOOM_LEVEL_SMALL, - THUNAR_ZOOM_LEVEL_NORMAL, - THUNAR_ZOOM_LEVEL_LARGE, - THUNAR_ZOOM_LEVEL_LARGER, - THUNAR_ZOOM_LEVEL_LARGEST, + THUNAR_ZOOM_LEVEL_16, + THUNAR_ZOOM_LEVEL_24, + THUNAR_ZOOM_LEVEL_32, + THUNAR_ZOOM_LEVEL_48, + THUNAR_ZOOM_LEVEL_64, + THUNAR_ZOOM_LEVEL_96, + THUNAR_ZOOM_LEVEL_128, + THUNAR_ZOOM_LEVEL_170, + THUNAR_ZOOM_LEVEL_200, + THUNAR_ZOOM_LEVEL_256, + THUNAR_ZOOM_LEVEL_512, /*< private >*/ THUNAR_ZOOM_N_LEVELS, diff --git a/thunar/thunar-icon-renderer.c b/thunar/thunar-icon-renderer.c index 3d5f2674..836e1d55 100644 --- a/thunar/thunar-icon-renderer.c +++ b/thunar/thunar-icon-renderer.c @@ -152,7 +152,7 @@ thunar_icon_renderer_class_init (ThunarIconRendererClass *klass) PROP_SIZE, g_param_spec_enum ("size", "size", "size", THUNAR_TYPE_ICON_SIZE, - THUNAR_ICON_SIZE_SMALL, + THUNAR_ICON_SIZE_32, G_PARAM_CONSTRUCT | EXO_PARAM_READWRITE)); } diff --git a/thunar/thunar-icon-view.c b/thunar/thunar-icon-view.c index a5ac206d..fd2e6040 100644 --- a/thunar/thunar-icon-view.c +++ b/thunar/thunar-icon-view.c @@ -181,19 +181,19 @@ thunar_icon_view_zoom_level_changed (ThunarStandardView *standard_view) /* determine the "wrap-width" depending on the "zoom-level" */ switch (thunar_view_get_zoom_level (THUNAR_VIEW (standard_view))) { - case THUNAR_ZOOM_LEVEL_SMALLEST: + case THUNAR_ZOOM_LEVEL_16: wrap_width = 48; break; - case THUNAR_ZOOM_LEVEL_SMALLER: + case THUNAR_ZOOM_LEVEL_24: wrap_width = 64; break; - case THUNAR_ZOOM_LEVEL_SMALL: + case THUNAR_ZOOM_LEVEL_32: wrap_width = 72; break; - case THUNAR_ZOOM_LEVEL_NORMAL: + case THUNAR_ZOOM_LEVEL_48: wrap_width = 112; break; diff --git a/thunar/thunar-preferences-dialog.c b/thunar/thunar-preferences-dialog.c index dd19f6d0..7a4bc743 100644 --- a/thunar/thunar-preferences-dialog.c +++ b/thunar/thunar-preferences-dialog.c @@ -399,13 +399,17 @@ thunar_preferences_dialog_init (ThunarPreferencesDialog *dialog) gtk_widget_show (label); combo = gtk_combo_box_text_new (); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Very Small")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Smaller")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Small")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Normal")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Large")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Larger")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Very Large")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("16px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("24px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("32px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("48px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("64px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("96px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("128px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("170px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("200px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("256px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("512px")); exo_mutual_binding_new_full (G_OBJECT (dialog->preferences), "shortcuts-icon-size", G_OBJECT (combo), "active", transform_icon_size_to_index, transform_index_to_icon_size, NULL, NULL); gtk_widget_set_hexpand (combo, TRUE); @@ -443,13 +447,17 @@ thunar_preferences_dialog_init (ThunarPreferencesDialog *dialog) gtk_widget_show (label); combo = gtk_combo_box_text_new (); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Very Small")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Smaller")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Small")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Normal")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Large")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Larger")); - gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("Very Large")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("16px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("24px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("32px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("48px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("64px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("96px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("128px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("170px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("200px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("256px")); + gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), _("512px")); exo_mutual_binding_new_full (G_OBJECT (dialog->preferences), "tree-icon-size", G_OBJECT (combo), "active", transform_icon_size_to_index, transform_index_to_icon_size, NULL, NULL); gtk_widget_set_hexpand (combo, TRUE); diff --git a/thunar/thunar-preferences.c b/thunar/thunar-preferences.c index db92bf2a..40487fcc 100644 --- a/thunar/thunar-preferences.c +++ b/thunar/thunar-preferences.c @@ -207,7 +207,7 @@ thunar_preferences_class_init (ThunarPreferencesClass *klass) "LastCompactViewZoomLevel", NULL, THUNAR_TYPE_ZOOM_LEVEL, - THUNAR_ZOOM_LEVEL_SMALLEST, + THUNAR_ZOOM_LEVEL_16, EXO_PARAM_READWRITE); @@ -272,7 +272,7 @@ thunar_preferences_class_init (ThunarPreferencesClass *klass) "LastDetailsViewZoomLevel", NULL, THUNAR_TYPE_ZOOM_LEVEL, - THUNAR_ZOOM_LEVEL_SMALLER, + THUNAR_ZOOM_LEVEL_24, EXO_PARAM_READWRITE); /** @@ -285,7 +285,7 @@ thunar_preferences_class_init (ThunarPreferencesClass *klass) "LastIconViewZoomLevel", NULL, THUNAR_TYPE_ZOOM_LEVEL, - THUNAR_ZOOM_LEVEL_NORMAL, + THUNAR_ZOOM_LEVEL_48, EXO_PARAM_READWRITE); /** @@ -729,7 +729,7 @@ thunar_preferences_class_init (ThunarPreferencesClass *klass) "ShortcutsIconSize", NULL, THUNAR_TYPE_ICON_SIZE, - THUNAR_ICON_SIZE_SMALLER, + THUNAR_ICON_SIZE_24, EXO_PARAM_READWRITE); /** @@ -756,7 +756,7 @@ thunar_preferences_class_init (ThunarPreferencesClass *klass) "TreeIconSize", NULL, THUNAR_TYPE_ICON_SIZE, - THUNAR_ICON_SIZE_SMALLEST, + THUNAR_ICON_SIZE_16, EXO_PARAM_READWRITE); /* install all properties */ diff --git a/thunar/thunar-view.c b/thunar/thunar-view.c index 29d2b632..0b99ffe6 100644 --- a/thunar/thunar-view.c +++ b/thunar/thunar-view.c @@ -119,7 +119,7 @@ thunar_view_class_init (gpointer klass) "zoom-level", "zoom-level", THUNAR_TYPE_ZOOM_LEVEL, - THUNAR_ZOOM_LEVEL_NORMAL, + THUNAR_ZOOM_LEVEL_48, EXO_PARAM_READWRITE)); } @@ -210,7 +210,7 @@ thunar_view_set_show_hidden (ThunarView *view, ThunarZoomLevel thunar_view_get_zoom_level (ThunarView *view) { - _thunar_return_val_if_fail (THUNAR_IS_VIEW (view), THUNAR_ZOOM_LEVEL_NORMAL); + _thunar_return_val_if_fail (THUNAR_IS_VIEW (view), THUNAR_ZOOM_LEVEL_48); return (*THUNAR_VIEW_GET_IFACE (view)->get_zoom_level) (view); } diff --git a/thunar/thunar-window.c b/thunar/thunar-window.c index 6db84bf3..9eac53a6 100644 --- a/thunar/thunar-window.c +++ b/thunar/thunar-window.c @@ -483,7 +483,7 @@ G_GNUC_END_IGNORE_DEPRECATIONS "zoom-level", "zoom-level", THUNAR_TYPE_ZOOM_LEVEL, - THUNAR_ZOOM_LEVEL_NORMAL, + THUNAR_ZOOM_LEVEL_48, EXO_PARAM_READWRITE)); /** -- 2.11.0