fix: web v2, keyboard mode (#9180)
Signed-off-by: fufesou <linlong1266@gmail.com>
This commit is contained in:
parent
690a2c8399
commit
c68ce7dd84
@ -1612,7 +1612,9 @@ class _KeyboardMenu extends StatelessWidget {
|
||||
// If use flutter to grab keys, we can only use one mode.
|
||||
// Map mode and Legacy mode, at least one of them is supported.
|
||||
String? modeOnly;
|
||||
if (isInputSourceFlutter) {
|
||||
// Keep both map and legacy mode on web at the moment.
|
||||
// TODO: Remove legacy mode after web supports translate mode on web.
|
||||
if (isInputSourceFlutter && isDesktop) {
|
||||
if (bind.sessionIsKeyboardModeSupported(
|
||||
sessionId: ffi.sessionId, mode: kKeyMapMode)) {
|
||||
modeOnly = kKeyMapMode;
|
||||
|
@ -508,7 +508,7 @@ class InputModel {
|
||||
}
|
||||
|
||||
// * Currently mobile does not enable map mode
|
||||
if ((isDesktop || isWebDesktop) && keyboardMode == 'map') {
|
||||
if ((isDesktop || isWebDesktop) && keyboardMode == kKeyMapMode) {
|
||||
mapKeyboardModeRaw(e);
|
||||
} else {
|
||||
legacyKeyboardModeRaw(e);
|
||||
@ -537,7 +537,7 @@ class InputModel {
|
||||
}
|
||||
|
||||
// * Currently mobile does not enable map mode
|
||||
if ((isDesktop || isWebDesktop)) {
|
||||
if ((isDesktop || isWebDesktop) && keyboardMode == kKeyMapMode) {
|
||||
// FIXME: e.character is wrong for dead keys, eg: ^ in de
|
||||
newKeyboardMode(
|
||||
e.character ?? '',
|
||||
|
@ -351,7 +351,7 @@ class RustdeskImpl {
|
||||
|
||||
bool sessionIsKeyboardModeSupported(
|
||||
{required UuidValue sessionId, required String mode, dynamic hint}) {
|
||||
return mode == kKeyLegacyMode;
|
||||
return [kKeyLegacyMode, kKeyMapMode].contains(mode);
|
||||
}
|
||||
|
||||
bool sessionIsMultiUiSession({required UuidValue sessionId, dynamic hint}) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user