aboutsummaryrefslogtreecommitdiffstats
path: root/lib/presentation/screens/settings
AgeCommit message (Collapse)AuthorFilesLines
2024-01-23Connect audio settings buttonScott Murray2-25/+12
Rework to connect the audio settings button on the media pages to the appropriate settings page, and have the back button go back to the expected previous page. To enable this, the global AppState provider was reworked to track the previous page and add explicit update and back member functions. Bug-AGL: SPEC-5030 Change-Id: I5858d1b1bf511a184b6538b2ce8c183b00c24fc6 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2024-01-04Configurable units fixesScott Murray3-7/+141
Notable changes: - Add pressure unit to the units model. - Add tire pressure unit configuration page under settings. - Rework the VSS client, provider, and the associated handling in the vehicle and audio state providers to make the signal updating code reusable for processing the result of VAL API get commands. - Add logic to get the initial values of the used VSS signals so the initial application state looks sane in demo scenarios. - Add VSS signal support to the units provider so that changes will be pushed out for e.g. IC use. - Fix pressure unit use in various widgets. - Fix up range calculation for dashboard to correctly account for units and the incoming VSS value being in meters. - Fix some unit naming inconsistencies around capitalization. Bug-AGL: SPEC-5031, SPEC-5032 Change-Id: I33ac735dfbe35283bd30c92aa157cbdb7af1837c Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2024-01-03Initial radio implementationScott Murray1-8/+6
Notable changes: - Add radio gRPC API protobuf definitation and generated files. - Reworked existing single gRPC APIs library to split it into per-API libraries to avoid name collision issues. - Add radio gRPC client class and associated radio state class and RiverPod providers. - Split media controls and play list table classes into media player and radio specific versions to facilitate customization and wiring up their appropriate backends in a straightforward fashion. Some potential rationalization of styling widgets may be done as a follow up to avoid some duplication. - Added radio configuration and presets loading. The presets will be populated with the contents of a radio-presets.yaml file from the configured location, the default location is the /etc/xdg/AGL/ics-homescreen directory. - Implemented FM radio player against the radio gRPC API. For the sake of expediency, no attempt has been made to make the player able to handle AM band support. - Reworked media page navigation state so that active player is restored when coming back to the page. Logic has been added to start/stop the radio on navigating to or leaving the FM radio sub-page. This will potentially be reworked before CES to work with the pause/stop button present on the other pages. - Started pruning down global exports.dart a bit to remove files only used in a specific page/hierarchy, starting with media. Bug-AGL: SPEC-5029 Change-Id: I1ae0aca4a7a8218e69e4286c863f01509a1cccb7 Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2023-12-18Implement audio settingsScott Murray5-83/+236
Changes: - Rework KUKSA.val "VAL" gRPC API implementation to separate it from the vehicle model + notifier, and more easily allow using it from other notifiers. - Move volume handling from the vehicle model + notifier to the audio set for clarity. - Wire up the new VSS audio signals in the audio notifier. The "rearFront" variable naming has been changed to "fade" in several places to match expected terminology. - Add a balance slider to the audio settings page. - Change the min/max labels on the fade slider to be Text instead of Icon's since we do not have the equivalent to use with the balance slider, and text seems like it'd be what you would want for any potential future internationalization. - Rework configuration file to be usable from anywhere via a RiverPod Provider instead of tied to the vehicle notifier code, and shifted the background and hybrid animation flags to be handled with it. This change removes the built-in asset with defaults in favor of maintaining the defaults for the ICS environment in the AppConfig and KuksaConfig classes, with a goal of avoiding the need for using async methods in the config provider. - Change some notifiers from using StateNotifier to the RiverPod 2.0 Notifier class for improved flexibility. The other notifiers will be updated in future work. - Added select's to several ref.watches in the new hybrid animation code to avoid unnecessary repaints. - Fix several spelling issues in method and parameter names across the codebase. Bug-AGL: SPEC-5001 Change-Id: Iefae417fa870405d659303497d96e519e6b6d1de Signed-off-by: Scott Murray <scott.murray@konsulko.com>
2023-11-28Update HVAC fan.Lisandro Pérez Meyer1-1/+0
This also removes commented out code. Original by Sabin Sajeevan <ssajeevan@ics.com>. Bug-AGL: SPEC-4971 Change-Id: I31c3b3046f6e3bdd9cc641d403467eda11144f31 Signed-off-by: Lisandro Pérez Meyer <lpmeyer@ics.com>
2023-11-21Date time updatesLisandro Pérez Meyer4-62/+275
Original from Sabin Sajeevan <ssajeevan@ics.com> Bug-AGL: SPEC-4971 Change-Id: I7a961e57715fdbf8b05f54dfcf8e56159cadd068 Signed-off-by: Lisandro Pérez Meyer <lpmeyer@ics.com>
2023-11-17Bug fixes. Fixed Fan mode selection off state bug.Lisandro Pérez Meyer4-69/+234
Fixes ICS' internal AGL-48,49,50. Original from Sabin Sajeevan <ssajeevan@ics.com> Bug-AGL: SPEC-4971 Change-Id: I66c875551a69a1b53eee2d6e1d3fa725b20ff41b Signed-off-by: Lisandro Pérez Meyer <lpmeyer@ics.com>
2023-11-14Initial cleanup push.Lisandro Pérez Meyer23-0/+3104
Based on agldemo2024 on commit 2a5dc04d801134338150c3f6afc67eaa65599763 Disable device preview. Disable Lottie animation. The original commit was b3c493c340fcb4bb0a937692838fc830bec3e9ea but I am just keeping this change, because the json did not really needed to change. I think. Signed-off-by: Lisandro Pérez Meyer <lpmeyer@ics.com>