Detailed List View issue: - certain folders OR files can be selected, whereupon other folders OR files can not be selected. - to select other folders OR files, another instance of thunar must be used. - etc. $ ./thunar/.libs/thunar (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:14159): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed $ exo-open --version | head -1 exo-open 0.11.1git-20160817gitf98abb0 $ thunar --version | head -1 Thunar 1.6.10git-20160629gitfebb417 (Xfce 4.12)
also refer to bug 12698 for more detailed triage
note it is my experience that the last item is not released after left button double click/single click selection (as per preferences) .. so something is not being cleared once the selection is acted on .. switching to any other views resets the main window .. (preious selection is highlighted in the refreshed window but you can now unselect it) .. also using only right click actions does not trigger the issue.. until a left double click/single click selection is done
the behaviour of this bug changes with gtk version .. all related to exo_tree_view.c changes and gtk+ changes notes in bug #12698 are based on gtk+-3.20.6 where selections did not lock until opened with left double click notes in this new bug relate to gtk+-3.20.8 .. seems inherited gtk_tree_view behaviour has changed a bit .. now at the first left click the selection locks and will not release .. any other action keeps opening the selected file and the original selection remains highlighted .. even double clicking other files opens the highlighted file only .. selection frozen .. switching to another view and back again releases the selection .. so you can pick another one .. flip/flip .. seems to do the unlock .. so any clues?
(In reply to Derk te Bokkel from comment #3) > the behaviour of this bug changes with gtk version .. all related to > exo_tree_view.c changes and gtk+ changes > > notes in bug #12698 are based on gtk+-3.20.6 where selections did not lock > until opened with left double click > > notes in this new bug relate to gtk+-3.20.8 .. seems inherited gtk_tree_view > behaviour has changed a bit .. [...] "The micro version number is incremented when code changes are made without modifying API." API stability https://developer.gnome.org/programming-guidelines/stable/api-stability.html.en Yeah I know this is just a theory. $ rpm -q gtk3 gtk3-3.20.9-1.fc24.x86_64 https://git.gnome.org/browse/gtk+/commit/?h=3.20.9
directories also frozen .. first click selection is frozen ... any double click anywhere in the detailed list view window will open the directory this behaviour is also different from that in bug #12698, there you could single click files or directories freely .. i.e. with gtk+-3.20.6 .. I'm using Gentoo so gtk+-3.20.8 is the latest available .. so I can not test gtk+-3.20.9 at the moment .. I'll have to create an ebuild for it .. perhaps later ..
compiled thunar and exo from git sources with debug flag set starting in a terminal: thunar using detail list view .. shows following on selections or double clicks: (thunar:19924): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed (thunar:19924): Gtk-CRITICAL **: IA__gtk_tree_selection_set_select_function: assertion 'func != NULL' failed doing just exo with debug shows the same error .. just a different number .. sorry did not save it .. can rerun if needed ..
Is this issue occurs with the GTK+ 3 port? $ git clone https://github.com/rgcjonas/thunar-gtk3.git $ cd thunar-gtk3/ $ sed -i 's/gdk_set/\/\/gdk_set/' thunar/thunar-session-client.c ...
no current git.xfce.org thunar .. I'll try the port
unfortunately the thunar-gtk3 build errors out libtool: link: x86_64-pc-linux-gnu-gcc -pthread -I/usr/include/exo-2 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gudev-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/xfce4/libxfce4ui-2 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/xfce4/xfconf-0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -O2 -pipe -DXFCE_DISABLE_DEPRECATED -Wall -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wold-style-definition -Wdeclaration-after-statement -Wmissing-declarations -Wmissing-noreturn -Wpointer-arith -Wcast-align -Wformat -Wformat-security -Wformat-y2k -Winit-self -Wmissing-include-dirs -Wundef -Wnested-externs -fstack-protector -Wredundant-decls -g -Wshadow -Wl,-O1 -Wl,-O1 -o .libs/thunar thunar-thunar-marshal.o thunar-thunar-thumbnail-frame.o thunar-thunar-dbus-service-infos.o thunar-thunar-thumbnailer-proxy.o thunar-thunar-thumbnail-cache-proxy.o thunar-main.o thunar-thunar-abstract-dialog.o thunar-thunar-abstract-icon-view.o thunar-thunar-application.o thunar-thunar-browser.o thunar-thunar-chooser-button.o thunar-thunar-chooser-dialog.o thunar-thunar-chooser-model.o thunar-thunar-clipboard-manager.o thunar-thunar-column-editor.o thunar-thunar-column-model.o thunar-thunar-compact-view.o thunar-thunar-component.o thunar-thunar-create-dialog.o thunar-thunar-dbus-service.o thunar-thunar-deep-count-job.o thunar-thunar-details-view.o thunar-thunar-dialogs.o thunar-thunar-device.o thunar-thunar-device-monitor.o thunar-thunar-dnd.o thunar-thunar-emblem-chooser.o thunar-thunar-enum-types.o thunar-thunar-exec.o thunar-thunar-file.o thunar-thunar-file-monitor.o thunar-thunar-folder.o thunar-thunar-gdk-extensions.o thunar-thunar-gio-extensions.o thunar-thunar-gobject-extensions.o thunar-thunar-gtk-extensions.o thunar-thunar-history-action.o thunar-thunar-history.o thunar-thunar-ice.o thunar-thunar-icon-factory.o thunar-thunar-icon-renderer.o thunar-thunar-icon-view.o thunar-thunar-image.o thunar-thunar-io-jobs.o thunar-thunar-io-jobs-util.o thunar-thunar-io-scan-directory.o thunar-thunar-job.o thunar-thunar-launcher.o thunar-thunar-list-model.o thunar-thunar-location-bar.o thunar-thunar-location-button.o thunar-thunar-location-buttons.o thunar-thunar-location-entry.o thunar-thunar-misc-jobs.o thunar-thunar-notify.o thunar-thunar-navigator.o thunar-thunar-pango-extensions.o thunar-thunar-path-entry.o thunar-thunar-permissions-chooser.o thunar-thunar-preferences-dialog.o thunar-thunar-preferences.o thunar-thunar-progress-dialog.o thunar-thunar-progress-view.o thunar-thunar-properties-dialog.o thunar-thunar-renamer-dialog.o thunar-thunar-renamer-model.o thunar-thunar-renamer-pair.o thunar-thunar-renamer-progress.o thunar-thunar-sendto-model.o thunar-thunar-session-client.o thunar-thunar-shortcuts-icon-renderer.o thunar-thunar-shortcuts-pane.o thunar-thunar-side-pane.o thunar-thunar-simple-job.o thunar-thunar-size-label.o thunar-thunar-standard-view.o thunar-thunar-statusbar.o thunar-thunar-stock.o thunar-thunar-templates-action.o thunar-thunar-thumbnail-cache.o thunar-thunar-thumbnailer.o thunar-thunar-transfer-job.o thunar-thunar-trash-action.o thunar-thunar-tree-model.o thunar-thunar-tree-pane.o thunar-thunar-tree-view.o thunar-thunar-user.o thunar-thunar-util.o thunar-thunar-view.o thunar-thunar-window.o -pthread -Wl,--as-needed ../thunarx/.libs/libthunarx-2.so -lgmodule-2.0 -lexo-2 -lgthread-2.0 -lgudev-1.0 -lnotify -lSM -lICE -lX11 -lxfce4ui-2 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lxfce4util -lxfconf-0 -ldbus-glib-1 -ldbus-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -pthread thunar-thunar-session-client.o: In function `thunar_session_client_connect': /var/tmp/portage/xfce-base/thunar-9999/work/thunar-gtk3/thunar/thunar-session-client.c:173: undefined reference to `gdk_set_sm_client_id' collect2: error: ld returned 1 exit status make[3]: *** [Makefile:883: thunar] Error 1 make[3]: Leaving directory '/var/tmp/portage/xfce-base/thunar-9999/work/thunar-gtk3/thunar' make[2]: *** [Makefile:798: all] Error 2 make[2]: Leaving directory '/var/tmp/portage/xfce-base/thunar-9999/work/thunar-gtk3/thunar' make[1]: *** [Makefile:753: all-recursive] Error 1 make[1]: Leaving directory '/var/tmp/portage/xfce-base/thunar-9999/work/thunar-gtk3' make: *** [Makefile:566: all] Error 2
Here are Test Fedora builds: http://goo.gl/Gm4ffO thunar-gtk3/ exo*.fc24.x86_64.rpm Thunar*.fc24.x86_64.rpm Thunar-debuginfo*.fc24.x86_64.rpm Update via rpm: # rpm -Uvh *.fc24.x86_64.rpm Here is Test compilation can be tested with: http://goo.gl/Gm4ffO iso/
I'd rather test fixed source code .. have you got the fedora "fixed" source code reference somewhere ?? I can try to build from that .. :)
(In reply to Derk te Bokkel from comment #11) > I'd rather test fixed source code .. have you got the fedora "fixed" source > code reference somewhere ?? I can try to build from that .. :) You can reach the source code via: $ rpm2cpio Thunar*.src.rpm | cpio -i which is essentially the same as $ git clone https://github.com/rgcjonas/thunar-gtk3.git only in the form of tarrballed snapshot i.e. thunar-gtk3-master.tar.gz The only relevant fix is the sed oneliner mentioned in https://bugzilla.xfce.org/show_bug.cgi?id=12772#c7 Beside, the source code is never pre-patched, but it is eventually patched just before compiling, follow the Thunar.spec.
oops .. I missed that sed command .. thank you for pointing that out .. it now compiles fine .. :) now to test .. ok now it works without .. apparent problems in the details view .. will test further later
got this moving files between directories .. re: bug# 12260 .. still happens .. but thunar specific? Started thunar from xfce4-terminal (thunar:26727): GLib-GIO-CRITICAL **: g_dbus_proxy_call_finish_internal: assertion 'error == NULL || *error == NULL' failed Segmentation fault (core dumped) will copy bug# 12260
bug # 12320 is drag and drop issue .. files move also .. does any body do bug crossover issues as this is similar to 12260 cut and paste crash, 12264 file rename issues crashes .. will try patch from there ..
Thunar GTK+ 3 port is built on top of the commit https://github.com/rgcjonas/thunar-gtk3/commit/e883c1f which correspond to the mainline commit https://git.xfce.org/xfce/thunar/commit/?id=e883c1f Date: Wed, 29 Jul 2015 00:30:15 +0200 the source code that is over a year old. To not waste time on this, because the old code is not the same as the old wine, let's extract the commits that make up the GTK+ 3 port, and apply them to the git master $ git clone https://github.com/rgcjonas/thunar-gtk3.git $ cd thunar-gtk3/ $ git format-patch e883c1f14bb33d888ff7cbbccc89034b70e334b4 0001-Replace-gdk_spawn_on_screen-with-internal-thunar_gdk.patch 0002-Remove-usage-of-GdkDrawable.patch 0003-s-gtk_tree_path_new_root-gtk_tree_path_new_first.patch 0004-TMP-fix-thunar_gdk_spawn_on_screen.patch 0005-Remove-homogeneous-tabs-from-notebook.patch 0006-s-gtk_widget_get_action-gtk_activatable_get_related_.patch 0007-Make-use-of-GtkComboBoxText.patch 0008-s-GTK_WIDGET_REALIZED-gtk_widget_get_realized.patch 0009-Remove-usage-of-deprecated-GDK_DISPLAY-and-gdk_displ.patch 0010-Remove-usage-of-deprecated-gtk_dialog_set_has_separa.patch 0011-Make-it-build-with-GSEAL.patch 0012-Make-Thunar-core-compile-and-not-crash-with-Gtk3.patch 0013-Sort-of-fix-mouse-gestures.patch 0014-Replace-our-own-shortcuts-pane-with-GtkPlacesSidebar.patch 0015-Get-rid-of-GTK_STOCK_.patch 0016-uca-UI-modernization.patch 0017-thunar-location-buttons-Modernize.patch 0018-thunar-location-bar-Fixup-modernization.patch 0019-Rework-how-location-bar-selection-works.patch 0020-thunar-uca-Fixup-dist-after-modernization.patch 0021-loaction-bar-modernization-Fixup-check-dist-distchec.patch 0022-thunar-application-Use-GtkApplication.patch 0023-Replace-dbus-glib-with-GDBus.patch $ cd ../ $ git clone git://git.xfce.org/xfce/thunar $ cd thunar/ $ git am ../thunar-gtk3/*.patch $ sed -i 's/gdk_set/\/\/gdk_set/' thunar/thunar-session-client.c $ ./autogen.sh --enable-maintainer-mode && make -j3 $ LD_PRELOAD=./thunarx/.libs/libthunarx-2.so.0 ./thunar/.libs/thunar If necessary, apply various patches lying around, test ... Funnel-ferry butterbar, Funnel-ferry butterbar
is this " new git clone available anywhere " ? save others some effort to duplicate.. :)
Can be available locally, if you follow the above mentioned instructions, and then publicly available, if you upload it to the public mirror.
Ref. - mainline mirror on GitHub https://github.com/xfce-mirror/thunar May also be useful - GTK+ 3 based file managers - Nautilus - the file manager for the GNOME desktop https://github.com/GNOME/nautilus - Caja - the file manager for the MATE desktop, fork of Nautilus https://github.com/mate-desktop/caja
https://bugzilla.xfce.org/show_bug.cgi?id=2316#c13 "I've done the implementation and it's working so far… unfortunately Thunar enhance is frozen until gtk3 port is done. I'm trying to do it right now and hopefully port my patch in gtk3 right after it. Probably available in a couple of weeks (at least for review). ..." Cyrille Pontvieux https://bugzilla.xfce.org/show_bug.cgi?id=12123#c5 "... This patch have not been accepted upstream because Thunar development is frozen until gtk3 port is done, which I'm currently doing (still facing two bugs, one crash and one bad ui rendering). But if you don't want to wait, just grab the code from my repo." Cyrille Pontvieux
Enchanté
thunar as per comment 16 with or without .. patch-6530 - bug 12264 applied LD_PRELOAD=./thunarx/.libs/libthunarx-2.so.0 ./thunar/.libs/thunar move file/directory to different directory (thunar:15317): GLib-GIO-CRITICAL **: g_dbus_proxy_call_finish_internal: assertion 'error == NULL || *error == NULL' failed Segmentation fault (core dumped) :( other patches 6778 or 6779 do not apply properly .. need some work tried 6613 patch also applies fine but no change .. wondering if the g_dbus code is to blame now? as quite often is is after the file is finished moving that this occurs .. but I did experience one file with content loss on a straight rename .. fortunately it was "backed up" .. but crashes might be happening on the folder refresh ..
note crashes now include icon views as well .. so it outside the detailed list code now too!
As Cyrille stated, until his GTK+ 3 port lands on http://git.enialis.net/gitweb/?p=thunar.git ... À bientôt ;)
I get the same CRITICAL messages using the current master (10770a8): git clone git://git.xfce.org/xfce/thunar && cd thunar ./autogen.sh make thunar/thunar However if the pass --prefix=/usr to autogen.sh (or configure) the problem doesn't occur.
Ahh, by the way, some folks and I have picked up where Jonas stopped and we are working the Thunar port to GTK-3 here: https://github.com/andreldm/thunar There were some guys starting separated efforts, so I decided to attempt this unification. Anyone can contribute reporting bugs and opening pull requests (much appreciated). I plan is to reach a minimal working Thunar, without obvious regressions (there are some) before pushing to git.xfce.org.
The current git master is already ported to gtk3, if you find any bugs/regressions, please file bug reports for each of them.