fix: set edge size to zero when in fullscreen mode

This commit is contained in:
Kingtous 2023-01-30 21:42:58 +08:00
parent 87de9eb726
commit d99b0bed0a
2 changed files with 22 additions and 8 deletions

View File

@ -8,6 +8,7 @@ import 'package:auto_size_text/auto_size_text.dart';
import 'package:flutter/material.dart';
import 'package:flutter_hbb/consts.dart';
import 'package:flutter_hbb/desktop/widgets/scroll_wrapper.dart';
import 'package:flutter_hbb/models/state_model.dart';
import 'package:get/get.dart';
import 'package:url_launcher/url_launcher_string.dart';
import 'package:window_manager/window_manager.dart';
@ -92,6 +93,18 @@ class _ConnectionPageState extends State<ConnectionPage>
}
}
@override
void onWindowEnterFullScreen() {
// Remove edge border by setting the value to zero.
stateGlobal.resizeEdgeSize.value = 0;
}
@override
void onWindowLeaveFullScreen() {
// Restore edge border to default edge size.
stateGlobal.resizeEdgeSize.value = kWindowEdgeSize;
}
@override
void onWindowClose() {
super.onWindowClose();

View File

@ -38,8 +38,9 @@ class ConnectionTabPage extends StatefulWidget {
}
class _ConnectionTabPageState extends State<ConnectionTabPage> {
final tabController = Get.put(DesktopTabController(
tabType: DesktopTabType.remoteScreen));
final tabController =
Get.put(DesktopTabController(tabType: DesktopTabType.remoteScreen));
final contentKey = UniqueKey();
static const IconData selectedIcon = Icons.desktop_windows_sharp;
static const IconData unselectedIcon = Icons.desktop_windows_outlined;
@ -80,7 +81,6 @@ class _ConnectionTabPageState extends State<ConnectionTabPage> {
super.initState();
tabController.onRemoved = (_, id) => onRemoveId(id);
rustDeskWinManager.setMethodHandler((call, fromWindowId) async {
print(
@ -197,11 +197,12 @@ class _ConnectionTabPageState extends State<ConnectionTabPage> {
);
return Platform.isMacOS
? tabWidget
: SubWindowDragToResizeArea(
child: tabWidget,
resizeEdgeSize: stateGlobal.resizeEdgeSize.value,
windowId: stateGlobal.windowId,
);
: Obx(() => SubWindowDragToResizeArea(
key: contentKey,
child: tabWidget,
resizeEdgeSize: stateGlobal.resizeEdgeSize.value,
windowId: stateGlobal.windowId,
));
}
// Note: Some dup code to ../widgets/remote_menubar