diff --git a/0002-Fix-gdk_window_get_device_position-device-argument.patch b/0002-Fix-gdk_window_get_device_position-device-argument.patch new file mode 100644 index 0000000..831d3dc --- /dev/null +++ b/0002-Fix-gdk_window_get_device_position-device-argument.patch @@ -0,0 +1,60 @@ +From 3355a737e0a4dcb87bda28868c30b70b1cd2eb34 Mon Sep 17 00:00:00 2001 +From: Mamoru TASAKA +Date: Sat, 23 May 2015 15:51:55 +0900 +Subject: [PATCH] Fix gdk_window_get_device_position device argument + +http://sourceforge.net/p/pcmanfm/bugs/959/ +--- + src/gtk-compat.h | 2 ++ + src/gtk/fm-dnd-auto-scroll.c | 5 +++-- + src/gtk/fm-folder-view.c | 5 +++-- + 3 files changed, 8 insertions(+), 4 deletions(-) + +diff --git a/src/gtk-compat.h b/src/gtk-compat.h +index 3f37fab..e460f74 100644 +--- a/src/gtk-compat.h ++++ b/src/gtk-compat.h +@@ -33,6 +33,8 @@ G_BEGIN_DECLS + gdk_window_get_pointer(win,xptr,yptr,mptr) + #else + # define gdk_cursor_unref(obj) g_object_unref(obj) ++# define GDK_GET_DEVICE_FROM_WINDOW(window) \ ++ gdk_device_manager_get_client_pointer (gdk_display_get_device_manager (gdk_window_get_display(window))) + #endif + + #if !GTK_CHECK_VERSION(2, 21, 0) +diff --git a/src/gtk/fm-dnd-auto-scroll.c b/src/gtk/fm-dnd-auto-scroll.c +index 72d866a..2861355 100644 +--- a/src/gtk/fm-dnd-auto-scroll.c ++++ b/src/gtk/fm-dnd-auto-scroll.c +@@ -55,8 +55,9 @@ static gboolean on_auto_scroll(gpointer user_data) + if(g_source_is_destroyed(g_main_current_source())) + return FALSE; + +- gdk_window_get_device_position (gtk_widget_get_window(widget), +- gtk_get_current_event_device(), ++ GdkWindow *window = gtk_widget_get_window(widget); ++ gdk_window_get_device_position (window, ++ GDK_GET_DEVICE_FROM_WINDOW(window), + &x, &y, NULL); + gtk_widget_get_allocation(widget, &allocation); + +diff --git a/src/gtk/fm-folder-view.c b/src/gtk/fm-folder-view.c +index 21e7dff..8ee020e 100644 +--- a/src/gtk/fm-folder-view.c ++++ b/src/gtk/fm-folder-view.c +@@ -1106,8 +1106,9 @@ static void popup_position_func(GtkMenu *menu, gint *x, gint *y, + gtk_widget_realize(GTK_WIDGET(menu)); + /* get all the relative coordinates */ + gtk_widget_get_allocation(widget, &a); +- gdk_window_get_device_position(gtk_widget_get_window(widget), +- gtk_get_current_event_device(), &x2, &y2, NULL); ++ GdkWindow *window = gtk_widget_get_window(widget); ++ gdk_window_get_device_position(window, ++ GDK_GET_DEVICE_FROM_WINDOW(window), &x2, &y2, NULL); + gtk_widget_get_allocation(GTK_WIDGET(menu), &ma); + parent_window = gtk_widget_get_parent_window(widget); + screen = gtk_widget_get_screen(widget); +-- +2.4.1 + diff --git a/0003-exec-file.glade-remove-has_separator-property-from-G.patch b/0003-exec-file.glade-remove-has_separator-property-from-G.patch new file mode 100644 index 0000000..1cc8157 --- /dev/null +++ b/0003-exec-file.glade-remove-has_separator-property-from-G.patch @@ -0,0 +1,26 @@ +From cc726fc6cf1477f23d7d7352a757a0cb47cd5882 Mon Sep 17 00:00:00 2001 +From: Mamoru TASAKA +Date: Sat, 23 May 2015 16:41:53 +0900 +Subject: [PATCH] exec-file.glade: remove has_separator property from GtkDialog + +has_separator property is already deprecated from GTK 2.22 +and GTK 3 no longer supports this. +--- + data/ui/exec-file.glade | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/data/ui/exec-file.glade b/data/ui/exec-file.glade +index 042f1f1..7c51df6 100644 +--- a/data/ui/exec-file.glade ++++ b/data/ui/exec-file.glade +@@ -7,7 +7,6 @@ + Execute File + center + normal +- False + + + True +-- +2.4.1 + diff --git a/libfm.spec b/libfm.spec index 4190832..0626f80 100644 --- a/libfm.spec +++ b/libfm.spec @@ -8,7 +8,7 @@ %global prerpmver %(echo "%{?prever}" | sed -e 's|-||g') %global usegit 1 -%global mainrel 5 +%global mainrel 6 %global githash 577806e29d2ec27ce5fee9dc816566fb4e23b155 %global shorthash %(TMP=%githash ; echo ${TMP:0:10}) @@ -39,7 +39,12 @@ Source0: http://downloads.sourceforge.net/pcmanfm/%{name}-%{mainver}%{?pr # Fedora specific patches # Firefox uses firefox.desktop for desktop name, drop #Patch0: libfm-0.1.9-pref-apps.patch -Patch100: 0001-Make-file-search-dialog-work-with-GTK3.patch +# http://sourceforge.net/p/pcmanfm/bugs/950/ +Patch101: 0001-Make-file-search-dialog-work-with-GTK3.patch +# http://sourceforge.net/p/pcmanfm/bugs/959/ +Patch102: 0002-Fix-gdk_window_get_device_position-device-argument.patch +# http://sourceforge.net/p/pcmanfm/bugs/961/ +Patch103: 0003-exec-file.glade-remove-has_separator-property-from-G.patch BuildRequires: libexif-devel BuildRequires: gtk3-devel @@ -139,7 +144,9 @@ This package containg development documentation files for %{name}. #%%setup -q -n %{name}-%{version}%{?prever} #%%patch0 -p1 -b .orig %setup -q -n %{name}-%{githash} -%patch100 -p1 +%patch101 -p1 +%patch102 -p1 +%patch103 -p1 %if 0%{?usegit} >= 1 sh autogen.sh @@ -284,6 +291,9 @@ update-mime-database %{?fedora:-n} %{_datadir}/mime &> /dev/null || : %endif %changelog +* Sat May 23 2015 Mamoru TASAKA - 1.2.3-6.D20150521git577806e29d +- Fix two other GTK3 related bugs + * Sat May 23 2015 Mamoru TASAKA - 1.2.3-5.D20150521git577806e29d - Make search dialog work