On 12/22/17 22:00, Caspar Schutijser wrote:

> Depending on the value of XDG_CURRENT_DESKTOP, a Qt 5 application will
> use a different toolkit (e.g. GTK3) to draw file dialogs. Possibly, the
> problem is somewhere in the GTK3 code of Qt 5.
> 
> Peter, what is the value of XDG_CURRENT_DESKTOP on your machine? And
> can you confirm that the program functions correctly when you start the
> program like this?

I have

$ echo $XDG_CURRENT_DESKTOP
XFCE

>   $ XDG_CURRENT_DESKTOP= calibre

The File->Open dialog box still didn't display properly, unfortunately.

Here's with the messages:

[Sat Dec 23 16:05:43] peter@greyhame:~$ XDG_CURRENT_DESKTOP= calibre
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-peter'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-peter'
Failed to load libmtp, MTP device detection disabled
No module named libmtp
Exception in thread Thread-5:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/threading.py", line 801, in
__bootstrap_inner
    self.run()
  File "/usr/local/lib/calibre/calibre/gui2/device.py", line 409, in run
    self.detect_device()
  File "/usr/local/lib/calibre/calibre/gui2/device.py", line 267, in
detect_device
    self.scanner.scan()
  File "/usr/local/lib/calibre/calibre/devices/scanner.py", line 264, in
scan
    self.devices = self.scanner()
  File "/usr/local/lib/calibre/calibre/devices/scanner.py", line 69, in
__call__
    self.libusb_err)
ValueError: DeviceScanner needs libusb to work. Error: No module named
libusb


(python2.7:36597): Gtk-CRITICAL **: Error building template class
'GtkDialog' for an instance of type 'GtkDialog': .:10:1 Invalid object
type 'GtkHeaderBar'

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_get_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_set_border_width:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_set_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_box_get_spacing_set: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_box_set_spacing: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_box_set_spacing_set: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_button_box_get_layout: assertion
'GTK_IS_BUTTON_BOX (widget)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_box_set_spacing: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_get_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_set_border_width:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_set_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: Error building template class
'GtkFileChooserDialog' for an instance of type 'GtkFileChooserDialog':
Unknown internal child: vbox

(python2.7:36597): Gtk-CRITICAL **: _gtk_file_chooser_set_delegate:
assertion 'GTK_IS_FILE_CHOOSER (delegate)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_widget_set_visible: assertion
'GTK_IS_WIDGET (widget)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_widget_set_no_show_all:
assertion 'GTK_IS_WIDGET (widget)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_setv: assertion
'G_IS_OBJECT (object)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_get_property:
assertion 'G_IS_OBJECT (object)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_add: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_add: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **:
gtk_file_chooser_set_current_folder_file: assertion 'GTK_IS_FILE_CHOOSER
(chooser)' failed

(python2.7:36597): Gtk-CRITICAL **:
gtk_file_chooser_set_current_folder_file: assertion 'GTK_IS_FILE_CHOOSER
(chooser)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_get_property:
assertion 'G_IS_OBJECT (object)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_get_files:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_setv: assertion
'G_IS_OBJECT (object)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_setv: assertion
'G_IS_OBJECT (object)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_get_property:
assertion 'G_IS_OBJECT (object)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_setv: assertion
'G_IS_OBJECT (object)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_setv: assertion
'G_IS_OBJECT (object)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_setv: assertion
'G_IS_OBJECT (object)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_file_chooser_add_filter:
assertion 'GTK_IS_FILE_CHOOSER (chooser)' failed

(python2.7:36597): Gtk-CRITICAL **:
gtk_file_chooser_set_current_folder_file: assertion 'GTK_IS_FILE_CHOOSER
(chooser)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_get_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_set_border_width:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_set_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_box_get_spacing_set: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_box_set_spacing: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_box_set_spacing_set: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_button_box_get_layout: assertion
'GTK_IS_BUTTON_BOX (widget)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_box_set_spacing: assertion
'GTK_IS_BOX (box)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_get_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_set_border_width:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: _gtk_container_set_border_width_set:
assertion 'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): GLib-GObject-CRITICAL **: g_object_get_property:
assertion 'G_IS_OBJECT (object)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

(python2.7:36597): Gtk-CRITICAL **:
_gtk_file_chooser_embed_initial_focus: assertion
'GTK_IS_FILE_CHOOSER_EMBED (chooser_embed)' failed
Gtk-Message: GtkDialog mapped without a transient parent. This is
discouraged.

(python2.7:36597): Gtk-CRITICAL **: gtk_container_foreach: assertion
'GTK_IS_CONTAINER (container)' failed

Starting with XDG_CURRENT_DESKTOP=GNOME calibre, did not produce a
usable dialog either, but XDG_CURRENT_DESKTOP=KDE calibre did produce a
working File->Open dialog, likely because I switched from KDE to XFCE a
while back without uninstalling anything.

Does this mean that we don't quite have the infrastructure in place for
this package XFCE?

At least now I get to add my recent acquisitions, which is good.

-- 
Peter N. M. Hansteen, member of the first RFC 1149 implementation team
http://bsdly.blogspot.com/ http://www.bsdly.net/ http://www.nuug.no/
"Remember to set the evil bit on all malicious network traffic"
delilah spamd[29949]: 85.152.224.147: disconnected after 42673 seconds.

Reply via email to