* [WIP] Prepare camera snapshot tile
* Deduplicate refresh views
* Get/save tile config in the database
* Deduplicate haptic click, add to camera refresh
* [WIP] Camera tile settings UI
- Create UI to set camera tile settings
- Reuse shortcut tile settings activity as a general tile settings activity
* Rename camera snapshot tile to camera tile
* Cleanup: camera entities selection, empty state, preview image
- On initial load also create a list of camera entities to make it possible to select them without showing up elsewhere in the app
- Add text to empty state instructing the user to set a camera
- Update tile preview images
* Fix logged out state on missing tile config
* Force tile update on login
* Scale bitmap to fit inside screen size
- Scale the received image to a bitmap that does not exceed the screen size to ensure timely refreshes and prevent parcels that are too big
* Only use the base URL during onboarding
* Use HttpUrl Builder to construct proper URL
* Move variable to try/catch block
* Only apply logic to NC URLs as those do not have custom path
* Only parse the end of the URL
* Deduplicate code per review
* Prepare controls panel activity for Android 14
* Allow controls panel to work while locked
* UI to enable/disable controls panel
- Disable panel by default
- Add area to controls settings on Android 14 to enable/disable panel
* Panel server/path settings
- Add setting to choose which server and path to use for the panel
* Remove transition animation for panel
* experience -> mode
* Fix deleting orphaned Thread credentials
- Deleting orphaned Thread datasets (= datasets for servers that have been deleted for the app) actually deleted current datasets. No real harm except it's deleting stuff and adding it again.
* Log app added preferred Thread network details for debugging
* Always delete Thread datasets using placeholder on >=2023.9
* More detailed log for update app added dataset action
* Add/update/delete Thread credentials by border agent ID
* Multiserver: only keep one HA credential, handle credentials for deleted servers
- Make sure the app only stores one HA credential that matches the preferred credential for the server executing the sync.
- Create an 'orphaned Thread credentials' system to be able to delete credentials for servers that have been previously deleted.
* Fix minimal
- When reading service data from the database, make sure to also add custom fields.
- Fix RecyclerView not setting fields to empty when no value is present, potentially showing input from other recycled fields if the field doesn't have any value.
- Fix adding a new custom field destroying any input currently held in the views by using a specific insertion method instead of all changed, which will reset the values.
- Update to Kotlin 1.9
- Update to Compose 1.5 and Compose Wear 1.2, both depend on and are required for Kotlin 1.9. Compose Wear includes lazy classes moving to a different package so updated imports.
- Update to AGP 8.1.1 to remove compatibility warning
- Update Navigation Compose to 2.7.1 as it uses Compose 1.5 internally
- Update Accompanist to 0.32 as it uses Compose 1.5 internally
- Switch Room to KSP instead of kapt because this (latest stable) release doesn't work with Kotlin 1.9 otherwise. As a result, we no longer need to specifically enable incremental compilation.
* Android Auto: Set icon color when entity is considered in an active state
* Add link to frontend code for determing active state
* Add lawn_mower domain and a check on supported colored domains
* Split up isActive and state colored domains
* Update map screen
* [WIP] Widget tap action: toggle entity
* Add feedback on press and failure
* Share code for pressing on entities
* Align cover press action
- Toggle will stop if possible when opening/closing if supported so prefer toggle instead of open/close
* Toggle by default if supported
- Set the default tap action for supported entities to toggle instead of refresh
* Update widget description
* Squash merge Migrate to MenuProvider (#2974) by @NotWoods
* Merge fixes
* Update sensor detail fragment menu for multiserver
* Menu fixes/additions
- Add HelpMenuProvider to Android Auto favorites
- Fix notification history fragment having no view because of missing super call
- Fix crash in device controls view if a server that is offline is selected
* ktlint
* Simplify some code
- Undo formatting change in SettingsActivity
- Don't require each activity to convert the string to URIs if we can do it in one place
* Remove setHasOptionsMenu(false) usage