From 029eae7979139573ec1a9814d9c1f7005f2f8d66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20Ku=C3=9Fowski?= Date: Sun, 27 Jul 2025 11:30:24 +0200 Subject: [PATCH] fix: Open external account management when trying to delete devices --- lib/pages/device_settings/device_settings.dart | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/lib/pages/device_settings/device_settings.dart b/lib/pages/device_settings/device_settings.dart index a23545f0b..2114e999c 100644 --- a/lib/pages/device_settings/device_settings.dart +++ b/lib/pages/device_settings/device_settings.dart @@ -3,6 +3,7 @@ import 'package:flutter/material.dart'; import 'package:collection/collection.dart' show IterableExtension; import 'package:matrix/encryption/utils/key_verification.dart'; import 'package:matrix/matrix.dart'; +import 'package:url_launcher/url_launcher_string.dart'; import 'package:fluffychat/l10n/l10n.dart'; import 'package:fluffychat/pages/device_settings/device_settings_view.dart'; @@ -52,6 +53,18 @@ class DevicesSettingsController extends State { } void removeDevicesAction(List devices) async { + final client = Matrix.of(context).client; + + final accountManageUrl = client.wellKnown?.additionalProperties + .tryGetMap('org.matrix.msc2965.authentication') + ?.tryGet('account'); + if (accountManageUrl != null) { + launchUrlString( + accountManageUrl, + mode: LaunchMode.inAppBrowserView, + ); + return; + } if (await showOkCancelAlertDialog( context: context, title: L10n.of(context).areYouSure,