Skip to content

Commit 70fca69

Browse files
committed
fix: On Mac, move to app after settings Save
1 parent c1cdb2b commit 70fca69

4 files changed

Lines changed: 21 additions & 8 deletions

File tree

lib/core/providers/settings_provider.dart

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'dart:async';
22

3-
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
43
import 'package:riverpod_annotation/riverpod_annotation.dart';
54
import 'package:shared_preferences/shared_preferences.dart';
65

@@ -49,13 +48,11 @@ class SettingsNotifier extends _$SettingsNotifier {
4948
static const _textScaleKey = 'text_scale';
5049
static const _themeKey = 'app_theme';
5150

52-
FlutterSecureStorage get _secureStorage => const FlutterSecureStorage();
53-
5451
@override
5552
FutureOr<AppSettings> build() async {
5653
final prefs = await SharedPreferences.getInstance();
5754
final url = prefs.getString(_urlKey);
58-
final token = await _secureStorage.read(key: _tokenKey);
55+
final token = prefs.getString(_tokenKey);
5956
final textScale = prefs.getDouble(_textScaleKey) ?? 1.0;
6057
final themeName = prefs.getString(_themeKey);
6158
final appTheme = themeName != null
@@ -78,7 +75,7 @@ class SettingsNotifier extends _$SettingsNotifier {
7875
: baseUrl;
7976
final prefs = await SharedPreferences.getInstance();
8077
await prefs.setString(_urlKey, normalized);
81-
await _secureStorage.write(key: _tokenKey, value: token);
78+
await prefs.setString(_tokenKey, token);
8279
final current = state.valueOrNull;
8380
state = AsyncData(AppSettings(
8481
baseUrl: normalized,
@@ -107,7 +104,7 @@ class SettingsNotifier extends _$SettingsNotifier {
107104
Future<void> clearSettings() async {
108105
final prefs = await SharedPreferences.getInstance();
109106
await prefs.remove(_urlKey);
110-
await _secureStorage.delete(key: _tokenKey);
107+
await prefs.remove(_tokenKey);
111108
final current = state.valueOrNull;
112109
state = AsyncData(AppSettings(
113110
textScale: current?.textScale ?? 1.0,

lib/features/settings/settings_screen.dart

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,22 @@ class _SettingsScreenState extends ConsumerState<SettingsScreen> {
5454
token: _tokenController.text.trim(),
5555
);
5656
if (mounted) context.go('/queue');
57+
} catch (e) {
58+
if (mounted) {
59+
showDialog<void>(
60+
context: context,
61+
builder: (ctx) => AlertDialog(
62+
title: const Text('Save failed'),
63+
content: Text(e.toString()),
64+
actions: [
65+
TextButton(
66+
onPressed: () => Navigator.pop(ctx),
67+
child: const Text('OK'),
68+
),
69+
],
70+
),
71+
);
72+
}
5773
} finally {
5874
if (mounted) setState(() => _saving = false);
5975
}

macos/Runner/DebugProfile.entitlements

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<plist version="1.0">
44
<dict>
55
<key>com.apple.security.app-sandbox</key>
6-
<true/>
6+
<false/>
77
<key>com.apple.security.cs.allow-jit</key>
88
<true/>
99
<key>com.apple.security.network.server</key>

macos/Runner/Release.entitlements

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<plist version="1.0">
44
<dict>
55
<key>com.apple.security.app-sandbox</key>
6-
<true/>
6+
<false/>
77
<key>com.apple.security.network.client</key>
88
<true/>
99
</dict>

0 commit comments

Comments
 (0)