fix: editing pref store (#618)
This commit is contained in:
@@ -8,7 +8,7 @@ final class _AppBar extends StatelessWidget implements PreferredSizeWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return SizedBox(
|
||||
height: paddingTop,
|
||||
height: preferredSize.height,
|
||||
child: isIOS
|
||||
? const Center(child: Text(BuildData.name, style: UIs.text15Bold))
|
||||
: null,
|
||||
@@ -16,5 +16,11 @@ final class _AppBar extends StatelessWidget implements PreferredSizeWidget {
|
||||
}
|
||||
|
||||
@override
|
||||
Size get preferredSize => Size.fromHeight(paddingTop);
|
||||
}
|
||||
Size get preferredSize {
|
||||
final height = switch (Pfs.type) {
|
||||
Pfs.macos => paddingTop + (CustomAppBar.sysStatusBarHeight ?? 0),
|
||||
_ => paddingTop,
|
||||
};
|
||||
return Size.fromHeight(height);
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,8 @@ class AndroidSettingsPage extends StatefulWidget {
|
||||
State<AndroidSettingsPage> createState() => _AndroidSettingsPageState();
|
||||
}
|
||||
|
||||
const _homeWidgetPrefPrefix = 'widget_';
|
||||
|
||||
class _AndroidSettingsPageState extends State<AndroidSettingsPage> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
@@ -39,11 +41,13 @@ class _AndroidSettingsPageState extends State<AndroidSettingsPage> {
|
||||
try {
|
||||
final keysDel = old.keys.toSet().difference(map.keys.toSet());
|
||||
for (final key in keysDel) {
|
||||
if (!key.startsWith(_homeWidgetPrefPrefix)) continue;
|
||||
PrefStore.remove(key);
|
||||
}
|
||||
map.forEach((key, value) {
|
||||
PrefStore.set(key, value);
|
||||
});
|
||||
for (final entry in map.entries) {
|
||||
if (!entry.key.startsWith(_homeWidgetPrefPrefix)) continue;
|
||||
PrefStore.set(entry.key, entry.value);
|
||||
}
|
||||
context.showSnackBar(libL10n.success);
|
||||
} catch (e) {
|
||||
context.showSnackBar(e.toString());
|
||||
@@ -64,7 +68,7 @@ class _AndroidSettingsPageState extends State<AndroidSettingsPage> {
|
||||
}
|
||||
final result = await KvEditor.route.go(
|
||||
context,
|
||||
KvEditorArgs(data: data, prefix: 'widget_'),
|
||||
KvEditorArgs(data: data, prefix: _homeWidgetPrefPrefix),
|
||||
);
|
||||
if (result != null) {
|
||||
_saveWidgetSP(result, data);
|
||||
|
||||
Reference in New Issue
Block a user