With the non-native dialog (or native dialogs on other platforms like Windows or MacOS), a QColorDialog (or other QDialog) that is set to be modal stays on top.
The GTK3 color dialog that is used for QColorDialog does not. If setWindowModality(Qt::ApplicationModal); is used, then modality works in the sense that the entire application is blocked from receiving input until the window is closed, but the modal window does not stay in front of its parent, much less the entire application's windows, unlike with other QColorDialog widget styles. This results in users being confused because they can't find the dialog that is blocking their application; it looks like the entire application has frozen.
With the non-native dialog (or native dialogs on other platforms like Windows or MacOS), a QColorDialog (or other QDialog) that is set to be modal stays on top.
The GTK3 color dialog that is used for QColorDialog does not. If
setWindowModality(Qt::ApplicationModal);
is used, then modality works in the sense that the entire application is blocked from receiving input until the window is closed, but the modal window does not stay in front of its parent, much less the entire application's windows, unlike with other QColorDialog widget styles. This results in users being confused because they can't find the dialog that is blocking their application; it looks like the entire application has frozen.