Refact. Flutter web, mid commit (#7482)

Signed-off-by: fufesou <shuanglongchen@yeah.net>
This commit is contained in:
fufesou
2024-03-23 10:08:55 +08:00
committed by GitHub
parent 1c3a2e475d
commit a15cd62fd4
8 changed files with 187 additions and 68 deletions

View File

@@ -18,7 +18,7 @@ typedef HandleEvent = Future<void> Function(Map<String, dynamic> evt);
class PlatformFFI {
final _eventHandlers = <String, Map<String, HandleEvent>>{};
late RustdeskImpl _ffiBind;
final RustdeskImpl _ffiBind = RustdeskImpl();
static String getByName(String name, [String arg = '']) {
return context.callMethod('getByName', [name, arg]);
@@ -101,6 +101,15 @@ class PlatformFFI {
isWebDesktop = !context.callMethod('isMobile');
context.callMethod('init');
version = getByName('version');
context['onRegisteredEvent'] = (String message) {
try {
Map<String, dynamic> event = json.decode(message);
tryHandle(event);
} catch (e) {
print('json.decode fail(): $e');
}
};
}
void setEventCallback(void Function(Map<String, dynamic>) fun) {
@@ -145,7 +154,5 @@ class PlatformFFI {
}
// just for compilation
void syncAndroidServiceAppDirConfigPath() {
throw UnimplementedError();
}
void syncAndroidServiceAppDirConfigPath() {}
}