瀏覽代碼

UI: Work around Qt dock restore crash

(cherry picked from commit 3dcf68f8ed500a23154f502a85caa109afd04d81)
derrod 2 年之前
父節點
當前提交
063cc0c865
共有 3 個文件被更改,包括 12 次插入4 次删除
  1. 3 1
      UI/auth-restream.cpp
  2. 6 2
      UI/auth-twitch.cpp
  3. 3 1
      UI/auth-youtube.cpp

+ 3 - 1
UI/auth-restream.cpp

@@ -200,7 +200,9 @@ void RestreamAuth::LoadUI()
 			main->Config(), service(), "DockState");
 		QByteArray dockState =
 			QByteArray::fromBase64(QByteArray(dockStateStr));
-		main->restoreState(dockState);
+
+		if (main->isVisible() || !main->isMaximized())
+			main->restoreState(dockState);
 	}
 
 	uiLoaded = true;

+ 6 - 2
UI/auth-twitch.cpp

@@ -276,7 +276,9 @@ void TwitchAuth::LoadUI()
 			main->Config(), service(), "DockState");
 		QByteArray dockState =
 			QByteArray::fromBase64(QByteArray(dockStateStr));
-		main->restoreState(dockState);
+
+		if (main->isVisible() || !main->isMaximized())
+			main->restoreState(dockState);
 	}
 
 	TryLoadSecondaryUIPanes();
@@ -405,7 +407,9 @@ void TwitchAuth::LoadSecondaryUIPanes()
 			main->Config(), service(), "DockState");
 		QByteArray dockState =
 			QByteArray::fromBase64(QByteArray(dockStateStr));
-		main->restoreState(dockState);
+
+		if (main->isVisible() || !main->isMaximized())
+			main->restoreState(dockState);
 	}
 }
 

+ 3 - 1
UI/auth-youtube.cpp

@@ -164,7 +164,9 @@ void YoutubeAuth::LoadUI()
 			main->Config(), service(), "DockState");
 		QByteArray dockState =
 			QByteArray::fromBase64(QByteArray(dockStateStr));
-		main->restoreState(dockState);
+
+		if (main->isVisible() || !main->isMaximized())
+			main->restoreState(dockState);
 	}
 #endif