From f9f3c53f0913f7adab4175bed2d72e47a208741e Mon Sep 17 00:00:00 2001 From: Feichtmeier Date: Mon, 21 Feb 2022 08:23:27 +0100 Subject: [PATCH] FIx several warnings - Wifi: send Snackback on error - settingsservice: always return a value - app: remove unimplemented search delegate idea - remove translation notes, this needs an issue --- lib/app.dart | 26 ------------------ lib/services/settings_service.dart | 4 ++- .../pages/connections/models/wifi_model.dart | 14 +++++++--- lib/view/pages/connections/wifi_content.dart | 23 +++++++++------- .../keyboard/special_characters_model.dart | 2 -- pubspec.lock | 27 ++++++------------- pubspec.yaml | 9 ++----- 7 files changed, 38 insertions(+), 67 deletions(-) diff --git a/lib/app.dart b/lib/app.dart index 761083ad..8e86b8c7 100644 --- a/lib/app.dart +++ b/lib/app.dart @@ -70,29 +70,3 @@ class _UbuntuSettingsAppState extends State { ); } } - -class MySearchDelegate extends SearchDelegate { - @override - List? buildActions(BuildContext context) { - // TODO: implement buildActions - throw UnimplementedError(); - } - - @override - Widget? buildLeading(BuildContext context) { - // TODO: implement buildLeading - throw UnimplementedError(); - } - - @override - Widget buildResults(BuildContext context) { - // TODO: implement buildResults - throw UnimplementedError(); - } - - @override - Widget buildSuggestions(BuildContext context) { - // TODO: implement buildSuggestions - throw UnimplementedError(); - } -} diff --git a/lib/services/settings_service.dart b/lib/services/settings_service.dart index 82c1fde7..211ecfe5 100644 --- a/lib/services/settings_service.dart +++ b/lib/services/settings_service.dart @@ -55,15 +55,17 @@ class Settings { T? getValue(String key) => _values[key] ?? _updateValue(key); T? _updateValue(String key) { + T? value; try { _settings.get(key).then((v) { - final value = v.toNative() as T?; + value = v.toNative() as T?; if (_values[key] != value) { _values[key] = value; notifyListeners(); } }); } on GSettingsUnknownKeyException catch (_) {} + return value; } Future setValue(String key, T value) async { diff --git a/lib/view/pages/connections/models/wifi_model.dart b/lib/view/pages/connections/models/wifi_model.dart index c650f266..b1544a4c 100644 --- a/lib/view/pages/connections/models/wifi_model.dart +++ b/lib/view/pages/connections/models/wifi_model.dart @@ -37,6 +37,14 @@ class WifiModel extends PropertyStreamNotifier { addPropertyListener('NetworkingEnabled', notifyListeners); } + String _errorMessage = ''; + set errorMessage(String value) { + _errorMessage = value; + notifyListeners(); + } + + String get errorMessage => _errorMessage; + void connectToAccesPoint( AccessPointModel accessPointModel, WifiDeviceModel wifiAdaptorModel, @@ -71,10 +79,9 @@ class WifiModel extends PropertyStreamNotifier { accessPoint: accessPointModel._networkManagerAccessPoint, ); } on DBusMethodResponseException catch (e) { - //TODO: reflect error on ui + errorMessage = e.toString(); } on Exception catch (e) { - //TODO: reflect error on ui - + errorMessage = e.toString(); } } @@ -83,6 +90,7 @@ class WifiModel extends PropertyStreamNotifier { await _networkManagerClient.setWirelessEnabled(value); return true; } on Exception catch (e) { + errorMessage = e.toString(); return false; } } diff --git a/lib/view/pages/connections/wifi_content.dart b/lib/view/pages/connections/wifi_content.dart index a2670546..ea6e592b 100644 --- a/lib/view/pages/connections/wifi_content.dart +++ b/lib/view/pages/connections/wifi_content.dart @@ -19,12 +19,13 @@ class WifiDevicesContent extends StatelessWidget { return YaruPage( children: [ - YaruRow( + YaruSwitchRow( width: kDefaultWidth, - enabled: true, - trailingWidget: const Text('Wi-Fi'), - actionWidget: Row( + enabled: wifiModel.isWifiDeviceAvailable, + trailingWidget: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ + Text(context.l10n.wifiPageTitle), Text( wifiModel.isWifiEnabled ? context.l10n.connected @@ -34,12 +35,11 @@ class WifiDevicesContent extends StatelessWidget { .colorScheme .onSurface .withOpacity(0.5)), - ), - Switch( - onChanged: (newValue) => wifiModel.toggleWifi(newValue), - value: wifiModel.isWifiEnabled), + ) ], - )), + ), + onChanged: (newValue) => wifiModel.toggleWifi(newValue), + value: wifiModel.isWifiEnabled), if (wifiModel.isWifiEnabled) for (final wifiDevice in wifiModel.wifiDevices) AnimatedBuilder( @@ -59,6 +59,11 @@ class WifiDevicesContent extends StatelessWidget { (wifiDevice, accessPoint) => authenticate(context, accessPoint), ); + if (wifiModel.errorMessage.isNotEmpty) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text(wifiModel.errorMessage))); + } }, ) ], diff --git a/lib/view/pages/keyboard/special_characters_model.dart b/lib/view/pages/keyboard/special_characters_model.dart index 76b1c155..612ffe78 100644 --- a/lib/view/pages/keyboard/special_characters_model.dart +++ b/lib/view/pages/keyboard/special_characters_model.dart @@ -114,7 +114,6 @@ class SpecialCharactersModel extends SafeChangeNotifier { return ComposeOptions.defaultLayout; } - // TODO: Add translations here final composeOptionsToStringMap = { ComposeOptions.rightAlt: 'Right Alt-Key', ComposeOptions.leftAlt: 'Left Alt-Key', @@ -146,7 +145,6 @@ class SpecialCharactersModel extends SafeChangeNotifier { return null; } - // TODO: add translations here final lv3OptionsToStringMap = { null: 'Default Layout', Lv3Options.none: 'None', diff --git a/pubspec.lock b/pubspec.lock index b538d415..208359ea 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -653,13 +653,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "0.1.0" - scrollable_positioned_list: - dependency: "direct main" - description: - name: scrollable_positioned_list - url: "https://pub.dartlang.org" - source: hosted - version: "0.2.3" shelf: dependency: transitive description: @@ -934,12 +927,10 @@ packages: yaru: dependency: "direct main" description: - path: "." - ref: HEAD - resolved-ref: "29c88e53046b8a1ef9eb514eb702437f4c003009" - url: "https://github.com/ubuntu/yaru.dart" - source: git - version: "0.2.1" + name: yaru + url: "https://pub.dartlang.org" + source: hosted + version: "0.2.2" yaru_icons: dependency: "direct main" description: @@ -950,12 +941,10 @@ packages: yaru_widgets: dependency: "direct main" description: - path: "." - ref: HEAD - resolved-ref: "5148015afc952dbe0770aea4af44f7abaf921be8" - url: "https://github.com/ubuntu/yaru_widgets.dart" - source: git - version: "1.0.5" + name: yaru_widgets + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.6" sdks: dart: ">=2.16.0-100.0.dev <3.0.0" flutter: ">=2.8.0" diff --git a/pubspec.yaml b/pubspec.yaml index 2748464a..cada1333 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -33,16 +33,11 @@ dependencies: provider: ^6.0.1 rive: ^0.8.1 safe_change_notifier: ^0.1.0 - scrollable_positioned_list: ^0.2.0-nullsafety.0 udisks: ^0.3.0 upower: ^0.6.2 - yaru: - git: - url: https://github.com/ubuntu/yaru.dart + yaru: ^0.2.2 yaru_icons: ^0.1.2 - yaru_widgets: - git: - url: https://github.com/ubuntu/yaru_widgets.dart + yaru_widgets: ^1.0.6 flutter_svg: ^1.0.0 flutter_spinbox: ^0.8.0 http: ^0.13.4