diff options
Diffstat (limited to 'applets/wncklet/wncklet.c')
| -rw-r--r-- | applets/wncklet/wncklet.c | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/applets/wncklet/wncklet.c b/applets/wncklet/wncklet.c index 3b185910..1ced4507 100644 --- a/applets/wncklet/wncklet.c +++ b/applets/wncklet/wncklet.c @@ -35,11 +35,15 @@ #include <gdk/gdkx.h> #define WNCK_I_KNOW_THIS_IS_UNSTABLE #include <libwnck/libwnck.h> +#include "workspace-switcher.h" +#endif +#ifndef HAVE_X11 +#include <gdk/gdkwayland.h> +#define GDK_IS_X11_DISPLAY(object) !(G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_WAYLAND_DISPLAY)) #endif #include "wncklet.h" #include "window-menu.h" -#include "workspace-switcher.h" #include "window-list.h" #include "showdesktop.h" @@ -96,18 +100,19 @@ void wncklet_display_help(GtkWidget* widget, const char* doc_id, const char* lin } #ifdef HAVE_X11 -WnckScreen* wncklet_get_screen(GtkWidget* applet) +WnckScreen* wncklet_get_screen(WnckHandle* handle, GtkWidget* applet) { + g_return_val_if_fail (WNCK_IS_HANDLE (handle), NULL); g_return_val_if_fail (GDK_IS_X11_DISPLAY (gdk_display_get_default ()), NULL); int screen_num; if (!gtk_widget_has_screen(applet)) - return wnck_screen_get_default(); + return wnck_handle_get_default_screen(handle); screen_num = gdk_x11_screen_get_screen_number(gtk_widget_get_screen(applet)); - return wnck_screen_get(screen_num); + return wnck_handle_get_screen(handle, screen_num); } #endif /* HAVE_X11 */ @@ -124,22 +129,12 @@ static gboolean wncklet_factory(MatePanelApplet* applet, const char* iid, gpoint { gboolean retval = FALSE; -#ifdef HAVE_X11 - if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) - { - static gboolean type_registered = FALSE; - if (!type_registered) - { - wnck_set_client_type(WNCK_CLIENT_TYPE_PAGER); - type_registered = TRUE; - } - } -#endif /* HAVE_X11 */ - if (!strcmp(iid, "WindowMenuApplet")) retval = window_menu_applet_fill(applet); +#ifdef HAVE_X11 else if (!strcmp(iid, "WorkspaceSwitcherApplet") || !strcmp(iid, "PagerApplet")) retval = workspace_switcher_applet_fill(applet); +#endif else if (!strcmp(iid, "WindowListApplet") || !strcmp(iid, "TasklistApplet")) retval = window_list_applet_fill(applet); else if (!strcmp(iid, "ShowDesktopApplet")) |
