Skip to content

Comments

Compose migration#2175

Open
fluffyspace wants to merge 18 commits intoowntracks:masterfrom
fluffyspace:compose-migration
Open

Compose migration#2175
fluffyspace wants to merge 18 commits intoowntracks:masterfrom
fluffyspace:compose-migration

Conversation

@fluffyspace
Copy link

With help from my friend, Claude Code, I converted this project to Jetpack Compose and Material 3. I think this had to be done and is the future path of all Android projects, or they eventually die. I am aware that quantity of changed code is huge, but I also don't know better way to do it than all at once. And with every day passing without integrating this version, merge conflicts will be bigger and bigger, so I decided to publish it after a week from forking. I have been testing the app only by running it and testing the UI and connections, not by looking at code. And I haven't yet tested all possible scenarios. So there is high probability of bugs in this version.

I don't know what we should do next, whether to just merge it or continue developing it in this separate branch, or what. I wanted to create my own app for tracking location, but settled for redesigning this one because it's so much easier to just change things when it's already working. I am not a designer, just a programmer, but I did try to make UI as pretty as possible from my experience of working closely with design team on my job.

ikodbapc and others added 13 commits January 13, 2026 14:33
- Add ContactBottomSheet.kt: Compose ModalBottomSheet for contact details
  - Contact info display: avatar, name, timestamp, geocoded location
  - Details grid: accuracy, altitude, battery, speed, distance, bearing
  - Action buttons: Request Location, Navigate, Clear, Share
- Add MapFabs.kt: Compose FABs for map layers and my location
  - Dynamic icon based on MyLocationStatus (disabled, available, following)
- Update MapActivity to use Compose overlay via ComposeView
- Simplify ui_map.xml, remove FABs and bottom sheet related views
- Delete AutoResizingTextViewWithListener.kt (no longer needed)
- Delete ui_contactsheet_parameter.xml (replaced by Compose)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove legacy XML layouts (ui_map, ui_preferences, row layouts)
- Remove unused menu XML files
- Delete legacy adapters (ContactsAdapter, WaypointsAdapter)
- Remove DrawerProvider and base RecyclerView classes
- Add MapOverlayContent Compose component
- Add ComposablesEntryPoint for Hilt DI
- Update screens to use Compose navigation
- Remove tmpclaude temp files from tracking

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
# Conflicts:
#	project/app/src/main/java/org/owntracks/android/ui/map/MapActivity.kt
#	project/app/src/main/res/layout/ui_map.xml
@fluffyspace
Copy link
Author

I am attaching a few screenshots to catch your attention :)

Screenshot_20260120_1815011 Screenshot_20260120_1816101 Screenshot_20260120_1815431 Screenshot_20260120_181527

fluffyspace and others added 3 commits January 20, 2026 18:56
- Always get fresh MQTT configuration on reconnect to check current WiFi
  status, fixing issue where mobile data would use cached local network config
- Track current endpoint host in EndpointStateRepo and display it in
  notification instead of always showing remote host from preferences
- Trigger immediate reconnect on SSID change even when disconnected or in
  error state, instead of waiting for backoff timer
- Trigger immediate reconnect when network becomes available while in error
  state

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@growse
Copy link
Collaborator

growse commented Feb 1, 2026

This is deffo on the to-do list, but this pr is far too large....

@fluffyspace
Copy link
Author

I agree it's very large. I understand and won't mind if you don't merge it, I made it for myself. It's been serving me great, so thank you for that!

ikodbapc and others added 2 commits February 5, 2026 14:56
Add local state variables for all editable text preferences
to ensure UI recomposition when values are modified. This
mirrors the pattern already used for toggle preferences.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants