Commit Graph
2579 Commits
Author SHA1 Message Date
Joshua Soberg ef64df3515 fix: Stop overriding surface/onSurface in theme (#1605)
Fixes #1604
* Stop overriding surface/onSurface in theme

* Wrap preview in AppTheme to get a better representation of what it'll look like on-device
2025-02-22 14:06:56 -06:00
Joshua Soberg 8fee9dbc45 fix: Accommodate large font for node filter (#1602)
Fixes #1561

* Add large font preview

* Adjust default min size such that the filter input will accomodate larger fonts. Also, align the dropdown icon and use body1 typography for input text

* Add license and newline to fix detekt issues
2025-02-22 12:57:30 -06:00
Robert-0410andJames Rich 85d6e0ccdf feat: Graphs Blue Color (#1597)
* Changed the humidity color on the graph to the same blue used for current in the power graph.

* Refactor: Centralized the blue used in both the Env and Pow metrics in CommonCharts.kt.

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-02-22 09:39:46 -06:00
Joshua Soberg 5430169830 Add an animation to user node list items to animate on details expansion (#1590) 2025-02-16 14:37:49 -06:00
James Rich 8ddd553753 chore: update proto submodule to v2.5.22 (#1589) 2025-02-16 10:48:30 -06:00
Joshua Soberg ed52a5360f Apply a background to the filter search sticket header so that list items don't show behind it when scrolling (#1588) 2025-02-16 10:22:06 -06:00
Joshua SobergandJames Rich 37489604f0 Introduction of stable Compose UI State and some simple animations in Debug Panel (#1575)
* Add dependency to KotlinX immutable collections

* Build a Compose-stable UI state vs using a database model. Move appropriate mapping logic for converting database model -> UI state into the view model. Introduce animations to new log placement and automated scroll.

* Center the top card row vertically

* Move log message generation into separate method

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-02-16 06:09:41 -06:00
Ken PiperandJames Rich e15ad23c46 feat: Initial implementation of adding nodes to favorites (#1520)
* Implement initial support for adding and removing nodes from favorites

* Make favorite nodes' names show up bold in the node list

* Forgot to add this here when I was fixing the previous merge conflicts. Whoops!

* Make detekt happy

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-02-16 06:02:02 -06:00
James Rich 584fe8d6f8 fix: limit quick chat append, prevent duplicates (#1522)
Limits quick chat append to 200 characters and prevents duplicate appends.
Also sets a constant for the max message size.

fixes #1511
2025-02-16 05:51:54 -06:00
Robert-0410andJames Rich b067a0c0b3 feat: Power graph (#1556)
* Refactor: We can draw the horizontal lines for the graphs independent of min and max entries.

* Added navigation to the PowerMetrics log with a skeleton screen.

* Drew channel 1 voltage.

* Refactor: Assigned colors for the data within the enum instead of a list-ordinal combo.

* Plotted Ch1 current line.

* Refactor: Did not need the parameters being used to get the desired ui in the TimeLabels composable.

* Added a row to help distinguish between units.

* Refactor: MetricsTimeSelector.kt to SlidingSelector.kt; the new version allows for generic options.

* Added a sliding selector to choose between power channels and changed the legend data to instead display current and voltage.

* We now plot the line for which the user has selected a power channel option.

* Don't need the current line to be dotted anymore.

* Don't think we need to display an info dialog for voltage and current.

* Wrote card to display the power channel data entries.

* detekt

* Refactor: current color change to accommodate the themes better

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-02-15 22:37:05 -06:00
Joshua SobergandJames Rich 24abd1ac4a fixes #1557: Filter out emojis when creating short names (#1578)
* Filter out emojis from text when finding initials

* Confirm non-English non-emoji unicde isn't filtered

* Remove unused example unit test

---------

Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-02-15 22:25:35 -06:00
James Rich e11d726e27 feat: Add RAK2560 hardware model and graphic (#1543)
Adds the RAK2560 to the list of supported devices and associates it with the corresponding vector drawable.
2025-02-15 22:17:57 -06:00
Ken Piper 86128a19c8 Add missing units to node details info cards 2025-02-15 22:07:49 -06:00
andrekir a3a3958dfb refactor: move NavGraph to navigation package 2025-01-11 09:29:48 -03:00
andrekir e196bfb683 refactor: encapsulate NodeDetail navigation 2025-01-11 09:29:48 -03:00
andrekir 0d5157eb36 refactor: extract Routeto navigation package 2025-01-11 09:29:48 -03:00
andrekir ad9a3a5e49 refactor: move RadioConfig files to separate package 2025-01-11 08:02:54 -03:00
andrekir 7794c08190 refactor: replace Scaffold with internal component 2025-01-06 19:50:25 -03:00
andrekir 1c863f35f6 refactor: migrate ShareFragment to Compose 2025-01-06 19:16:40 -03:00
andrekir 0635b25e1c refactor: remove deprecated AppCompatTheme 2025-01-06 18:38:49 -03:00
andrekir 7bb0d424ad refactor: group power metrics by channel 2025-01-05 21:41:22 -03:00
andrekir c1ca8f919d fix: switch preference bottom padding 2025-01-04 16:20:16 -03:00
andrekir 41b067bad2 chore: update Crowdin localization strings 2025-01-04 15:48:15 -03:00
andrekir e73a67909a refactor: replace message chip with user avatar 2025-01-04 15:34:26 -03:00
Robert-0410 70a08c9d31 feat: Scrollable Signal Chart (#1505)
* Removed repeated calculation.

* Centralized the radius used to plot points and draw lines within GraphUtil.kt.

* Updated the signal metrics chart to use the scroll features.

* SignalMetricsChart long method warning suppression.
2025-01-03 09:02:32 -03:00
andrekir d14a8de78e chore: update Crowdin localization strings 2025-01-02 08:13:08 -03:00
andrekir 5dcfe0e68a feat: add ROUTER_LATE role description 2025-01-02 08:05:40 -03:00
andrekir cf95dd0711 chore: update device_hardware.json 2025-01-02 07:39:54 -03:00
andrekir 13b615a470 chore: update license header 2025-01-02 07:00:51 -03:00
Andre K 60e7e18116 feat(config): implement excluded modules validation (#1460)
* feat(config): implement excluded modules validation

* feat: hide excluded configs from metadata

* refactor: save local metadata from WantConfig

* refactor: delete metadata from deleted nodes

* fix: always request metadata for admin routes

* feat: show node firmware when metadata is available

* refactor: rename filter function

* feat: add `ServiceAction` request metadata
2025-01-02 06:38:33 -03:00
andrekir bdefbc3ce2 chore: update proto submodule to v2.5.18 2025-01-02 06:30:38 -03:00
Robert-0410 16a8503207 refactor: Line breaks for time separations linked to TimeFrame (#1502) 2024-12-23 07:34:22 -03:00
Robert-0410 45e50b829a refactor: 24H and 48H intervals (#1500) 2024-12-23 07:26:58 -03:00
andrekir ed45d0ff96 fix: replace TODO with debug message for unhandled admin payload 2024-12-22 07:14:53 -03:00
andrekir e924f274f1 fix: allow auto-capitalization for message input field 2024-12-22 07:14:52 -03:00
andrekir 93ffc5f838 chore: update device_hardware.json 2024-12-22 07:05:02 -03:00
James Rich f3c59710f5 fix: Use case version of Heltec V3 and RAK4631 board images (#1497) 2024-12-22 07:04:19 -03:00
James Rich 43561cabe9 refactor: Improve device details layout (#1489)
- Device details section visible only if device hardware is available.
- Added spacing between icon, label, and value in node details rows.
- Right-aligned the values in node details rows for better readability.
2024-12-22 06:56:40 -03:00
Andre K 5854f91b7a feat: add Serbian (sr) locale and translations (#1499) 2024-12-22 06:47:54 -03:00
andrekir 74497488a7 refactor: remove getString() from RadioConfigViewModel 2024-12-22 06:34:19 -03:00
andrekir b0ccde9117 feat: update Crowdin localization strings 2024-12-18 08:30:16 -03:00
andrekir 6daf3d8508 feat: update device_hardware.json 2024-12-18 08:29:31 -03:00
andrekir 38c61a1803 chore: update proto submodule to v2.5.17 2024-12-18 08:16:31 -03:00
Tavis 1f0092bbe1 fix: handle GATT_CONNECTION_TIMEOUT status in Bluetooth connection state change (#1463)
* Trap code 147 on BT disconnect

If we trap code 147 on BT disconnect and then call lostConnection(), the app will attempt reconnect every 30 seconds and autoreconnect works even after prolonged disconnect.
2024-12-18 08:14:16 -03:00
andrekir 8226207dbf fix: node key status dialog public key selection 2024-12-17 12:31:16 -03:00
andrekir 33f86dcf61 feat: add user longName and userId to messages
closes #1479
2024-12-17 12:27:34 -03:00
andrekir 5693874db1 fix: message text is not always cleaned when sending
fixes #1474
2024-12-17 12:25:54 -03:00
andrekir 193ee727b5 feat(serial): send heartbeat to keep connection alive
closes #456
2024-12-14 05:59:41 -03:00
andrekir 22fafe8033 refactor: remove protobuf dependency from HardwareModel 2024-12-13 16:00:38 -03:00
andrekir 0f9c1fc4bf feat: update Crowdin localization strings 2024-12-11 12:31:47 -03:00