diff options
author | Victor Kareh <[email protected]> | 2025-08-08 13:08:41 -0400 |
---|---|---|
committer | Victor Kareh <[email protected]> | 2025-08-08 13:12:24 -0400 |
commit | 6d9ddd1048111d1341566f16b30df085ce85eb7d (patch) | |
tree | 43aa0e1a8d382ea39980154856bd617a0dd18ef0 /applets/wncklet/workspace-switcher.c | |
parent | 20cb96dfb5f4b79d2bac212edcde8cdda9f3283c (diff) | |
download | mate-panel-bump-libwnck-version.tar.bz2 mate-panel-bump-libwnck-version.tar.xz |
wncklet: Bump libwnck to 43.0bump-libwnck-version
Recent versions of libwnck introduced a WnckHandler object to be used as
the main entry point into the library.
Diffstat (limited to 'applets/wncklet/workspace-switcher.c')
-rw-r--r-- | applets/wncklet/workspace-switcher.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/applets/wncklet/workspace-switcher.c b/applets/wncklet/workspace-switcher.c index e3fda355..cba0ecbd 100644 --- a/applets/wncklet/workspace-switcher.c +++ b/applets/wncklet/workspace-switcher.c @@ -215,6 +215,9 @@ typedef struct { GtkWidget* pager_container; GtkWidget* pager; +#ifdef HAVE_X11 + WnckHandle* wnck_handle; +#endif WnckScreen* screen; PagerWM wm; @@ -399,7 +402,7 @@ static void applet_realized(MatePanelApplet* applet, PagerData* pager) #ifdef HAVE_X11 if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) { - pager->screen = wncklet_get_screen(GTK_WIDGET(applet)); + pager->screen = wncklet_get_screen(pager->wnck_handle, GTK_WIDGET(applet)); wncklet_connect_while_alive(pager->screen, "window_manager_changed", G_CALLBACK(window_manager_changed), pager, pager->applet); } #endif /* HAVE_X11 */ @@ -772,7 +775,8 @@ gboolean workspace_switcher_applet_fill(MatePanelApplet* applet) #ifdef HAVE_X11 if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) { - pager->pager = wnck_pager_new(); + pager->wnck_handle = wnck_handle_new(WNCK_CLIENT_TYPE_PAGER); + pager->pager = wnck_pager_new_with_handle(pager->wnck_handle); wnck_pager_set_shadow_type(WNCK_PAGER(pager->pager), GTK_SHADOW_IN); } else @@ -1288,5 +1292,10 @@ static void destroy_pager(GtkWidget* widget, PagerData* pager) if (pager->properties_dialog) gtk_widget_destroy(pager->properties_dialog); + +#ifdef HAVE_X11 + g_clear_object(&pager->wnck_handle); +#endif + g_free(pager); } |