diff --git a/lib/models/settings.dart b/lib/models/settings.dart index 7835b121..eb386a2e 100644 --- a/lib/models/settings.dart +++ b/lib/models/settings.dart @@ -129,7 +129,7 @@ class AppSettings { this.singleFilenameFormat = '{title} - {artist}', this.albumFolderStructure = 'artist_album', this.showExtensionStore = true, - this.extensionVerificationBrowserMode = 'external_first', + this.extensionVerificationBrowserMode = 'in_app_first', this.locale = 'system', this.lyricsMode = 'embed', this.tidalHighFormat = 'mp3_320', diff --git a/lib/models/settings.g.dart b/lib/models/settings.g.dart index a8f9b7f4..293787dd 100644 --- a/lib/models/settings.g.dart +++ b/lib/models/settings.g.dart @@ -49,7 +49,7 @@ AppSettings _$AppSettingsFromJson(Map json) => AppSettings( json['albumFolderStructure'] as String? ?? 'artist_album', showExtensionStore: json['showExtensionStore'] as bool? ?? true, extensionVerificationBrowserMode: - json['extensionVerificationBrowserMode'] as String? ?? 'external_first', + json['extensionVerificationBrowserMode'] as String? ?? 'in_app_first', locale: json['locale'] as String? ?? 'system', lyricsMode: json['lyricsMode'] as String? ?? 'embed', tidalHighFormat: json['tidalHighFormat'] as String? ?? 'mp3_320', diff --git a/lib/providers/settings_provider.dart b/lib/providers/settings_provider.dart index 16c3390d..5a035a7c 100644 --- a/lib/providers/settings_provider.dart +++ b/lib/providers/settings_provider.dart @@ -283,7 +283,7 @@ class SettingsNotifier extends Notifier { if (_extensionVerificationBrowserModeValues.contains(normalized)) { return normalized; } - return 'external_first'; + return 'in_app_first'; } String? _sanitizeRetiredBuiltInProviderId(String? providerId) { diff --git a/lib/screens/settings/app_settings_page.dart b/lib/screens/settings/app_settings_page.dart index 360f26e8..6394d236 100644 --- a/lib/screens/settings/app_settings_page.dart +++ b/lib/screens/settings/app_settings_page.dart @@ -394,7 +394,9 @@ class _VerificationBrowserModeSelector extends StatelessWidget { final colorScheme = Theme.of(context).colorScheme; final normalizedMode = currentMode == 'in_app_first' ? 'in_app_first' - : 'external_first'; + : currentMode == 'external_first' + ? 'external_first' + : 'in_app_first'; return Column( mainAxisSize: MainAxisSize.min, diff --git a/lib/utils/extension_auth_launcher.dart b/lib/utils/extension_auth_launcher.dart index 837f13f7..9f24f3d3 100644 --- a/lib/utils/extension_auth_launcher.dart +++ b/lib/utils/extension_auth_launcher.dart @@ -35,7 +35,7 @@ bool _containsHttpStatusCode(String message, String code) { Future openPendingExtensionVerification( String extensionId, { - String browserMode = 'external_first', + String browserMode = 'in_app_first', void Function(Uri authUri)? onAuthUri, }) async { final normalizedExtensionId = extensionId.trim(); @@ -79,7 +79,7 @@ Future openPendingExtensionVerification( Timer? scheduleExtensionVerificationHelpDialog( String extensionId, Uri? authUri, { - String browserMode = 'external_first', + String browserMode = 'in_app_first', Duration delay = const Duration(seconds: 20), }) { final normalizedExtensionId = extensionId.trim(); @@ -99,7 +99,7 @@ Timer? scheduleExtensionVerificationHelpDialog( Future showExtensionVerificationHelpDialog( String extensionId, Uri authUri, { - String browserMode = 'external_first', + String browserMode = 'in_app_first', bool immediateFailure = false, }) async { final context = AppNavigationService.rootNavigatorKey.currentContext; @@ -119,6 +119,7 @@ Future showExtensionVerificationHelpDialog( await showDialog( context: context, useRootNavigator: true, + barrierDismissible: false, builder: (dialogContext) { final dialogL10n = dialogContext.l10n; return AlertDialog(