Commit graph

1347 commits

Author SHA1 Message Date
Joris Pelgröm 3915ec6d8f
Automatically fix broken registrations/webhooks (#3875) 2023-09-19 15:38:50 -04:00
Joris Pelgröm 2c20baf0f5
Add camera tile to Wear OS (#3870)
* [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
2023-09-17 16:57:33 -04:00
Joris Pelgröm 8d4822a23d
Thread debug log: make extended PAN ID more readable (#3868) 2023-09-17 16:56:15 -04:00
Daniel Shokouhi 9ece6c7c28
Only use the base URL during onboarding if the URL is Nabu Casa (#3322)
* 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
2023-09-17 16:55:38 -04:00
Joris Pelgröm 50a8b9eee2
Don't force on/yes/y/off/no/n to booleans for service button (#3858)
- Relax string conversion to boolean as this breaks other use cases.
2023-09-12 21:51:13 -04:00
Joris Pelgröm fb1bdc05bb
Prevent GeofencingRequest exception on no zones (#3857) 2023-09-12 21:48:53 -04:00
Joris Pelgröm 4163e1465e
Add Android 14 device controls panel (#3855)
* 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
2023-09-12 21:47:57 -04:00
Daniel Shokouhi 3568a69101
Change log week of 9/8 (#3853) 2023-09-08 20:29:32 -04:00
Joris Pelgröm 21bfda0946
Thread sync BA ID troubleshooting updates (#3847)
* 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
2023-09-06 22:06:29 +00:00
RoboMagus 54d59828bc
Fix Duplicate Biometric prompts (#3842)
Mitigate duplicate biometric prompts caused by unexpected WindowFocusChanged events.
2023-09-06 08:32:15 -04:00
Daniel Shokouhi 8c612d402d
Change log week of 9/1 (#3836)
* Update change log week of 9/1

* Bump versions
2023-09-01 21:08:31 -04:00
Stefan Agner 5a9c3922b9
Fix Thread border agent IDs encoded as hex second instance (#3838)
* Fix Thread border agent IDs encoded as hex second instance

* Remove unnecessary toByteArray() and brackets

* Fix indentation
2023-09-01 21:07:50 -04:00
Joris Pelgröm b6687dc762
Shortcut path input improvements (#3831) 2023-08-31 19:53:32 -04:00
Daniel Shokouhi 90bf7369e2
Clean up some left over code after update to getIcon (#3827) 2023-08-31 19:53:10 -04:00
Joris Pelgröm a9b7dfdb68
Prevent entity ID typos throwing errors (#3829)
Prevent typos throwing errors for more info panel
2023-08-29 06:02:54 -04:00
Joris Pelgröm 02160c4f48
Fix Thread border agent IDs encoded as hex (#3828) 2023-08-28 17:44:49 -04:00
Daniel Shokouhi bb58a578dd
Use unavailable and unknown states consistently when dealing with sensors and entities (#3821)
* Use unavailable and unknown states consistently when dealing with sensors and entities

* Update more sensors

* Remove unused import
2023-08-28 17:43:25 -04:00
Joris Pelgröm 201931b91e
Improve handling my link when not logged in (#3826) 2023-08-28 17:42:20 -04:00
Daniel Shokouhi c11f2da26f
Update change log week of 8/25 (#3819)
* Update change log week of 8/25

* Review comments
2023-08-26 15:39:53 -07:00
Joris Pelgröm 6d4fa06545
Thread updates: add border agent ID, multiserver improvements (#3820)
* 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
2023-08-26 16:54:40 -04:00
Daniel Shokouhi 6c2e555e57
Various changes to entity usage (#3816)
* Various changes to entity usage

* Remove unneeded code

* String fixes

* Remove redundant string
2023-08-26 16:53:31 -04:00
Joris Pelgröm cad1bfa47e
Fix restoring custom fields in service button widget (#3813)
- 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.
2023-08-24 14:51:48 -04:00
Joris Pelgröm d115e7af56
Update deeplink support with multiserver: ask which to use (#3811)
- Ask the user which server to use, instead of assuming the most recently used, when using deeplinks with an app that has multiple servers configured
2023-08-24 14:44:08 -04:00
Daniel Shokouhi 1bdbd3f2ce
Android Auto: Set icon color when entity is considered in an active state (#3805)
* 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
2023-08-24 14:43:10 -04:00
Justin Bassett 30d0c61c3b
Update Changelog for 2023.8.3 (#3804)
* Update Changelog for 2023.8.3

* Update release version
2023-08-19 17:09:48 -04:00
Joris Pelgröm 7f14582909
Add 'toggle' tap action to entity state widget (#3798)
* [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
2023-08-19 19:24:44 +00:00
Daniel Shokouhi 477c299272
Catch errors when intent URI is not valid (#3799) 2023-08-19 14:37:34 -04:00
Joris Pelgröm f722de9561
Replace deprecated menu functions with MenuProvider (#3776)
* 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
2023-08-19 14:34:38 -04:00
Joris Pelgröm 01326db427
Discard notifications when not registered to prevent crash (#3784)
* Discard notifications when not registered to prevent crash

* Add same check to Wear
2023-08-11 19:22:29 +00:00
Daniel Shokouhi 2650ca72c6
Update change log week of 8/11 (#3780) 2023-08-11 15:46:25 +00:00
Joris Pelgröm cea54d6895
Stop TTS playback on new Assist pipeline run (#3778) 2023-08-11 11:31:17 -04:00
Daniel Shokouhi 256835a380
Add update sensors notification command to Wear OS (#3774) 2023-08-10 13:55:54 -04:00
Joris Pelgröm f90d80638e
Auto: reload entity registry, show loading when changing servers (#3769)
* Reload entity registry, show loading when changing servers

* Don't block collecting server IDs by using a Job
2023-08-08 16:05:33 -04:00
Daniel Shokouhi 6a8fd5989a
Hide all entities when we dont have domains to show, show empty message just in case (#3767) 2023-08-07 16:35:50 -04:00
Daniel Shokouhi 28b6d8ec32
Add support for alarm control panels in android auto (#3765)
* Add support for alarm control panels in android auto

* Check for domain when checking if there is a code

* Check that armed_away is a supported state

* Review comments

* Add some missing strings, match state casing with HA core
2023-08-07 15:53:03 -04:00
Daniel Shokouhi 2d439f11ea
Set car sensors state appropriately if sensor registers with unit of measurement (#3764)
* Set car sensor state appropriately if sensor registers with unit of measurement

* Stick to unavailable for better consistency
2023-08-07 15:50:21 -04:00
Daniel Shokouhi 0425d7cf97
Change log week of 8/4 (#3758) 2023-08-04 18:54:36 -07:00
Joris Pelgröm 49f3080b9e
Update ExoPlayer usage (#3760)
* Switch to StyledPlayerView for migration

* Migrate to media3 for ExoPlayer

* Replace deprecated code

* Restore/customize layout to ExoPlayer v2
2023-08-04 20:07:52 -04:00
Daniel Shokouhi 77141c254b
Keep track of adding domains to remove loader when user has no actionable entities (#3757)
* Keep track of adding domains to remove loader when user has no actionable entities

* invalidate when no domains added
2023-08-04 20:05:15 -04:00
Joris Pelgröm add1955901
Assist last used: remember STT and record proactively (before connected) (#3755)
Assist last used: remember STT and record before connected

 - For the last used pipeline for Assist, remember whether or not it supports STT input, and if it does start recording proactively/as soon as possible to avoid missing voice input while doing network checks.
 - Fix potential wrong server while sending voice data.
 - Fix voice input remaining active after getting an error response.
2023-08-04 10:59:27 -04:00
Daniel Shokouhi 56798849fe
Reset carInfo when our session is destroyed since data will be stale (#3754) 2023-08-04 10:55:00 -04:00
Joris Pelgröm e274b7e15e
Fix persistent connection notification command (#3753)
Fix persistent connection server command
2023-08-04 10:54:44 -04:00
Joris Pelgröm 91fdba5706
Handle empty array/invalid URL during discovery (#3747) 2023-08-01 12:57:05 -04:00
Daniel Shokouhi 0be1749f4c
Hide hidden entities from android auto domains (#3731)
* Hide hidden entities from android auto domains

* Fix import order
2023-08-01 12:56:49 -04:00
Justin Bassett b0deb6de77
Migrate deploys to Fastlane (#3745)
* Migrate deploys to Fastlane

* Couple minor fixes to onPush.yml

* Copy paste is hard
2023-08-01 11:08:12 -04:00
Justin Bassett 1a6c2b94d2
Initial work on migrating plugins to catalogs. (#3737)
* Initial work on migrating plugins to catalogs.

* Remove Enterprise Build profiling since we really don't use it.

* Use a common Java Version and sdk versions.

* ktlint

* Review comments.
2023-07-31 20:35:39 -04:00
Daniel Shokouhi 94413801ec
Hide some sensors from unsupported devices (#3740)
* Hide some sensors from unsupported devices

* Move UI manager to condition
2023-07-31 15:19:14 -04:00
Joris Pelgröm 644c4ad657
Invalidate Auto home on favorite state change (#3736) 2023-07-31 15:18:24 -04:00
Joris Pelgröm 670b17e76c
Apply various IDE code quality suggestions (#3734) 2023-07-31 15:17:42 -04:00
Daniel Shokouhi a111776e39
Allow binary sensors and sensors to be added to driving favorites (#3732)
* Allow binary sensors and sensors to be added to driving favorites

* Ensure sensors can still be navigated to

* Review comments
2023-07-31 15:14:58 -04:00