mirror of
https://github.com/rustdesk/rustdesk.git
synced 2026-03-26 14:41:04 +03:00
terminal works basically. (#12189)
* terminal works basically. todo: - persistent - sessions restore - web - mobile * missed terminal persistent option change * android sdk 34 -> 35 * +#![cfg_attr(lt_1_77, feature(c_str_literals))] * fixing ci * fix ci * fix ci for android * try "Fix Android SDK Platform 35" * fix android 34 * revert flutter_plugin_android_lifecycle to 2.0.17 which used in rustdesk 1.4.0 * refactor, but break something of desktop terminal (new tab showing loading) * fix connecting...
This commit is contained in:
@@ -81,6 +81,7 @@ class RustdeskImpl {
|
||||
required bool isViewCamera,
|
||||
required bool isPortForward,
|
||||
required bool isRdp,
|
||||
required bool isTerminal,
|
||||
required String switchUuid,
|
||||
required bool forceRelay,
|
||||
required String password,
|
||||
@@ -94,7 +95,8 @@ class RustdeskImpl {
|
||||
'password': password,
|
||||
'is_shared_password': isSharedPassword,
|
||||
'isFileTransfer': isFileTransfer,
|
||||
'isViewCamera': isViewCamera
|
||||
'isViewCamera': isViewCamera,
|
||||
'isTerminal': isTerminal
|
||||
})
|
||||
]);
|
||||
}
|
||||
@@ -1911,5 +1913,63 @@ class RustdeskImpl {
|
||||
throw UnimplementedError("sessionTakeScreenshot");
|
||||
}
|
||||
|
||||
Future<void> sessionOpenTerminal(
|
||||
{required UuidValue sessionId,
|
||||
required int terminalId,
|
||||
required int rows,
|
||||
required int cols,
|
||||
dynamic hint}) {
|
||||
return Future(() => js.context.callMethod('setByName', [
|
||||
'open_terminal',
|
||||
jsonEncode({
|
||||
'terminal_id': terminalId,
|
||||
'rows': rows,
|
||||
'cols': cols,
|
||||
})
|
||||
]));
|
||||
}
|
||||
|
||||
Future<void> sessionSendTerminalInput(
|
||||
{required UuidValue sessionId,
|
||||
required int terminalId,
|
||||
required String data,
|
||||
dynamic hint}) {
|
||||
return Future(() => js.context.callMethod('setByName', [
|
||||
'send_terminal_input',
|
||||
jsonEncode({
|
||||
'terminal_id': terminalId,
|
||||
'data': data,
|
||||
})
|
||||
]));
|
||||
}
|
||||
|
||||
Future<void> sessionResizeTerminal(
|
||||
{required UuidValue sessionId,
|
||||
required int terminalId,
|
||||
required int rows,
|
||||
required int cols,
|
||||
dynamic hint}) {
|
||||
return Future(() => js.context.callMethod('setByName', [
|
||||
'resize_terminal',
|
||||
jsonEncode({
|
||||
'terminal_id': terminalId,
|
||||
'rows': rows,
|
||||
'cols': cols,
|
||||
})
|
||||
]));
|
||||
}
|
||||
|
||||
Future<void> sessionCloseTerminal(
|
||||
{required UuidValue sessionId,
|
||||
required int terminalId,
|
||||
dynamic hint}) {
|
||||
return Future(() => js.context.callMethod('setByName', [
|
||||
'close_terminal',
|
||||
jsonEncode({
|
||||
'terminal_id': terminalId,
|
||||
})
|
||||
]));
|
||||
}
|
||||
|
||||
void dispose() {}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user