Commit graph

64 commits

Author SHA1 Message Date
James Rich
d2db37e0d4
refactor(R): Move R file imports to core UI module (#3159)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-09-23 01:59:39 +00:00
Phil Oliver
e604942beb
Launch system language picker for API 33+ (#3145) 2025-09-19 12:16:45 +00:00
James Rich
3c726457eb
repo(release): merge changes from 2.7.0 to main (#3070)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
Co-authored-by: DaneEvans <dane@goneepic.com>
2025-09-10 15:59:57 -05:00
DaneEvans
f8377589aa
Fix #2918 crash on hw model (#2927) 2025-08-30 03:00:51 +00:00
Phil Oliver
4be0cd7f81
Migrate UiState prefs to repo (#2775) 2025-08-18 21:44:44 +00:00
Phil Oliver
d574ba738d
Migrate 'MainActivity' prefs to repo pattern (#2770) 2025-08-18 18:20:23 +00:00
Phil Oliver
e29003c79d
Migrate custom emoji prefs to repo pattern (#2767) 2025-08-18 17:36:35 +00:00
Phil Oliver
2173a53567
Run Spotless (#2762) 2025-08-18 11:51:06 +00:00
James Rich
87e50e03ea
refactor: maps (#2097)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-08-13 17:51:19 +00:00
James Rich
a35e43d979
revert(service): reverts a bunch of changes to MeshService.kt (#2692)
Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-08-12 22:19:40 +00:00
DaneEvans
a832ed50c5
Fix/2207 node details respects units (#2374) 2025-07-07 13:57:34 +00:00
Łukasz Kosson
e781d6774b
feat: allow hiding offline and/or non-direct nodes from list and map (#2052)
Co-authored-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2025-06-09 12:44:53 -05:00
Robert-0410
cd9167f19f
refactor: Node detail work (#1836) 2025-05-10 08:03:14 -05:00
James Rich
53a8fd2579
feat: Add copy button to public/private key fields (#1782) 2025-04-25 16:39:35 -05:00
Robert-0410
7189d44b9c
feat: Updated the env metrics graph to use the latest graph feature (#1667)
refactor: removed unused constants and function
2025-03-13 15:29:50 -05:00
Robert-0410
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
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
13b615a470 chore: update license header 2025-01-02 07:00:51 -03:00
Robert-0410
16a8503207
refactor: Line breaks for time separations linked to TimeFrame (#1502) 2024-12-23 07:34:22 -03:00
andrekir
74497488a7 refactor: remove getString() from RadioConfigViewModel 2024-12-22 06:34:19 -03:00
Robert-0410
06bf9e5ecd
feat: device metrics time breaks (#1456)
* The battery line is only drawn from point to point when we don't have a significant break in time.

* Implemented GraphUtil.plotPoint

* Implemented GraphUtil.createPath

* Added licence to GraphUtil.kt.
2024-12-11 11:48:15 -03:00
Andre K
3c581f81a8
refactor: migrate MessagesFragment to Compose (#1444) 2024-11-30 23:20:09 -03:00
andrekir
6230f13bff refactor: add custom formatting to LocalStats fields 2024-11-26 09:00:44 -03:00
andrekir
1219d3037e chore: add GPL-3.0 license headers to source files 2024-11-26 08:54:18 -03:00
andrekir
c4b07af408 feat: add EnvironmentMetrics distance, lux, wind and weight to node detail
closes #1399
2024-11-23 07:16:35 -03:00
andrekir
b053f1afda refactor: extract map defaults to MapViewWithLifecycle 2024-11-09 05:34:14 -03:00
Andre K
227c65f191
feat: node map position history log (#1384) 2024-11-06 11:00:38 -03:00
andrekir
eea62e6533 feat: add map ScaleBarOverlay 2024-11-04 17:52:27 -03:00
andrekir
c6cc33e16c refactor: extract MapView extensions from MapFragment 2024-11-04 17:50:34 -03:00
andrekir
d4137a7dc4 refactor: scale requiredZoomLevel() by 0.8 to improve fit 2024-11-04 12:57:00 -03:00
andrekir
fe56d257f5 chore: add detekt formatting rule set
https://detekt.dev/docs/next/rules/formatting/
2024-10-14 07:56:29 -03:00
Robert-0410
3473ef343a
Small improvement to the pi approximation (#1292) 2024-10-08 07:10:34 -03:00
andrekir
83dc389d6d refactor(NodeItem): replace NodeInfo with NodeEntity 2024-09-21 16:47:20 -03:00
andrekir
2f7502d5ad chore: anonymize ConfigProtos.Config logs 2024-09-19 18:17:30 -03:00
andrekir
ddad40a969 refactor: add more granular Position precision options
closes #1186
2024-08-18 08:32:20 -03:00
James Rich
1f05886873
Fix: Periodically update last heard time (#1178) 2024-08-04 07:47:48 -03:00
andrekir
bc05280988 refactor: remove Companion Device Pairing
https://developer.android.com/develop/connectivity/bluetooth/companion-device-pairing
2024-08-03 07:53:59 -03:00
andrekir
ca537becd1 fix: register Bluetooth and USB receivers using RECEIVER_EXPORTED flag
https://developer.android.com/develop/background-work/background-tasks/broadcasts#context-registered-receivers

Note from Step 4.:
"Some system broadcasts come from highly privileged apps, such as Bluetooth and telephony, that are part of the Android framework but do not run under the system's unique process ID (UID). To receive all system broadcasts, including broadcasts from highly privileged apps, flag your receiver with RECEIVER_EXPORTED."
2024-08-03 07:47:18 -03:00
andrekir
921ef709d6 refactor: use PendingIntentCompat for UsbManager 2024-07-25 18:24:03 -03:00
andrekir
e31b7d4911 chore: update targetSdk to API 34 2024-07-21 10:43:01 -03:00
andrekir
c8191a899b feat: add Chinese Traditional (zh-TW) locale and translations 2024-05-12 09:11:03 -03:00
Benjamin Faershtein
ff36b21298
fix: lastHeard 0 hour issue (#939) 2024-03-31 16:42:33 -03:00
andrekir
466fcc63fe refactor: limit message input by bytes instead of character length 2024-03-10 08:18:03 -03:00
Davis
248982d14c
Add elevation and number of GPS satellites to node info (#895)
* Move battery info to compose - always show voltage level and icons to match battery percentage
Use tool text in preview, rather than actually set text value
Simplify node info layout to avoid defining margins on everything

* Move node position to Compose

* Update hyperlink color to match previous value

* Use compose preview in layout editor

* Use compose preview in layout editor

* Add simple preview for use in layout

* Move last heard node info to Compose
Clean up layout of node info

* Move signal info to Compose and simplify bind

* Prevent long coordinates from colliding with signal info

* Move the rest of the node info card to compose
Breaks the blinking feature when navigating from chat
Wrap position to new line if overflow

* Adjust layout and text sizing to closer match original

* Use constraint layout for tighter display on busy nodes

* Construct environment metrics so that there aren't trailing spaces if current is zero

* Swap viewholder root for compose view rather than inflating layout
Fix padding lost when changing out view holder root
Intelligently update the list with only nodes that changed

* Remove unused method, and adjust replacement method to match the same decimal precisions as before

* Add elevation and number of GPS satellites to node info list
Add some extension functions for easier conversion between units and systems

* Dispose composition on recycle to avoid lingering spacing from previous layouts
Remove comments explaning adapter functionality
Remove unused methods

* Use previous string for denoting unknown node names

* Align properly if altitude but no signal info
2024-03-07 06:34:43 -03:00
andrekir
ac63e72233 fix: CompanionDeviceManager.EXTRA_DEVICE return types 2023-12-04 21:11:18 -03:00
andrekir
fcb65f0be1 refactor: improve CompanionDeviceManager handling 2023-11-29 05:55:45 -03:00
andrekir
f29d4e2309 refactor: extract Bluetooth and USB API methods to repositories 2023-11-17 08:46:54 -03:00
andrekir
0a47b8df3e refactor: handle MapView Lifecycle 2023-08-04 17:16:42 -03:00
andrekir
49617d2e19 fix: calculate download BoundingBox based on zoom factor
instead of calling `setZoom()` before/after `MapView.boundingBox` which can get out of sync and cause inconsistencies in the tile count.
fixes #670
2023-07-27 05:56:59 -03:00
andrekir
04e8a6a514 feat: add wake lock to map screen 2023-07-15 09:38:41 -03:00