Age | Commit message (Collapse) | Author | Files | Lines |
|
Rework the high-level App & AppView widgets a bit to allow
conditionally displaying a simple fixed pattern if the
HOMESCREEN_DEMO_CI environment variable is set to anything
other than "0". The pattern displayed matches what the
Qt homescreen shows for this to allow the CI test to be
common.
Bug-AGL: SPEC-5203
Change-Id: I36ed77c91304e3b6cdbce6a7350831d52d20d378
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
(cherry picked from commit 25b6a079d5fe9c1365d776298ae5230a4de1ba16)
|
|
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>
|
|
Notable changes:
- Added dart_mpd package as a dependency.
- Added MPD client class and associated provider.
- Added MPD client configuration to the configuration file for
potential usecases where MPD may not be available locally.
- Added playlist, play state, art, etc. providers for use in the
mediaplayer front end UI.
- Reworked MediaPlayer classes to wire up MPD client backend.
- Removed volume slider from the bottom of the media pages to
make more room for playlist / preset tables, as only being
able to show 3 entries in each was not usable in practice.
- Reworked media player mocked up position indicator into an
actual slider control, and reworked the radio slider styling
to match for better UI consistency.
- Reworked media player and radio playlist / preset tables to
attempt to have them layout at the same location and add an
always visible scroll bar. The scroll bars currently have a
layout issue with respect to scroll track size that does not
seem to have an obvious fix. They are usable for now, and
further investigation will be done when time permits.
- Wired up play/pause button on the side volume control via a
new set of play state and controller providers.
Bug-AGL: SPEC-5028, SPEC-5029
Change-Id: I87efecc58b4e185443942eb32ff8148ebcd675c3
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
|
|
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>
|
|
Changes:
- Add required agl-shell and applauncher gRPC API source and
generated files.
- Remove unused deprecated databroker gRPC API files as cleanup.
- Add app launcher helper object and associated RiverPod provider.
The implementation is based on code from the old Flutter
homescreen. There will likely be follow up work to use the
recent changes to the agl-shell gRPC API to handle display
setting for applications needing remote displays.
- Wire up application enumeration and starting in the app page.
A placeholder generic application icon has been added that will
be used for the external applications for now, as the SVG icons
being used with the old homescreens are not really suitable.
- Wire up activating the homescreen again if the bottom panel is
touched after an external application has been started.
Bug-AGL: SPEC-5026
Change-Id: I01de4760cfd098d3b5f2e6843ad9103a8ea87935
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
|
|
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>
|
|
Changes:
- Fix sets of HVAC and volume control signals to update the
actuator target value instead of the current value. With the
KUKSA.val ecosystem, it is the actuator implementation / backend
that updates the current value after actuating.
- Add authorization token to subscribe request metadata if it is
present.
- Switch type used for engine speed to double to match VSS signal
definition. This fixes receiving updates, and avoids needing
to convert types as well.
- Added logic to push out the HVAC fan speed setting and handle
external updates.
- Remove unused core/constants/paths.dart file to avoid confusion
over VSS signals used and their variable naming.
Bug-AGL: SPEC-4999
Change-Id: Ifbf69af25e3c563e9c707a4145089e4242b89bcd
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
|
|
Rework Kuksa databroker configuration to also read a configuration
yaml file from /etc/xdg/AGL/ics-homescreen.yaml at runtime to allow
overriding the built-in default configuration. The latter is left
as is with the addition of an explicit disabling of TLS, to still
match the internal test setup at ICS. The AGL build will supply
a runtime configuration that enables TLS and an authorization token.
Additionally:
- the ValClientHelper constructor has been changed to take the
stub and authorization token as arguments to allow authorization
with the VAL API requests. The channel argument has been
removed since it is not used, only the stub is.
- the apparently unused vss_provider.dart source file has been
removed to avoid potential confusion.
Bug-AGL: SPEC-4969
Change-Id: Ic7b867eaf565ef22f2e70df0afe7b5272b604d04
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
|
|
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>
|