fix reactivity of settings on mobile

This commit is contained in:
Henry Hiles 2026-07-17 01:01:42 -04:00
commit facb354b56
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs

View file

@ -186,21 +186,31 @@ class SettingsPage extends ConsumerWidget {
categories[index].title, categories[index].title,
), ),
), ),
body: SuperListView( body: Consumer(
builder: (context, ref, _) => ref
.watch(
SettingsController.provider,
)
.betterWhen(
data: (settings) => SuperListView(
padding: .symmetric( padding: .symmetric(
vertical: 12, vertical: 12,
horizontal: 8, horizontal: 8,
), ),
children: buildCategories(settings) children: buildCategories(settings)
.values .values
.flattenedToList[selected.value] .flattenedToList[selected
.value]
.settings .settings
.map( .map(
(setting) => Padding( (setting) => Padding(
padding: .only(bottom: 4), padding: .only(
bottom: 4,
),
child: setting.builder( child: setting.builder(
setting.title, setting.title,
setting.description, setting
.description,
setting.icon, setting.icon,
), ),
), ),
@ -210,6 +220,8 @@ class SettingsPage extends ConsumerWidget {
), ),
), ),
), ),
),
),
itemBuilder: (context, index) => ListTile( itemBuilder: (context, index) => ListTile(
leading: Icon(categories[index].icon), leading: Icon(categories[index].icon),
title: Text(categories[index].title), title: Text(categories[index].title),