From 532fe6aefbecffc4bfc9799f67839f8b7dc55e9f Mon Sep 17 00:00:00 2001 From: fufesou <13586388+fufesou@users.noreply.github.com> Date: Sun, 1 Sep 2024 23:14:57 +0800 Subject: [PATCH] refact: web ui, login (#9225) Signed-off-by: fufesou --- flutter/lib/web/bridge.dart | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/flutter/lib/web/bridge.dart b/flutter/lib/web/bridge.dart index 305ed0b75..d4b09430a 100644 --- a/flutter/lib/web/bridge.dart +++ b/flutter/lib/web/bridge.dart @@ -4,6 +4,7 @@ import 'dart:convert'; import 'dart:typed_data'; import 'package:flutter/foundation.dart'; import 'package:uuid/uuid.dart'; +import 'dart:html' as html; import 'package:flutter_hbb/consts.dart'; @@ -655,7 +656,15 @@ class RustdeskImpl { } String mainGetLoginDeviceInfo({dynamic hint}) { - throw UnimplementedError(); + String userAgent = html.window.navigator.userAgent; + String appName = html.window.navigator.appName; + String appVersion = html.window.navigator.appVersion; + String? platform = html.window.navigator.platform; + return jsonEncode({ + 'os': '$userAgent, $appName $appVersion ($platform)', + 'type': 'Web client', + 'name': js.context.callMethod('getByName', ['my_name']), + }); } Future mainChangeId({required String newId, dynamic hint}) { @@ -850,11 +859,11 @@ class RustdeskImpl { } Future mainGetMyId({dynamic hint}) { - throw UnimplementedError(); + return Future(() => js.context.callMethod('getByName', ['my_id'])); } Future mainGetUuid({dynamic hint}) { - throw UnimplementedError(); + return Future(() => js.context.callMethod('getByName', ['uuid'])); } Future mainGetPeerOption( @@ -1066,8 +1075,7 @@ class RustdeskImpl { } Future mainGetFingerprint({dynamic hint}) { - // TODO: implement - return Future.value(''); + return Future(() => js.context.callMethod('getByName', ['fingerprint'])); } Future cmGetClientsState({dynamic hint}) {