summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2017-07-30 16:53:07 +0100
committerBenjamin Otte <otte@redhat.com>2017-07-30 16:53:07 +0100
commit907290d6a89ff5e7f2915aaaa92e2b206cdac89b (patch)
treefa12b2e6d1f67ead5835452556a4adf986522e1f
parent9194420a903dc64589e00d11ffe1330f3253b165 (diff)
downloadgtk+-907290d6a89ff5e7f2915aaaa92e2b206cdac89b.tar.gz
-rw-r--r--gtk/a11y/gtkimageaccessible.c42
-rw-r--r--gtk/gtkicontheme.h7
-rw-r--r--gtk/gtkimage.c9
-rw-r--r--gtk/gtkimageprivate.h3
-rw-r--r--gtk/gtkprintunixdialog.c23
-rw-r--r--gtk/gtktoolbutton.c17
6 files changed, 17 insertions, 84 deletions
diff --git a/gtk/a11y/gtkimageaccessible.c b/gtk/a11y/gtkimageaccessible.c
index a83a9934f9..696eb17dcb 100644
--- a/gtk/a11y/gtkimageaccessible.c
+++ b/gtk/a11y/gtkimageaccessible.c
@@ -20,7 +20,7 @@
#include <string.h>
#include <gtk/gtk.h>
#include "gtkimageaccessible.h"
-#include "gtktoolbarprivate.h"
+#include "gtkimageprivate.h"
#include "gtkintl.h"
struct _GtkImageAccessiblePrivate
@@ -252,7 +252,6 @@ gtk_image_accessible_get_image_size (AtkImage *image,
{
GtkWidget* widget;
GtkImage *gtk_image;
- GtkImageType image_type;
widget = gtk_accessible_get_widget (GTK_ACCESSIBLE (image));
if (widget == NULL)
@@ -264,43 +263,8 @@ gtk_image_accessible_get_image_size (AtkImage *image,
gtk_image = GTK_IMAGE (widget);
- image_type = gtk_image_get_storage_type (gtk_image);
- switch (image_type)
- {
- case GTK_IMAGE_PIXBUF:
- {
- GdkPixbuf *pixbuf;
-
- pixbuf = gtk_image_get_pixbuf (gtk_image);
- *height = gdk_pixbuf_get_height (pixbuf);
- *width = gdk_pixbuf_get_width (pixbuf);
- break;
- }
- case GTK_IMAGE_ICON_NAME:
- case GTK_IMAGE_GICON:
- {
- GtkIconSize size;
-
- g_object_get (gtk_image, "icon-size", &size, NULL);
- gtk_icon_size_lookup (size, width, height);
- break;
- }
- case GTK_IMAGE_ANIMATION:
- {
- GdkPixbufAnimation *animation;
-
- animation = gtk_image_get_animation (gtk_image);
- *height = gdk_pixbuf_animation_get_height (animation);
- *width = gdk_pixbuf_animation_get_width (animation);
- break;
- }
- default:
- {
- *height = -1;
- *width = -1;
- break;
- }
- }
+ if (gtk_image_get_storage_type (gtk_image) != GTK_IMAGE_EMPTY)
+ gtk_image_get_image_size (gtk_image, width, height);
}
static gboolean
diff --git a/gtk/gtkicontheme.h b/gtk/gtkicontheme.h
index a76a97890e..015c12e0b8 100644
--- a/gtk/gtkicontheme.h
+++ b/gtk/gtkicontheme.h
@@ -341,13 +341,6 @@ GdkPixbuf * gtk_icon_info_load_symbolic_for_context_finish (GtkIconInf
gboolean *was_symbolic,
GError **error);
-#ifndef GDK_MULTIHEAD_SAFE
-GDK_AVAILABLE_IN_ALL
-gboolean gtk_icon_size_lookup (GtkIconSize size,
- gint *width,
- gint *height);
-#endif /* GDK_MULTIHEAD_SAFE */
-
G_END_DECLS
diff --git a/gtk/gtkimage.c b/gtk/gtkimage.c
index 6d9cdbf698..6d31fa61f7 100644
--- a/gtk/gtkimage.c
+++ b/gtk/gtkimage.c
@@ -1650,3 +1650,12 @@ gtk_image_get_icon_size (GtkImage *image)
return image->priv->icon_size;
}
+
+void
+gtk_image_get_image_size (GtkImage *image,
+ int *width,
+ int *height)
+{
+ _gtk_icon_helper_get_size (image->priv->icon_helper,
+ width, height);
+}
diff --git a/gtk/gtkimageprivate.h b/gtk/gtkimageprivate.h
index 2157839f0a..93a15abf15 100644
--- a/gtk/gtkimageprivate.h
+++ b/gtk/gtkimageprivate.h
@@ -34,6 +34,9 @@ G_BEGIN_DECLS
void gtk_image_set_from_definition (GtkImage *image,
GtkImageDefinition *def);
+void gtk_image_get_image_size (GtkImage *image,
+ int *width,
+ int *height);
G_END_DECLS
diff --git a/gtk/gtkprintunixdialog.c b/gtk/gtkprintunixdialog.c
index 4d06655289..46076d4f4b 100644
--- a/gtk/gtkprintunixdialog.c
+++ b/gtk/gtkprintunixdialog.c
@@ -135,7 +135,6 @@ static void gtk_print_unix_dialog_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec);
-static void gtk_print_unix_dialog_style_updated (GtkWidget *widget);
static void unschedule_idle_mark_conflicts (GtkPrintUnixDialog *dialog);
static void selected_printer_changed (GtkTreeSelection *selection,
GtkPrintUnixDialog *dialog);
@@ -407,7 +406,6 @@ gtk_print_unix_dialog_class_init (GtkPrintUnixDialogClass *class)
object_class->set_property = gtk_print_unix_dialog_set_property;
object_class->get_property = gtk_print_unix_dialog_get_property;
- widget_class->style_updated = gtk_print_unix_dialog_style_updated;
widget_class->destroy = gtk_print_unix_dialog_destroy;
g_object_class_install_property (object_class,
@@ -2308,27 +2306,6 @@ draw_collate (GtkDrawingArea *da,
}
static void
-gtk_print_unix_dialog_style_updated (GtkWidget *widget)
-{
- GTK_WIDGET_CLASS (gtk_print_unix_dialog_parent_class)->style_updated (widget);
-
- if (gtk_widget_has_screen (widget))
- {
- GtkPrintUnixDialog *dialog = (GtkPrintUnixDialog *)widget;
- GtkPrintUnixDialogPrivate *priv = dialog->priv;
- gint size;
- gfloat scale;
-
- gtk_icon_size_lookup (GTK_ICON_SIZE_LARGE, &size, NULL);
- scale = size / 48.0;
-
- gtk_widget_set_size_request (priv->collate_image,
- (50 + 20) * scale,
- (15 + 26) * scale);
- }
-}
-
-static void
update_page_range_entry_sensitivity (GtkWidget *button,
GtkPrintUnixDialog *dialog)
{
diff --git a/gtk/gtktoolbutton.c b/gtk/gtktoolbutton.c
index 6161029740..159865b048 100644
--- a/gtk/gtktoolbutton.c
+++ b/gtk/gtktoolbutton.c
@@ -724,22 +724,9 @@ clone_image_menu_size (GtkImage *image)
}
else if (storage_type == GTK_IMAGE_PIXBUF)
{
- gint width, height;
+ GdkPixbuf *src_pixbuf = gtk_image_get_pixbuf (image);
- if (gtk_icon_size_lookup (GTK_ICON_SIZE_NORMAL, &width, &height))
- {
- GdkPixbuf *src_pixbuf, *dest_pixbuf;
- GtkWidget *cloned_image;
-
- src_pixbuf = gtk_image_get_pixbuf (image);
- dest_pixbuf = gdk_pixbuf_scale_simple (src_pixbuf, width, height,
- GDK_INTERP_BILINEAR);
-
- cloned_image = gtk_image_new_from_pixbuf (dest_pixbuf);
- g_object_unref (dest_pixbuf);
-
- return cloned_image;
- }
+ return gtk_image_new_from_pixbuf (src_pixbuf);
}
return NULL;