qt: avoid setting WA_DontCreateNativeAncestors on all platforms

master
Liam 2022-12-17 10:19:18 +07:00
parent bbb202ceed
commit 45672d43e3
1 changed files with 5 additions and 1 deletions

@ -44,6 +44,8 @@
#include "yuzu/bootmanager.h" #include "yuzu/bootmanager.h"
#include "yuzu/main.h" #include "yuzu/main.h"
static Core::Frontend::WindowSystemType GetWindowSystemType();
EmuThread::EmuThread(Core::System& system_) : system{system_} {} EmuThread::EmuThread(Core::System& system_) : system{system_} {}
EmuThread::~EmuThread() = default; EmuThread::~EmuThread() = default;
@ -228,8 +230,10 @@ class RenderWidget : public QWidget {
public: public:
explicit RenderWidget(GRenderWindow* parent) : QWidget(parent), render_window(parent) { explicit RenderWidget(GRenderWindow* parent) : QWidget(parent), render_window(parent) {
setAttribute(Qt::WA_NativeWindow); setAttribute(Qt::WA_NativeWindow);
setAttribute(Qt::WA_DontCreateNativeAncestors);
setAttribute(Qt::WA_PaintOnScreen); setAttribute(Qt::WA_PaintOnScreen);
if (GetWindowSystemType() == Core::Frontend::WindowSystemType::Wayland) {
setAttribute(Qt::WA_DontCreateNativeAncestors);
}
} }
virtual ~RenderWidget() = default; virtual ~RenderWidget() = default;