summaryrefslogtreecommitdiff
path: root/plugins/filebrowser/pluma-file-browser-widget.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/filebrowser/pluma-file-browser-widget.c')
-rw-r--r--plugins/filebrowser/pluma-file-browser-widget.c42
1 files changed, 40 insertions, 2 deletions
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
{