Make libx11 optional, guard x11 code paths
It's not clear whether libwnck-based functionality will ever have a
counterpart on Wayland, so it seems pointless to replace libwnck with
libxfce4windowing at this stage.
Completes: ecd1e1a645
Related: #75, #78
This commit is contained in:
@@ -268,14 +268,14 @@ xtm_process_tree_view_finalize (GObject *object)
|
||||
static void
|
||||
column_task_pack_cells (XtmProcessTreeView *treeview, GtkTreeViewColumn *column)
|
||||
{
|
||||
GtkCellRenderer *cell_cmdline, *cell_icon;
|
||||
GtkCellRenderer *cell_cmdline;
|
||||
gboolean show_application_icons;
|
||||
|
||||
g_object_get (treeview->settings, "show-application-icons", &show_application_icons, NULL);
|
||||
if (show_application_icons)
|
||||
{
|
||||
#ifdef HAVE_WNCK
|
||||
cell_icon = gtk_cell_renderer_pixbuf_new ();
|
||||
GtkCellRenderer *cell_icon = gtk_cell_renderer_pixbuf_new ();
|
||||
gtk_tree_view_column_pack_start (GTK_TREE_VIEW_COLUMN (column), cell_icon, FALSE);
|
||||
gtk_tree_view_column_set_attributes (GTK_TREE_VIEW_COLUMN (column), cell_icon, "pixbuf", XTM_PTV_COLUMN_ICON, "cell-background", XTM_PTV_COLUMN_BACKGROUND, NULL);
|
||||
#endif
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_LIBX11
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/Xutil.h>
|
||||
#include <X11/Xatom.h>
|
||||
@@ -22,9 +23,10 @@
|
||||
#include <X11/Xmu/WinUtil.h>
|
||||
#include <X11/cursorfont.h>
|
||||
#include <X11/Xproto.h>
|
||||
#include <gdk/gdkx.h>
|
||||
#endif
|
||||
|
||||
#include <glib-object.h>
|
||||
#include <gdk/gdkx.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <gdk/gdkkeysyms.h>
|
||||
|
||||
@@ -91,6 +93,7 @@ filter_entry_icon_pressed_cb (GtkEntry *entry,
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef HAVE_LIBX11
|
||||
static Window
|
||||
Select_Window (Display *dpy, int screen)
|
||||
{
|
||||
@@ -181,6 +184,7 @@ xwininfo_clicked_cb (GtkButton *button __unused, gpointer user_data) {
|
||||
}
|
||||
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
filter_entry_keyrelease_handler(GtkEntry *entry,
|
||||
@@ -304,12 +308,13 @@ xtm_process_window_init (XtmProcessWindow *window)
|
||||
G_CALLBACK (show_settings_dialog), window);
|
||||
|
||||
button = GTK_WIDGET (gtk_builder_get_object (window->builder, "button-identify"));
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ())) {
|
||||
#ifdef HAVE_LIBX11
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
|
||||
g_signal_connect (G_OBJECT (button), "clicked",
|
||||
G_CALLBACK (xwininfo_clicked_cb), window);
|
||||
} else {
|
||||
else
|
||||
#endif
|
||||
gtk_widget_hide (button);
|
||||
}
|
||||
|
||||
window->filter_searchbar = GTK_WIDGET (gtk_builder_get_object (window->builder, "filter-searchbar"));
|
||||
{
|
||||
|
||||
@@ -14,7 +14,6 @@
|
||||
#include <config.h>
|
||||
#endif
|
||||
|
||||
#include <X11/Xlib.h>
|
||||
#include <glib-object.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
|
||||
@@ -13,6 +13,9 @@
|
||||
|
||||
#include <glib-object.h>
|
||||
#include <gtk/gtk.h>
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
#include <gdk/gdkx.h>
|
||||
#endif
|
||||
|
||||
#include <libxfce4ui/libxfce4ui.h>
|
||||
|
||||
@@ -179,8 +182,10 @@ xtm_settings_dialog_new (GtkBuilder *builder, GtkWidget *parent_window)
|
||||
dialog = GTK_WIDGET (gtk_builder_get_object (builder, "settings-dialog"));
|
||||
gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (parent_window));
|
||||
|
||||
#ifndef HAVE_WNCK
|
||||
gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object (builder, "button-show-application-icons")));
|
||||
#ifdef HAVE_WNCK
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
|
||||
gtk_widget_show (GTK_WIDGET (gtk_builder_get_object (builder, "button-show-application-icons")));
|
||||
#endif
|
||||
|
||||
// Interface
|
||||
@@ -191,10 +196,15 @@ xtm_settings_dialog_new (GtkBuilder *builder, GtkWidget *parent_window)
|
||||
builder_bind_toggle_button (builder, "button-process-tree", settings, "process-tree");
|
||||
builder_bind_toggle_button (builder, "button-show-legend", settings, "show-legend");
|
||||
builder_bind_combobox (builder, settings);
|
||||
|
||||
// Miscellaneous
|
||||
builder_bind_toggle_button (builder, "button-prompt-terminate-task", settings, "prompt-terminate-task");
|
||||
builder_bind_toggle_button (builder, "button-show-status-icon", settings, "show-status-icon");
|
||||
|
||||
gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object (builder, "button-show-status-icon")));
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
|
||||
gtk_widget_show (GTK_WIDGET (gtk_builder_get_object (builder, "button-show-status-icon")));
|
||||
#endif
|
||||
|
||||
// Columns
|
||||
builder_bind_toggle_button (builder, "pid", settings, "column-pid");
|
||||
|
||||
@@ -25,6 +25,9 @@
|
||||
#include <glib-object.h>
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
#include <gdk/gdkx.h>
|
||||
#endif
|
||||
|
||||
#include "settings.h"
|
||||
|
||||
@@ -155,8 +158,11 @@ void
|
||||
xtm_settings_bind_xfconf (XtmSettings *settings, XfconfChannel *channel)
|
||||
{
|
||||
/* general settings */
|
||||
xfconf_g_property_bind (channel, SETTING_SHOW_STATUS_ICON, G_TYPE_BOOLEAN,
|
||||
G_OBJECT (settings), "show-status-icon");
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
|
||||
xfconf_g_property_bind (channel, SETTING_SHOW_STATUS_ICON, G_TYPE_BOOLEAN,
|
||||
G_OBJECT (settings), "show-status-icon");
|
||||
#endif
|
||||
xfconf_g_property_bind (channel, SETTING_PROMPT_TERMINATE_TASK, G_TYPE_BOOLEAN,
|
||||
G_OBJECT (settings), "prompt-terminate-task");
|
||||
|
||||
|
||||
@@ -24,12 +24,9 @@
|
||||
#include <gtk/gtk.h>
|
||||
#include <gmodule.h>
|
||||
|
||||
#ifdef HAVE_WNCK
|
||||
#include <gdk/gdkx.h>
|
||||
#endif
|
||||
|
||||
#include "task-manager.h"
|
||||
#ifdef HAVE_WNCK
|
||||
#include <gdk/gdkx.h>
|
||||
#include "app-manager.h"
|
||||
#endif
|
||||
#include "process-tree-view.h" /* for the columns of the model */
|
||||
|
||||
Reference in New Issue
Block a user