mirror of
https://github.com/rustdesk/rustdesk.git
synced 2026-09-07 13:01:11 +03:00
* feat(terminal): add opt-in OSC 52 clipboard writes * Remove dup tr Signed-off-by: fufesou <linlong1266@gmail.com> --------- Signed-off-by: fufesou <linlong1266@gmail.com>
30 lines
649 B
Dart
30 lines
649 B
Dart
import 'dart:js_interop';
|
|
|
|
import 'package:flutter/foundation.dart';
|
|
|
|
const _writeTerminalClipboardCommand = 'write_terminal_clipboard';
|
|
|
|
@JS('setByName')
|
|
external JSPromise<JSBoolean> _setByName(
|
|
JSString name,
|
|
JSString value,
|
|
JSBoolean userInitiated,
|
|
);
|
|
|
|
Future<bool> writeTerminalClipboardPlatform(
|
|
String text, {
|
|
bool userInitiated = false,
|
|
}) async {
|
|
try {
|
|
final result = await _setByName(
|
|
_writeTerminalClipboardCommand.toJS,
|
|
text.toJS,
|
|
userInitiated.toJS,
|
|
).toDart;
|
|
return result.toDart;
|
|
} catch (error) {
|
|
debugPrint('[Terminal] Failed to write Web clipboard: $error');
|
|
return false;
|
|
}
|
|
}
|