summaryrefslogtreecommitdiff
path: root/plugins/filebrowser
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/filebrowser')
-rw-r--r--plugins/filebrowser/pluma-file-browser-view.c27
-rw-r--r--plugins/filebrowser/pluma-file-browser-widget.c42
-rw-r--r--plugins/filebrowser/pluma-file-browser-widget.h8
3 files changed, 74 insertions, 3 deletions
diff --git a/plugins/filebrowser/pluma-file-browser-view.c b/plugins/filebrowser/pluma-file-browser-view.c
index 6b52b0c9..ce45f91a 100644
--- a/plugins/filebrowser/pluma-file-browser-view.c
+++ b/plugins/filebrowser/pluma-file-browser-view.c
@@ -114,7 +114,11 @@ pluma_file_browser_view_finalize (GObject * object)
PlumaFileBrowserView *obj = PLUMA_FILE_BROWSER_VIEW(object);
if (obj->priv->hand_cursor)
- gdk_cursor_unref(obj->priv->hand_cursor);
+#if GTK_CHECK_VERSION (3, 0, 0)
+ g_object_unref (obj->priv->hand_cursor);
+#else
+ gdk_cursor_unref (obj->priv->hand_cursor)
+#endif
if (obj->priv->hover_path)
gtk_tree_path_free (obj->priv->hover_path);
@@ -125,7 +129,11 @@ pluma_file_browser_view_finalize (GObject * object)
obj->priv->expand_state = NULL;
}
+#if GTK_CHECK_VERSION (3, 0, 0)
+ g_object_unref (obj->priv->busy_cursor);
+#else
gdk_cursor_unref (obj->priv->busy_cursor);
+#endif
G_OBJECT_CLASS (pluma_file_browser_view_parent_class)->
finalize (object);
@@ -308,7 +316,12 @@ set_click_policy_property (PlumaFileBrowserView *obj,
if (click_policy == PLUMA_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE) {
if (obj->priv->hand_cursor == NULL)
+#if GTK_CHECK_VERSION (3, 16, 0)
+ display = gtk_widget_get_display (GTK_WIDGET (obj));
+ obj->priv->hand_cursor = gdk_cursor_new_for_display (display, GDK_HAND2);
+#else
obj->priv->hand_cursor = gdk_cursor_new(GDK_HAND2);
+#endif
} else if (click_policy == PLUMA_FILE_BROWSER_VIEW_CLICK_POLICY_DOUBLE) {
if (obj->priv->hover_path != NULL) {
if (gtk_tree_model_get_iter (GTK_TREE_MODEL (obj->priv->model),
@@ -331,7 +344,11 @@ set_click_policy_property (PlumaFileBrowserView *obj,
}
if (obj->priv->hand_cursor) {
+#if GTK_CHECK_VERSION (3, 0, 0)
+ g_object_unref (obj->priv->hand_cursor);
+#else
gdk_cursor_unref (obj->priv->hand_cursor);
+#endif
obj->priv->hand_cursor = NULL;
}
}
@@ -945,6 +962,9 @@ cell_data_cb (GtkTreeViewColumn * tree_column, GtkCellRenderer * cell,
static void
pluma_file_browser_view_init (PlumaFileBrowserView * obj)
{
+#if GTK_CHECK_VERSION (3, 16, 0)
+ GdkDisplay *display;
+#endif
obj->priv = PLUMA_FILE_BROWSER_VIEW_GET_PRIVATE (obj);
obj->priv->column = gtk_tree_view_column_new ();
@@ -979,7 +999,12 @@ pluma_file_browser_view_init (PlumaFileBrowserView * obj)
G_N_ELEMENTS (drag_source_targets),
GDK_ACTION_COPY);
+#if GTK_CHECK_VERSION (3, 16, 0)
+ display = gtk_widget_get_display (GTK_WIDGET (obj));
+ obj->priv->busy_cursor = gdk_cursor_new_for_display (display, GDK_WATCH);
+#else
obj->priv->busy_cursor = gdk_cursor_new (GDK_WATCH);
+#endif
}
static gboolean
diff --git a/plugins/filebrowser/pluma-file-browser-widget.c b/plugins/filebrowser/pluma-file-browser-widget.c
index f7ec52d4..7cef34cc 100644
--- a/plugins/filebrowser/pluma-file-browser-widget.c
+++ b/plugins/filebrowser/pluma-file-browser-widget.c
@@ -50,6 +50,10 @@
#define XML_UI_FILE "pluma-file-browser-widget-ui.xml"
#define LOCATION_DATA_KEY "pluma-file-browser-widget-location"
+#if GTK_CHECK_VERSION (3, 0, 0)
+#define gtk_vbox_new(X,Y) gtk_box_new(GTK_ORIENTATION_VERTICAL,Y)
+#endif
+
enum
{
BOOKMARKS_ID,
@@ -236,8 +240,13 @@ static void on_action_filter_binary (GtkAction * action,
static void on_action_bookmark_open (GtkAction * action,
PlumaFileBrowserWidget * obj);
+#if GTK_CHECK_VERSION (3, 0, 0)
+PLUMA_PLUGIN_DEFINE_TYPE (PlumaFileBrowserWidget, pluma_file_browser_widget,
+ GTK_TYPE_BOX)
+#else
PLUMA_PLUGIN_DEFINE_TYPE (PlumaFileBrowserWidget, pluma_file_browser_widget,
GTK_TYPE_VBOX)
+#endif
static void
free_name_icon (gpointer data)
@@ -359,8 +368,12 @@ pluma_file_browser_widget_finalize (GObject * object)
g_hash_table_destroy (obj->priv->bookmarks_hash);
cancel_async_operation (obj);
-
+
+#if GTK_CHECK_VERSION (3, 0, 0)
+ g_object_unref (obj->priv->busy_cursor);
+#else
gdk_cursor_unref (obj->priv->busy_cursor);
+#endif
G_OBJECT_CLASS (pluma_file_browser_widget_parent_class)->finalize (object);
}
@@ -1248,6 +1261,9 @@ create_filter (PlumaFileBrowserWidget * obj)
static void
pluma_file_browser_widget_init (PlumaFileBrowserWidget * obj)
{
+#if GTK_CHECK_VERSION (3, 16, 0)
+ GdkDisplay *display;
+#endif
obj->priv = PLUMA_FILE_BROWSER_WIDGET_GET_PRIVATE (obj);
obj->priv->bookmarks_hash = g_hash_table_new_full (g_file_hash,
@@ -1256,8 +1272,17 @@ pluma_file_browser_widget_init (PlumaFileBrowserWidget * obj)
free_name_icon);
gtk_box_set_spacing (GTK_BOX (obj), 3);
+#if GTK_CHECK_VERSION (3, 0, 0)
+ gtk_orientable_set_orientation (GTK_ORIENTABLE (obj),
+ GTK_ORIENTATION_VERTICAL);
+#endif
+#if GTK_CHECK_VERSION (3, 16, 0)
+ display = gtk_widget_get_display (GTK_WIDGET (obj));
+ obj->priv->busy_cursor = gdk_cursor_new_for_display (display, GDK_WATCH);
+#else
obj->priv->busy_cursor = gdk_cursor_new (GDK_WATCH);
+#endif
}
/* Private */
@@ -2088,7 +2113,6 @@ async_free (AsyncData *async)
static void
set_busy (PlumaFileBrowserWidget *obj, gboolean busy)
{
- GdkCursor *cursor;
GdkWindow *window;
window = gtk_widget_get_window (GTK_WIDGET (obj->priv->treeview));
@@ -2098,9 +2122,23 @@ set_busy (PlumaFileBrowserWidget *obj, gboolean busy)
if (busy)
{
+#if GTK_CHECK_VERSION (3, 16, 0)
+ GdkDisplay *display;
+ GdkCursor *cursor;
+
+ display = gtk_widget_get_display (GTK_WIDGET (obj));
+ cursor = gdk_cursor_new_for_display (display, GDK_WATCH);
+#else
+ GdkCursor *cursor;
+
cursor = gdk_cursor_new (GDK_WATCH);
+#endif
gdk_window_set_cursor (window, cursor);
+#if GTK_CHECK_VERSION (3, 0, 0)
+ g_object_unref (obj->priv->busy_cursor);
+#else
gdk_cursor_unref (cursor);
+#endif
}
else
{
diff --git a/plugins/filebrowser/pluma-file-browser-widget.h b/plugins/filebrowser/pluma-file-browser-widget.h
index 79e95c62..d7be9e4d 100644
--- a/plugins/filebrowser/pluma-file-browser-widget.h
+++ b/plugins/filebrowser/pluma-file-browser-widget.h
@@ -48,14 +48,22 @@ gboolean (*PlumaFileBrowserWidgetFilterFunc) (PlumaFileBrowserWidget * obj,
struct _PlumaFileBrowserWidget
{
+#if GTK_CHECK_VERSION (3, 0, 0)
+ GtkBox parent;
+#else
GtkVBox parent;
+#endif
PlumaFileBrowserWidgetPrivate *priv;
};
struct _PlumaFileBrowserWidgetClass
{
+#if GTK_CHECK_VERSION (3, 0, 0)
+ GtkBoxClass parent_class;
+#else
GtkVBoxClass parent_class;
+#endif
/* Signals */
void (*uri_activated) (PlumaFileBrowserWidget * widget,