From d8316f3e2745fde9039f03a1e619f13132f21bf4 Mon Sep 17 00:00:00 2001 From: Victor Kareh Date: Tue, 11 Feb 2020 07:40:47 -0500 Subject: [PATCH 4/5] icons: Mark GdkPixbuf icons as deprecated Since we have migrated icons to render as cairo surfaces we can now mark GdkPixbuf icons as deprecated without having to break the API. --- libwnck/application.c | 8 ++++++++ libwnck/application.h | 6 ++++++ libwnck/class-group.c | 4 ++++ libwnck/class-group.h | 4 ++++ libwnck/test-wnck.c | 2 +- libwnck/window.c | 6 ++++++ libwnck/window.h | 4 ++++ 7 files changed, 33 insertions(+), 1 deletion(-) diff --git a/libwnck/application.c b/libwnck/application.c index b441eb6..9096ddb 100644 --- a/libwnck/application.c +++ b/libwnck/application.c @@ -395,6 +395,8 @@ find_icon_window (WnckApplication *app) * Return value: (transfer none): the icon for @app. The caller should * reference the returned GdkPixbuf if it needs to keep * the icon around. + * + * Deprecated:41.0: Use wnck_application_get_icon_surface() instead. **/ GdkPixbuf* wnck_application_get_icon (WnckApplication *app) @@ -434,10 +436,12 @@ wnck_application_get_icon (WnckApplication *app) } else { +G_GNUC_BEGIN_IGNORE_DEPRECATIONS WnckWindow *w = find_icon_window (app); if (w) return wnck_window_get_icon (w); else +G_GNUC_END_IGNORE_DEPRECATIONS return NULL; } } @@ -453,6 +457,8 @@ wnck_application_get_icon (WnckApplication *app) * Return value: (transfer none): the mini-icon for @app. The caller should * reference the returned GdkPixbuf if it needs to keep * the mini-icon around. + * + * Deprecated:41.0: Use wnck_application_get_mini_icon_surface() instead. **/ GdkPixbuf* wnck_application_get_mini_icon (WnckApplication *app) @@ -492,10 +498,12 @@ wnck_application_get_mini_icon (WnckApplication *app) } else { +G_GNUC_BEGIN_IGNORE_DEPRECATIONS WnckWindow *w = find_icon_window (app); if (w) return wnck_window_get_mini_icon (w); else +G_GNUC_END_IGNORE_DEPRECATIONS return NULL; } } diff --git a/libwnck/application.h b/libwnck/application.h index f3ea970..4d9078e 100644 --- a/libwnck/application.h +++ b/libwnck/application.h @@ -91,10 +91,16 @@ int wnck_application_get_n_windows (WnckApplication *app); const char* wnck_application_get_name (WnckApplication *app); const char* wnck_application_get_icon_name (WnckApplication *app); int wnck_application_get_pid (WnckApplication *app); + +G_DEPRECATED_FOR(wnck_application_get_icon_surface) GdkPixbuf* wnck_application_get_icon (WnckApplication *app); + +G_DEPRECATED_FOR(wnck_application_get_mini_icon_surface) GdkPixbuf* wnck_application_get_mini_icon (WnckApplication *app); + cairo_surface_t* wnck_application_get_icon_surface (WnckApplication *app); cairo_surface_t* wnck_application_get_mini_icon_surface (WnckApplication *app); + gboolean wnck_application_get_icon_is_fallback (WnckApplication *app); const char* wnck_application_get_startup_id (WnckApplication *app); diff --git a/libwnck/class-group.c b/libwnck/class-group.c index 7899497..026e995 100644 --- a/libwnck/class-group.c +++ b/libwnck/class-group.c @@ -689,6 +689,8 @@ wnck_class_group_get_name (WnckClassGroup *class_group) * the icon around. * * Since: 2.2 + * + * Deprecated:41.0: Use wnck_class_group_get_icon_surface() instead. **/ GdkPixbuf * wnck_class_group_get_icon (WnckClassGroup *class_group) @@ -741,6 +743,8 @@ wnck_class_group_get_icon (WnckClassGroup *class_group) * to keep the mini-icon around. * * Since: 2.2 + * + * Deprecated:41.0: Use wnck_class_group_get_mini_icon_surface() instead. **/ GdkPixbuf * wnck_class_group_get_mini_icon (WnckClassGroup *class_group) diff --git a/libwnck/class-group.h b/libwnck/class-group.h index 122e0ed..dee0e7c 100644 --- a/libwnck/class-group.h +++ b/libwnck/class-group.h @@ -81,8 +81,12 @@ const char * wnck_class_group_get_id (WnckClassGroup *class_group); const char * wnck_class_group_get_name (WnckClassGroup *class_group); +G_DEPRECATED_FOR(wnck_class_group_get_icon_surface) GdkPixbuf *wnck_class_group_get_icon (WnckClassGroup *class_group); + +G_DEPRECATED_FOR(wnck_class_group_get_mini_icon_surface) GdkPixbuf *wnck_class_group_get_mini_icon (WnckClassGroup *class_group); + cairo_surface_t *wnck_class_group_get_icon_surface (WnckClassGroup *class_group); cairo_surface_t *wnck_class_group_get_mini_icon_surface (WnckClassGroup *class_group); diff --git a/libwnck/test-wnck.c b/libwnck/test-wnck.c index 77085cd..649c2e6 100644 --- a/libwnck/test-wnck.c +++ b/libwnck/test-wnck.c @@ -523,7 +523,7 @@ icon_set_func (GtkTreeViewColumn *tree_column, return; g_object_set (GTK_CELL_RENDERER (cell), - "pixbuf", wnck_window_get_mini_icon (window), + "surface", wnck_window_get_mini_icon_surface (window), NULL); } diff --git a/libwnck/window.c b/libwnck/window.c index 5c97675..3cd800d 100644 --- a/libwnck/window.c +++ b/libwnck/window.c @@ -21,6 +21,8 @@ * License along with this library; if not, see . */ +#undef WNCK_DISABLE_DEPRECATED + #include #include @@ -2164,6 +2166,8 @@ _wnck_window_load_icons (WnckWindow *window) * Return value: (transfer none): the icon for @window. The caller should * reference the returned GdkPixbuf if it needs to keep * the icon around. + * + * Deprecated:41.0: Use wnck_window_get_icon_surface() instead. **/ GdkPixbuf* wnck_window_get_icon (WnckWindow *window) @@ -2216,6 +2220,8 @@ wnck_window_get_icon (WnckWindow *window) * Return value: (transfer none): the mini-icon for @window. The caller should * reference the returned GdkPixbuf if it needs to keep * the icon around. + * + * Deprecated:41.0: Use wnck_window_get_mini_icon_surface() instead. **/ GdkPixbuf* wnck_window_get_mini_icon (WnckWindow *window) diff --git a/libwnck/window.h b/libwnck/window.h index 2bec086..d7e52f1 100644 --- a/libwnck/window.h +++ b/libwnck/window.h @@ -381,8 +381,12 @@ void wnck_window_activate_transient (WnckWindow *window, guint32 timestamp); gboolean wnck_window_transient_is_most_recently_activated (WnckWindow *window); +G_DEPRECATED_FOR(wnck_window_get_icon_surface) GdkPixbuf* wnck_window_get_icon (WnckWindow *window); + +G_DEPRECATED_FOR(wnck_window_get_mini_icon_surface) GdkPixbuf* wnck_window_get_mini_icon (WnckWindow *window); + cairo_surface_t* wnck_window_get_icon_surface (WnckWindow *window); cairo_surface_t* wnck_window_get_mini_icon_surface (WnckWindow *window); -- 2.37.2