mirror of
https://github.com/weyne85/rustdesk.git
synced 2025-10-29 17:00:05 +00:00
@@ -1542,8 +1542,13 @@ Future<bool> restoreWindowPosition(WindowType type,
|
||||
bool isRemotePeerPos = false;
|
||||
String? pos;
|
||||
if (type == WindowType.RemoteDesktop && windowId != null && peerId != null) {
|
||||
pos = await bind.sessionGetFlutterConfigByPeerId(
|
||||
id: peerId, k: kWindowPrefix);
|
||||
if (desktopType == DesktopType.main) {
|
||||
pos = bind.mainGetPeerFlutterConfigSync(
|
||||
id: peerId, k: kWindowPrefix + type.name);
|
||||
} else {
|
||||
pos = await bind.sessionGetFlutterConfigByPeerId(
|
||||
id: peerId, k: kWindowPrefix);
|
||||
}
|
||||
isRemotePeerPos = pos != null;
|
||||
}
|
||||
pos ??= bind.getLocalFlutterConfig(k: kWindowPrefix + type.name);
|
||||
|
||||
@@ -99,6 +99,8 @@ class RustDeskMultiWindowManager {
|
||||
for (final windowId in windows) {
|
||||
if (_inactiveWindows.contains(windowId)) {
|
||||
await DesktopMultiWindow.invokeMethod(windowId, methodName, msg);
|
||||
await restoreWindowPosition(type,
|
||||
windowId: windowId, peerId: remoteId);
|
||||
WindowController.fromWindowId(windowId).show();
|
||||
registerActiveWindow(windowId);
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user