diff --git a/flutter/lib/common.dart b/flutter/lib/common.dart index 314b1f9d3..4d25e6d0d 100644 --- a/flutter/lib/common.dart +++ b/flutter/lib/common.dart @@ -2212,8 +2212,7 @@ Widget unreadMessageCountBuilder(RxInt? count, ))); } -Widget unreadTopRightBuilder(RxInt? count, - {Widget? icon, double? size, double? fontSize}) { +Widget unreadTopRightBuilder(RxInt? count, {Widget? icon}) { return Stack( children: [ icon ?? Icon(Icons.chat), diff --git a/flutter/lib/desktop/pages/server_page.dart b/flutter/lib/desktop/pages/server_page.dart index 53088f69e..f1e35364c 100644 --- a/flutter/lib/desktop/pages/server_page.dart +++ b/flutter/lib/desktop/pages/server_page.dart @@ -185,14 +185,19 @@ class ConnectionManagerState extends State { child: ChatPage(type: ChatPageType.desktopCM)), ), + flex: (kConnectionManagerWindowSizeOpenChat.width - + kConnectionManagerWindowSizeClosedChat + .width) + .toInt(), ) - : Expanded(child: Container()), + : Offstage(), ), - SizedBox( - width: kConnectionManagerWindowSizeClosedChat.width - - 10, // 10 is from overflow - child: pageView, - ) + Expanded( + child: pageView, + flex: kConnectionManagerWindowSizeClosedChat.width + .toInt() - + 4 // prevent stretch of the page view when chat is open, + ), ], ), ), diff --git a/flutter/lib/models/chat_model.dart b/flutter/lib/models/chat_model.dart index 48476951f..fe1de2512 100644 --- a/flutter/lib/models/chat_model.dart +++ b/flutter/lib/models/chat_model.dart @@ -277,16 +277,16 @@ class ChatModel with ChangeNotifier { gFFI.chatModel.changeCurrentKey(key); } if (_isShowCMChatPage) { - await windowManager.setSizeAlignment( - kConnectionManagerWindowSizeClosedChat, Alignment.topRight); - await windowManager.show(); _isShowCMChatPage = !_isShowCMChatPage; notifyListeners(); + await windowManager.show(); + await windowManager.setSizeAlignment( + kConnectionManagerWindowSizeClosedChat, Alignment.topRight); } else { requestChatInputFocus(); + await windowManager.show(); await windowManager.setSizeAlignment( kConnectionManagerWindowSizeOpenChat, Alignment.topRight); - await windowManager.show(); _isShowCMChatPage = !_isShowCMChatPage; notifyListeners(); }