[gtk/gtk-3-24: 2/3] statusicons: Improve code readability and remove dead code
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/gtk-3-24: 2/3] statusicons: Improve code readability and remove dead code
- Date: Wed, 13 Nov 2019 17:40:31 +0000 (UTC)
commit 4fc32b27517880f62570a2c5c8b3a9d4596a55c6
Author: Victor Kareh <vkareh redhat com>
Date: Tue Nov 12 09:13:24 2019 -0500
statusicons: Improve code readability and remove dead code
gtk/deprecated/gtkstatusicon.c | 55 ++++++++++++++++++++++++++++--------------
1 file changed, 37 insertions(+), 18 deletions(-)
---
diff --git a/gtk/deprecated/gtkstatusicon.c b/gtk/deprecated/gtkstatusicon.c
index fd6797d0dd..0c9dae62e6 100644
--- a/gtk/deprecated/gtkstatusicon.c
+++ b/gtk/deprecated/gtkstatusicon.c
@@ -1398,7 +1398,9 @@ gtk_status_icon_update_image (GtkStatusIcon *status_icon)
GtkIconHelper *icon_helper;
cairo_surface_t *surface;
GtkWidget *widget;
- GdkPixbuf *pixbuf = NULL;
+#ifndef GDK_WINDOWING_X11
+ GdkPixbuf *pixbuf;
+#endif
gint round_size;
gint scale;
@@ -1421,28 +1423,32 @@ gtk_status_icon_update_image (GtkStatusIcon *status_icon)
_gtk_icon_helper_set_icon_size (icon_helper, GTK_ICON_SIZE_SMALL_TOOLBAR);
_gtk_icon_helper_set_pixel_size (icon_helper, round_size);
surface = gtk_icon_helper_load_surface (icon_helper, scale);
+
+ g_object_unref (icon_helper);
+
+#ifdef GDK_WINDOWING_X11
if (surface)
{
-#ifdef GDK_WINDOWING_X11
gtk_image_set_from_surface (GTK_IMAGE (priv->image), surface);
-#else
- pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0,
- cairo_image_surface_get_width (surface),
- cairo_image_surface_get_height (surface));
-#endif
cairo_surface_destroy (surface);
}
else
{
-#ifdef GDK_WINDOWING_X11
gtk_image_set_from_pixbuf (GTK_IMAGE (priv->image), NULL);
+ }
#endif
+
+#ifdef GDK_WINDOWING_WIN32
+ if (surface)
+ {
+ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0,
+ cairo_image_surface_get_width (surface),
+ cairo_image_surface_get_height (surface));
+ cairo_surface_destroy (surface);
}
- g_object_unref (icon_helper);
if (pixbuf != NULL)
{
-#ifdef GDK_WINDOWING_WIN32
prev_hicon = priv->nid.hIcon;
priv->nid.hIcon = gdk_win32_pixbuf_to_hicon_libgtk_only (pixbuf);
priv->nid.uFlags |= NIF_ICON;
@@ -1451,27 +1457,40 @@ gtk_status_icon_update_image (GtkStatusIcon *status_icon)
g_warning (G_STRLOC ": Shell_NotifyIcon(NIM_MODIFY) failed");
if (prev_hicon)
DestroyIcon (prev_hicon);
-#endif
-#ifdef GDK_WINDOWING_QUARTZ
- QUARTZ_POOL_ALLOC;
- [priv->status_item setImage:pixbuf];
- QUARTZ_POOL_RELEASE;
-#endif
}
else
{
-#ifdef GDK_WINDOWING_WIN32
priv->nid.uFlags &= ~NIF_ICON;
if (priv->nid.hWnd != NULL && priv->visible)
if (!Shell_NotifyIconW (NIM_MODIFY, &priv->nid))
g_warning (G_STRLOC ": Shell_NotifyIcon(NIM_MODIFY) failed");
+ }
+
+ g_clear_object (&pixbuf);
#endif
+
#ifdef GDK_WINDOWING_QUARTZ
+ if (surface)
+ {
+ pixbuf = gdk_pixbuf_get_from_surface (surface, 0, 0,
+ cairo_image_surface_get_width (surface),
+ cairo_image_surface_get_height (surface));
+ cairo_surface_destroy (surface);
+ }
+
+ if (pixbuf != NULL)
+ {
+ QUARTZ_POOL_ALLOC;
+ [priv->status_item setImage:pixbuf];
+ QUARTZ_POOL_RELEASE;
+ }
+ else
+ {
[priv->status_item setImage:NULL];
-#endif
}
g_clear_object (&pixbuf);
+#endif
}
#ifdef GDK_WINDOWING_X11
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]