Only the main window and its childs should be native widgets
This commit is contained in:
@@ -176,7 +176,6 @@ main(int argc, char *argv[])
|
||||
|
||||
#ifdef Q_OS_WINDOWS
|
||||
Q_INIT_RESOURCE(darkstyle);
|
||||
QApplication::setAttribute(Qt::AA_NativeWindows);
|
||||
|
||||
if (!windows_is_light_theme()) {
|
||||
QFile f(":qdarkstyle/dark/darkstyle.qss");
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
*/
|
||||
#include "qt_styleoverride.hpp"
|
||||
|
||||
#include "qt_mainwindow.hpp"
|
||||
|
||||
#include <QComboBox>
|
||||
#include <QAbstractItemView>
|
||||
|
||||
@@ -26,6 +28,8 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
extern MainWindow* main_window;
|
||||
|
||||
int
|
||||
StyleOverride::styleHint(
|
||||
StyleHint hint,
|
||||
@@ -59,6 +63,9 @@ StyleOverride::polish(QWidget *widget)
|
||||
extern bool windows_is_light_theme();
|
||||
BOOL DarkMode = !windows_is_light_theme();
|
||||
DwmSetWindowAttribute((HWND)widget->winId(), DWMWA_USE_IMMERSIVE_DARK_MODE, (LPCVOID)&DarkMode, sizeof(DarkMode));
|
||||
if (main_window->isAncestorOf(widget)) {
|
||||
widget->setAttribute(Qt::WA_NativeWindow);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user