From 265d08fc3b72c6d61f0840f0d61d13fe248230fe Mon Sep 17 00:00:00 2001 From: fufesou <13586388+fufesou@users.noreply.github.com> Date: Tue, 28 Oct 2025 20:25:33 +0800 Subject: [PATCH] fix: mobile remove "Scale custom" (#13323) Signed-off-by: fufesou --- flutter/lib/common/widgets/toolbar.dart | 11 +- .../lib/desktop/widgets/remote_toolbar.dart | 129 ------------------ 2 files changed, 6 insertions(+), 134 deletions(-) diff --git a/flutter/lib/common/widgets/toolbar.dart b/flutter/lib/common/widgets/toolbar.dart index b158679eb..e65629125 100644 --- a/flutter/lib/common/widgets/toolbar.dart +++ b/flutter/lib/common/widgets/toolbar.dart @@ -364,11 +364,12 @@ Future>> toolbarViewStyle( value: kRemoteViewStyleAdaptive, groupValue: groupValue, onChanged: onChanged), - TRadioMenu( - child: Text(translate('Scale custom')), - value: kRemoteViewStyleCustom, - groupValue: groupValue, - onChanged: onChanged) + if (isDesktop || isWebDesktop) + TRadioMenu( + child: Text(translate('Scale custom')), + value: kRemoteViewStyleCustom, + groupValue: groupValue, + onChanged: onChanged) ]; } diff --git a/flutter/lib/desktop/widgets/remote_toolbar.dart b/flutter/lib/desktop/widgets/remote_toolbar.dart index 1458169c4..84b741d00 100644 --- a/flutter/lib/desktop/widgets/remote_toolbar.dart +++ b/flutter/lib/desktop/widgets/remote_toolbar.dart @@ -153,135 +153,6 @@ class _ToolbarTheme { typedef DismissFunc = void Function(); class RemoteMenuEntry { - static MenuEntryRadios viewStyle( - String remoteId, - FFI ffi, - EdgeInsets padding, { - DismissFunc? dismissFunc, - DismissCallback? dismissCallback, - RxString? rxViewStyle, - }) { - return MenuEntryRadios( - text: translate('Ratio'), - optionsGetter: () => [ - MenuEntryRadioOption( - text: translate('Scale original'), - value: kRemoteViewStyleOriginal, - dismissOnClicked: true, - dismissCallback: dismissCallback, - ), - MenuEntryRadioOption( - text: translate('Scale adaptive'), - value: kRemoteViewStyleAdaptive, - dismissOnClicked: true, - dismissCallback: dismissCallback, - ), - MenuEntryRadioOption( - text: translate('Scale custom'), - value: kRemoteViewStyleCustom, - dismissOnClicked: true, - dismissCallback: dismissCallback, - ), - ], - curOptionGetter: () async { - // null means peer id is not found, which there's no need to care about - final viewStyle = - await bind.sessionGetViewStyle(sessionId: ffi.sessionId) ?? ''; - if (rxViewStyle != null) { - rxViewStyle.value = viewStyle; - } - return viewStyle; - }, - optionSetter: (String oldValue, String newValue) async { - await bind.sessionSetViewStyle( - sessionId: ffi.sessionId, value: newValue); - if (rxViewStyle != null) { - rxViewStyle.value = newValue; - } - ffi.canvasModel.updateViewStyle(); - if (dismissFunc != null) { - dismissFunc(); - } - }, - padding: padding, - dismissOnClicked: true, - dismissCallback: dismissCallback, - ); - } - - static MenuEntrySwitch2 showRemoteCursor( - String remoteId, - SessionID sessionId, - EdgeInsets padding, { - DismissFunc? dismissFunc, - DismissCallback? dismissCallback, - }) { - final state = ShowRemoteCursorState.find(remoteId); - final optKey = 'show-remote-cursor'; - return MenuEntrySwitch2( - switchType: SwitchType.scheckbox, - text: translate('Show remote cursor'), - getter: () { - return state; - }, - setter: (bool v) async { - await bind.sessionToggleOption(sessionId: sessionId, value: optKey); - state.value = - bind.sessionGetToggleOptionSync(sessionId: sessionId, arg: optKey); - if (dismissFunc != null) { - dismissFunc(); - } - }, - padding: padding, - dismissOnClicked: true, - dismissCallback: dismissCallback, - ); - } - - static MenuEntrySwitch disableClipboard( - SessionID sessionId, - EdgeInsets? padding, { - DismissFunc? dismissFunc, - DismissCallback? dismissCallback, - }) { - return createSwitchMenuEntry( - sessionId, - 'Disable clipboard', - 'disable-clipboard', - padding, - true, - dismissCallback: dismissCallback, - ); - } - - static MenuEntrySwitch createSwitchMenuEntry( - SessionID sessionId, - String text, - String option, - EdgeInsets? padding, - bool dismissOnClicked, { - DismissFunc? dismissFunc, - DismissCallback? dismissCallback, - }) { - return MenuEntrySwitch( - switchType: SwitchType.scheckbox, - text: translate(text), - getter: () async { - return bind.sessionGetToggleOptionSync( - sessionId: sessionId, arg: option); - }, - setter: (bool v) async { - await bind.sessionToggleOption(sessionId: sessionId, value: option); - if (dismissFunc != null) { - dismissFunc(); - } - }, - padding: padding, - dismissOnClicked: dismissOnClicked, - dismissCallback: dismissCallback, - ); - } - static MenuEntryButton insertLock( SessionID sessionId, EdgeInsets? padding, {