diff --git a/src/process-window.c b/src/process-window.c index bd16c40..d331761 100644 --- a/src/process-window.c +++ b/src/process-window.c @@ -24,6 +24,7 @@ #include #include +#include #include #include @@ -303,8 +304,12 @@ xtm_process_window_init (XtmProcessWindow *window) G_CALLBACK (show_settings_dialog), window); button = GTK_WIDGET (gtk_builder_get_object (window->builder, "button-identify")); - g_signal_connect (G_OBJECT (button), "clicked", - G_CALLBACK (xwininfo_clicked_cb), window); + if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) { + g_signal_connect (G_OBJECT (button), "clicked", + G_CALLBACK (xwininfo_clicked_cb), window); + } else { + gtk_widget_hide (button); + } window->filter_searchbar = GTK_WIDGET (gtk_builder_get_object (window->builder, "filter-searchbar")); { diff --git a/src/task-manager.c b/src/task-manager.c index bd843e9..16f5ecf 100644 --- a/src/task-manager.c +++ b/src/task-manager.c @@ -24,6 +24,10 @@ #include #include +#ifdef HAVE_WNCK +#include +#endif + #include "task-manager.h" #ifdef HAVE_WNCK #include "app-manager.h" @@ -93,7 +97,9 @@ static void xtm_task_manager_init (XtmTaskManager *manager) { #ifdef HAVE_WNCK - manager->app_manager = xtm_app_manager_new (); + if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) { + manager->app_manager = xtm_app_manager_new (); + } #endif manager->tasks = g_array_new (FALSE, FALSE, sizeof (Task)); @@ -111,7 +117,9 @@ xtm_task_manager_finalize (GObject *object) XtmTaskManager *manager = XTM_TASK_MANAGER (object); g_array_free (manager->tasks, TRUE); #ifdef HAVE_WNCK - g_object_unref (manager->app_manager); + if (manager->app_manager != NULL) { + g_object_unref (manager->app_manager); + } #endif g_object_unref (settings); } @@ -235,8 +243,8 @@ model_update_tree_iter (XtmTaskManager *manager, GtkTreeIter *iter, glong timest gchar *old_state; gchar *background, *foreground; #ifdef HAVE_WNCK - App *app = xtm_app_manager_get_app_from_pid (manager->app_manager, task->pid); - GdkPixbuf *icon; + App *app = manager->app_manager != NULL ? xtm_app_manager_get_app_from_pid (manager->app_manager, task->pid) : NULL; + GdkPixbuf *icon = NULL; #endif vsz = g_format_size_full (task->vsz, G_FORMAT_SIZE_IEC_UNITS);