Author Topic: [Fixed] Some filter windows won't display under specific desktop environments  (Read 767 times)

eumagga0x2a

  • Hero Member
  • *****
  • Posts: 1462
The analysis and thus the "fix" was wrong, I'll have to revert it. Before I break more stuff, could you please test if

Code: [Select]
void qtRegisterDialog(QWidget *dialog)
{
    if (widgetStack.count())
        dialog->setParent(widgetStack.top(), Qt::Dialog);
    dialog->hide();
    widgetStack.push(dialog);
}

in avidemux/qt4/ADM_UIs/src/toolkit.cpp works for you?

If the dialog is already visible when exec() (e.g. in DIA_getCropParams()) is called, we get a complete mess with modality and keyboard focus. We must ensure that it is hidden and not interfere with exec().

gilbsgilbs

  • Newbie
  • *
  • Posts: 11
eumagga0x2a, the fix doesn't work unfortunately. I can reproduce the bug from this post just like before 62831e.

eumagga0x2a

  • Hero Member
  • *****
  • Posts: 1462
Could you please just test if adding hide() at the end of the constructor instead of these patches works?

gilbsgilbs

  • Newbie
  • *
  • Posts: 11
Could you please just test if adding hide() at the end of the constructor instead of these patches works?
Nope, didn't work. I have to comment out the "show()" from the constructor to make it work (which is not an option).

eumagga0x2a

  • Hero Member
  • *****
  • Posts: 1462
Thank you, I've left the qtRegisterDialog code as is for now and have tried to fix window modality for each affected filter and the preview individually (works on macOS + Linux/gnome-shell + Windows). Could you please test whether these changes haven't regressed the dialog visibility with i3wm?

gilbsgilbs

  • Newbie
  • *
  • Posts: 11
Thank you, I've left the qtRegisterDialog code as is for now and have tried to fix window modality for each affected filter and the preview individually (works on macOS + Linux/gnome-shell + Windows). Could you please test whether these changes haven't regressed the dialog visibility with i3wm?
That works flawlessly. Tested on 21d0ab. Thank you :) .