aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2015-09-21 21:16:48 -0400
committerbunnei <bunneidev@gmail.com>2015-09-21 21:16:48 -0400
commit8a434a954e9d6ad2dda79784d8ec5e87e5ee43ff (patch)
tree62940e905ce6eae0b15249482ff62e12dfc33e6d /src
parentdf2c2bf01224e965a7cdaabd517a8741721d9c63 (diff)
parent98aa9421dbe14d7932b53f3bfe215672acf9d36c (diff)
Merge pull request #1106 from Kloen/fix-connect
citra-qt: Fix connect error on startup (#449)
Diffstat (limited to 'src')
-rw-r--r--src/citra_qt/bootmanager.cpp12
-rw-r--r--src/citra_qt/bootmanager.h6
2 files changed, 13 insertions, 5 deletions
diff --git a/src/citra_qt/bootmanager.cpp b/src/citra_qt/bootmanager.cpp
index 7a1360d34f..bb9b204f38 100644
--- a/src/citra_qt/bootmanager.cpp
+++ b/src/citra_qt/bootmanager.cpp
@@ -128,9 +128,6 @@ GRenderWindow::GRenderWindow(QWidget* parent, EmuThread* emu_thread) :
BackupGeometry();
-#if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
- connect(this->windowHandle(), SIGNAL(screenChanged(QScreen*)), this, SLOT(OnFramebufferSizeChanged()));
-#endif
}
void GRenderWindow::moveContext()
@@ -278,3 +275,12 @@ void GRenderWindow::OnEmulationStarting(EmuThread* emu_thread) {
void GRenderWindow::OnEmulationStopping() {
emu_thread = nullptr;
}
+
+void GRenderWindow::showEvent(QShowEvent * event) {
+ QWidget::showEvent(event);
+
+ // windowHandle() is not initialized until the Window is shown, so we connect it here.
+ #if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
+ connect(this->windowHandle(), SIGNAL(screenChanged(QScreen*)), this, SLOT(OnFramebufferSizeChanged()), Qt::UniqueConnection);
+ #endif
+}
diff --git a/src/citra_qt/bootmanager.h b/src/citra_qt/bootmanager.h
index dc422358e9..2fd6113678 100644
--- a/src/citra_qt/bootmanager.h
+++ b/src/citra_qt/bootmanager.h
@@ -123,13 +123,12 @@ public:
void OnClientAreaResized(unsigned width, unsigned height);
- void OnFramebufferSizeChanged();
-
public slots:
void moveContext(); // overridden
void OnEmulationStarting(EmuThread* emu_thread);
void OnEmulationStopping();
+ void OnFramebufferSizeChanged();
signals:
/// Emitted when the window is closed
@@ -146,4 +145,7 @@ private:
int keyboard_id;
EmuThread* emu_thread;
+
+protected:
+ void showEvent(QShowEvent* event) override;
};