Skip to content

Commit de94e89

Browse files
committed
Update accessibility_controller.dart
1 parent a77fd8d commit de94e89

1 file changed

Lines changed: 9 additions & 17 deletions

File tree

packages/devtools_app/lib/src/screens/accessibility/accessibility_controller.dart

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ class AccessibilityController extends DevToolsScreenController
3838
}
3939

4040
void _initListeners() {
41-
addAutoDisposeListener(brightness, _onBrightnessChanged);
4241
addAutoDisposeListener(textScale, _onTextScaleChanged);
4342
addAutoDisposeListener(boldText, _onBoldTextChanged);
4443
addAutoDisposeListener(screenReader, _onScreenReaderChanged);
@@ -49,36 +48,29 @@ class AccessibilityController extends DevToolsScreenController
4948
final state = serviceConnection.serviceManager.serviceExtensionManager
5049
.getServiceExtensionState(extensions.brightnessMode.extension);
5150

52-
void updateFromDeviceState(ServiceExtensionState s) {
53-
final newBrightness = !s.enabled || s.value == null
51+
void updateFromDevice(ServiceExtensionState s) {
52+
brightness.value = !s.enabled || s.value == null
5453
? BrightnessOverride.system
5554
: switch (s.value) {
5655
'Brightness.light' => BrightnessOverride.light,
5756
'Brightness.dark' => BrightnessOverride.dark,
5857
_ => BrightnessOverride.system,
5958
};
60-
if (brightness.value != newBrightness) {
61-
brightness.value = newBrightness;
62-
}
6359
}
6460

65-
updateFromDeviceState(state.value);
66-
addAutoDisposeListener(
67-
state,
68-
() => updateFromDeviceState(state.value),
69-
);
61+
updateFromDevice(state.value);
62+
addAutoDisposeListener(state, () => updateFromDevice(state.value));
7063
}
7164

72-
73-
74-
void _onBrightnessChanged() {
75-
final value = brightness.value;
65+
/// Called when the user changes the brightness override in the UI.
66+
void setBrightnessOverride(BrightnessOverride mode) {
67+
brightness.value = mode;
7668
// Values expected by Flutter framework's 'ext.flutter.brightnessOverride':
7769
// - 'Brightness.light': forces light mode
7870
// - 'Brightness.dark': forces dark mode
7971
// - '': any value other than 'Brightness.light' or 'Brightness.dark' clears
8072
// the override and resets to system default.
81-
final paramValue = switch (value) {
73+
final paramValue = switch (mode) {
8274
BrightnessOverride.light => 'Brightness.light',
8375
BrightnessOverride.dark => 'Brightness.dark',
8476
BrightnessOverride.system => '',
@@ -87,7 +79,7 @@ class AccessibilityController extends DevToolsScreenController
8779
serviceConnection.serviceManager.serviceExtensionManager
8880
.setServiceExtensionState(
8981
extensions.brightnessMode.extension,
90-
enabled: value != BrightnessOverride.system,
82+
enabled: mode != BrightnessOverride.system,
9183
value: paramValue,
9284
),
9385
);

0 commit comments

Comments
 (0)