From 763627a8aa5f34ed90cad21a8df6d37c195ceaf5 Mon Sep 17 00:00:00 2001 From: jrd Date: Thu, 23 Jul 2026 22:42:27 +0000 Subject: [PATCH 1/2] Make chat dialog show up as fullscreen on iOS The chat dialog overflowed the screen on iOS because it never set Qt::WindowMaximized, unlike the connect dialog and about dialog which were fixed for the same symptom in #3343 (commit 40e5af1). This applies the identical, already-merged pattern to the third and last affected dialog. Fixes #3383 Co-Authored-By: Claude Opus 4.8 --- src/chatdlg.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/chatdlg.cpp b/src/chatdlg.cpp index d49a716fb9..7a5433b6c2 100644 --- a/src/chatdlg.cpp +++ b/src/chatdlg.cpp @@ -93,6 +93,11 @@ CChatDlg::CChatDlg ( QWidget* parent ) : CBaseDlg ( parent, Qt::Window ) // use // Now tell the layout about the menu layout()->setMenuBar ( pMenu ); +#if defined( ANDROID ) || defined( Q_OS_IOS ) + // for the Android and iOS version maximize the window (#3383) + setWindowState ( Qt::WindowMaximized ); +#endif + // Connections ------------------------------------------------------------- QObject::connect ( edtLocalInputText, &QLineEdit::textChanged, this, &CChatDlg::OnLocalInputTextTextChanged ); From 4e7b2613f066ae2e0b19edef38c61f37bbb4dcdb Mon Sep 17 00:00:00 2001 From: jrd Date: Mon, 27 Jul 2026 19:47:41 +0000 Subject: [PATCH 2/2] chatdlg: don't undo the Android/iOS maximize on raise ShowChatWindow() unconditionally called showNormal() to bring the dialog to front, which clears any maximized/fullscreen window state - silently undoing the Qt::WindowMaximized set in CChatDlg's constructor for Android/iOS (#3383). connectdlg.cpp's equivalent maximize call has no such showNormal() and works correctly. Confirmed via ann0see's real-device test on this PR: 'the chat dialog is still oversized on iOS. Tested with Qt 5.15.19.' --- src/clientdlg.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/clientdlg.cpp b/src/clientdlg.cpp index b102c34724..e64251da54 100644 --- a/src/clientdlg.cpp +++ b/src/clientdlg.cpp @@ -1033,8 +1033,12 @@ void CClientDlg::ShowChatWindow ( const bool bForceRaise ) if ( bForceRaise ) { - // make sure dialog is upfront and has focus +#if defined( ANDROID ) || defined( Q_OS_IOS ) + // on Android/iOS the dialog is always shown maximized (#3383); showNormal() would undo that +#else + // make sure dialog is upfront and has focus (not applicable on Android/iOS, see above) ChatDlg.showNormal(); +#endif ChatDlg.raise(); ChatDlg.activateWindow(); }