From 96baf9769a0b3ca1c364708e58785c39499f6068 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 11 Jan 2021 14:38:18 -0500 Subject: [PATCH 1/5] about dialog: Remove manual icon sizing We have icon theme code to do that for us. --- gtk/gtkaboutdialog.c | 36 +----------------------------------- 1 file changed, 1 insertion(+), 35 deletions(-) diff --git a/gtk/gtkaboutdialog.c b/gtk/gtkaboutdialog.c index 745b45ea9b..bff8e76432 100644 --- a/gtk/gtkaboutdialog.c +++ b/gtk/gtkaboutdialog.c @@ -1644,41 +1644,7 @@ gtk_about_dialog_set_logo_icon_name (GtkAboutDialog *about, if (gtk_image_get_storage_type (GTK_IMAGE (about->logo_image)) == GTK_IMAGE_PAINTABLE) g_object_notify_by_pspec (G_OBJECT (about), props[PROP_LOGO]); - if (icon_name) - { - GtkIconTheme *icon_theme = gtk_icon_theme_get_for_display (gtk_widget_get_display (GTK_WIDGET (about))); - int *sizes = gtk_icon_theme_get_icon_sizes (icon_theme, icon_name); - int i, best_size = 0; - - for (i = 0; sizes[i]; i++) - { - if (sizes[i] >= 128 || sizes[i] == -1) - { - best_size = 128; - break; - } - else if (sizes[i] >= 96) - { - best_size = MAX (96, best_size); - } - else if (sizes[i] >= 64) - { - best_size = MAX (64, best_size); - } - else - { - best_size = MAX (48, best_size); - } - } - g_free (sizes); - - gtk_image_set_from_icon_name (GTK_IMAGE (about->logo_image), icon_name); - gtk_image_set_pixel_size (GTK_IMAGE (about->logo_image), best_size); - } - else - { - gtk_image_clear (GTK_IMAGE (about->logo_image)); - } + gtk_image_set_from_icon_name (GTK_IMAGE (about->logo_image), icon_name); g_object_notify_by_pspec (G_OBJECT (about), props[PROP_LOGO_ICON_NAME]); From 1d40750a6045c2c03250d5594e30ef3773c9c32a Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 11 Jan 2021 16:48:06 -0500 Subject: [PATCH 2/5] aboutdialog: Set a style class Add the .aboutdialog style class to toplevel widget of about dialogs, similar to what we do for e.g. GtkAssistant. --- gtk/gtkaboutdialog.c | 6 ++++++ gtk/ui/gtkaboutdialog.ui | 3 +++ 2 files changed, 9 insertions(+) diff --git a/gtk/gtkaboutdialog.c b/gtk/gtkaboutdialog.c index bff8e76432..4cdee36575 100644 --- a/gtk/gtkaboutdialog.c +++ b/gtk/gtkaboutdialog.c @@ -101,6 +101,12 @@ * "title", _("About ExampleCode"), * NULL); * ]| + * + * # CSS nodes + * + * GtkAboutDialog has a single CSS node with the name window and style + * class .aboutdialog. + */ typedef struct diff --git a/gtk/ui/gtkaboutdialog.ui b/gtk/ui/gtkaboutdialog.ui index ab5fe44b32..bd69376d6a 100644 --- a/gtk/ui/gtkaboutdialog.ui +++ b/gtk/ui/gtkaboutdialog.ui @@ -2,6 +2,9 @@