Commit graph

2488 commits

Author SHA1 Message Date
andrekir
76454cc802 fix: missing radio config import/export buttons 2024-12-03 09:21:06 -03:00
andrekir
49ac8a432d fix: hide keyboard on send text message 2024-12-03 09:17:54 -03:00
andrekir
96087cca59 refactor: move message files to separate package 2024-12-03 09:14:32 -03:00
James Rich
2234f5a713
feat: add emoji reactions to message bubbles (#1421)
* Add tapback emojis to message bubbles

Added TapBackEmojiItem composable to display tapback emojis.
Included it in MessageItem composable for incoming messages.
Added a FlowRow to show tapback emojis below the message bubble.

* feat: Add EmojiPicker View

* feat: show emojis for local messages

* feat: Add emoji tapbacks to messages

This commit introduces the ability to send and receive emoji tapbacks for messages.

- Adds emoji and replyId fields to DataPacket.
- Adds emoji tapback support to the MeshService
- Modifies UIState to handle emojis in message lists.

* feat: store tapbacks in database

Store tapbacks in the database and display them in the message list.
- Add a new table to the database to store tapbacks.
- Add a new DAO method to insert and retrieve tapbacks.
- Update the message list UI to display tapbacks.

* refactor: relation db and other changes

---------

Co-authored-by: Andre K <andrekir@pm.me>
2024-12-03 08:57:35 -03:00
Robert-0410
b3f4929cf4
feat: Scrollable x axis (#1445)
* Started horizontal scrolling for DeviceMetrics. Drawing lines based on the TimeFrame and setting the dp.

* Wrote YAxisLabels(), it will replace the Y labels portion of the ChartOverlay(). The composable works for either side of the graph.

* Wrote HorizontalLinesOverlay(), it will replace the horizontal lines portion of the ChartOverlay().

* Updated the data points to use their actual x values.

* Based the width of the scrollable graph on time.

* Added a date label to the TimeAxisOverlay.
2024-12-01 07:22:54 -03:00
Andre K
3c581f81a8
refactor: migrate MessagesFragment to Compose (#1444) 2024-11-30 23:20:09 -03:00
andrekir
5d3b36532f refactor: move dialog into NodeKeyStatusIcon component 2024-11-30 21:10:54 -03:00
andrekir
f4c24dbfff fix: enforce SignalInfo single-line layout
closes #1441
2024-11-30 14:19:39 -03:00
draen
e412faecb9
feat: Copy message to clipboard (#1443) 2024-11-30 14:19:01 -03:00
Espié.R
d76eac258b
feat: add text/plain intent to send message (#1389) 2024-11-30 14:12:08 -03:00
andrekir
716a3f535f refactor: decouple NavGraph from ViewModel and NodeEntity 2024-11-30 08:05:48 -03:00
andrekir
6678df78b0 fix: text messages sent from connected standalone devices 2024-11-30 07:43:56 -03:00
andrekir
44d195a4a5 refactor: Messages navigation to single contactKey argument 2024-11-28 08:45:44 -03:00
andrekir
1c42bd262f fix: notification intents with immutable flags 2024-11-28 08:41:58 -03:00
andrekir
174a4d0771 refactor: ensure node database flows on IO thread 2024-11-26 09:57:23 -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
4e9055c9b1 fix: update channel URL to match channel selection 2024-11-25 20:09:50 -03:00
Tom Fifield
65d832ef99
Change max message length to 200 (#1429) 2024-11-25 19:57:10 -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
80f8f2a591 refactor: implement repository pattern replacement for AIDL methods 2024-11-21 20:30:25 -03:00
andrekir
f73d909cd0 refactor: consolidate QR code scanning methods 2024-11-21 10:32:37 -03:00
Robert-0410
75003bb6f0
feat: Signal Quality in NodeItem (#1425)
* Composable that provides the snr and rssi within a row, along with docs for the two exposed functions in LoraSignalIndicator.kt.

* Fancied up the signal data within the NodeItem.
2024-11-21 07:52:54 -03:00
andrekir
e33cf85df6 refactor: migrate DebugPanel to Compose 2024-11-19 17:07:51 -03:00
andrekir
91c8c7809a fix: six-month comparison logic in PositionLog 2024-11-19 15:18:51 -03:00
Andre K
475e9fc22c
refactor: migrate QuickChat to Compose (#1419) 2024-11-19 11:59:28 -03:00
andrekir
4855576248 refactor: ensure NetworkRepository flows on IO thread 2024-11-19 10:53:27 -03:00
andrekir
c70b0d512a fix: remove SelectionContainer from NodeItem
Removes `SelectionContainer` from `LazyColumn` items causing a crash when calculating positions between nodes that are no longer part of the same layout hierarchy, resulting in:

Fatal Exception: java.lang.IllegalArgumentException: layouts are not part of the same hierarchy
       at androidx.compose.ui.node.NodeCoordinator.findCommonAncestor$ui_release(NodeCoordinator.kt:1210)
...

closes #1408
2024-11-19 10:43:17 -03:00
James Rich
158e67f859
Fix: Deduplicate position logs (#1417)
Deduplicate position logs by filtering out duplicates based on time and location.
2024-11-19 10:41:33 -03:00
James Rich
fb04805255
Fix: Show 'unknown' for position logs older than 6 months (#1416)
* Fix: Show 'unknown' for position logs older than 6 months

Display 'unknown' instead of the timestamp for position logs older than 6 months. This addresses an issue where unknown timestamps were incorrectly shown as 1970 (unix epoch).

* Fix: make detekt happy

* Replace "Unknown" with "Unknown Age" in position logs

The text displayed for positions older than six months in position logs has been changed from "Unknown" to "Unknown Age". This update adds clarity and context to the age of positions in the log.
2024-11-19 10:29:44 -03:00
andrekir
ee75ba3392 feat: pass users preferred tile source to MapViews 2024-11-15 07:10:01 -03:00
andrekir
aeedd4de43 feat: add tile source parameter to MapViewWithLifecycle 2024-11-15 06:52:45 -03:00
andrekir
30b7cc90ce feat: add new NeighborInfo config 2024-11-15 06:51:32 -03:00
andrekir
02af81aeb0 fix: nodelist sort by viaMqtt 2024-11-15 06:49:40 -03:00
Robert-0410
013e3de792
refactor: Conducting time filter at the component lvl to avoid metric nav cards from being disabled when we don't have recent data (#1402) 2024-11-13 07:24:40 -03:00
Abdelkader Boudih
f6af9b8782
fix: rename to quadraticTo for consistancy (#1397) 2024-11-13 07:21:22 -03:00
Andre K
a6e7a0ef4f
feat: add meshtastic service type to mDNS service discovery (#1401) 2024-11-12 17:14:58 -03:00
andrekir
d324f77d63 refactor: simplify ElevationInfo component 2024-11-12 09:40:57 -03:00
andrekir
f38a7ac0de refactor: maintain NodeMenu item order for consistency 2024-11-12 09:24:37 -03:00
andrekir
cfdb245da2 refactor: convert connectionState to StateFlow 2024-11-12 09:15:45 -03:00
andrekir
a980441fd1 refactor: move ignoreIncoming logic to ViewModel 2024-11-12 08:47:17 -03:00
andrekir
417523967e fix: move device list sorting to ViewModel 2024-11-11 18:31:26 -03:00
Robert-0410
7e54ad950c
feat: Metrics time selection (#1396) 2024-11-11 17:54:26 -03:00
andrekir
5480174ec9 fix(config): respect enabled parameter for Send button 2024-11-11 17:27:03 -03:00
andrekir
683b354dd4 feat: add optional summary text to SwitchPreference 2024-11-11 17:08:24 -03:00
andrekir
1d992d5caf fix: convert SNR values to Float for decimal precision 2024-11-11 16:41:06 -03:00
andrekir
1ae65ef267 refactor: pass nav args to ViewModel using SavedStateHandle 2024-11-10 07:45:25 -03:00
andrekir
296f1944b7 refactor: migrate Compose navigation to type-safe args 2024-11-10 07:45:25 -03:00
andrekir
e72940245c feat: persist node filters to SharedPreferences
closes #1392
2024-11-10 06:18:21 -03:00
James Rich
2d2d94924b
refactor: Migrate Node dropdown menu to Compose (#1386) 2024-11-09 08:14:40 -03:00