ttdm/Symphonium

File select dialog is black

Closed this issue · 4 comments

Hello, I use debian stretch 32-bit.
Symphonium compiles ok with that old disto, but I can't add files or folder to library because file selection dialog shows black rectangle instead.
No errors in terminal are produced.

ttdm commented

Hi;

Can you confirm so that i'm sure that I understand it correctly :

you can select in the menu 'File->Add file to the library' but then you have a black rectangle instead of the standard Qt file selection panel.

Anyway i will install a VM and i will look into it by tomorrow evening ;)

Yes you are right.
Additional details: I use mate DE without composition.
Also if I set compton as a compositor then dialog shows the parent window like a glass.

Update: terminal shows -
GtkDialog mapped without a transient parent.

ttdm commented

I tried for a few hours but i can't replicate it.

I used a live image of a debian 9.13.0 32bit with mate DE and after installing qt5-default, qtcreator, qtmultimedia5-dev, cmake and libasound2-dev, I was able to compile and to see the file dialog without a problem.

I must say that I use a standard Qt function in order to select a file : "QFileDialog::getOpenFileName"; this call is on line 262 of symphonium.cpp. The warning is caused by it and that it is an expected Qt behaviour : https://forum.qt.io/topic/85997/gtk-warning-for-native-qfiledialog-under-linux.

Since i can't replicate i can only give a few ideas :

  • first (may sound stupid but i have to ask since it changes a few things in the Qt implementation), did you try using the "import a directory" option instead of the file one ?
  • second, you can try to add QFileDialog::DontUseNativeDialog; as an option of "QFileDialog::getExistingDirectory", l283 of symphonium.cpp then compile and try the option "add a directory" (this option won't do anything on windows that show files such as the one created by getOpenFileName which is why I'm switching to the getDirectory option)

Hopefully those solutions can make it work. If not, non repeatability is probably due to your "without composition" conflicting with what Qt wants to do so I can't do much right now.