Commit graph

1803 commits

Author SHA1 Message Date
Joris Pelgröm 8d3c2609fe
Bump compile SDK to 34 (Android 14) (#3782) 2023-08-19 14:34:56 -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
dependabot[bot] eb195b6687
Bump org.jlleitschuh.gradle.ktlint from 11.5.0 to 11.5.1 (#3771)
Bumps org.jlleitschuh.gradle.ktlint from 11.5.0 to 11.5.1.

---
updated-dependencies:
- dependency-name: org.jlleitschuh.gradle.ktlint
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-08 16:05:48 -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
Joris Pelgröm 73bc7b01fa
Update strings for sentence-style casing (#3768)
* Update strings for sentence-style casing

* Don't remove strings

* Update Companion App
2023-08-07 20:17:09 +00:00
dependabot[bot] a10d9149e5
Bump io.sentry:sentry-android from 6.27.0 to 6.28.0 (#3766)
Bumps [io.sentry:sentry-android](https://github.com/getsentry/sentry-java) from 6.27.0 to 6.28.0.
- [Release notes](https://github.com/getsentry/sentry-java/releases)
- [Changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-java/compare/6.27.0...6.28.0)

---
updated-dependencies:
- dependency-name: io.sentry:sentry-android
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 15:54:55 -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
Daniel Shokouhi ed677e8c97
Change SDK min back to 21 for main app (#3750) 2023-08-01 22:23:07 -04:00
Joris Pelgröm 8be42b08fb
Don't create release number/notes for PRs (#3749) 2023-08-01 20:20:01 +00:00
Joris Pelgröm bf0479a46f
Update release notes action for new release model (#3748)
* Update release notes action for new release model

* Include newlines

* Switch to actions/github-script

* Fix token input

* Named arguments, get owner/repo from context

* Return specific data and update vars

* Last fixes, hopefully

* Set result encoding to string

* Prevent echo from printing directory contents
2023-08-01 15:51:58 -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 862301ce3f
Ignore ruby files that were generated in CI. (#3746)
* Ignore ruby files that were generated in CI.

* Sneaking in a fix to only upload assets only once per release.
2023-08-01 12:56:40 -04:00
Justin Bassett 0cac181a5f Add more ruby platform support. 2023-08-01 11:15:49 -04:00
Justin Bassett ec56d04a2b Set a ruby version for fastlane. 2023-08-01 11:13:15 -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
dependabot[bot] 6c8f67faad
Bump io.sentry:sentry-android from 6.26.0 to 6.27.0 (#3743)
Bumps [io.sentry:sentry-android](https://github.com/getsentry/sentry-java) from 6.26.0 to 6.27.0.
- [Release notes](https://github.com/getsentry/sentry-java/releases)
- [Changelog](https://github.com/getsentry/sentry-java/blob/main/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-java/compare/6.26.0...6.27.0)

---
updated-dependencies:
- dependency-name: io.sentry:sentry-android
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-31 15:19:27 -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
Joris Pelgröm 0800e9b402
Allow selecting unavailable entities for complications/tiles (#3733)
Fix: allow selecting unavailable entities for complications/tiles

 - It should be possible to choose an unavailable entity for display on a complication or tile, as you can with favorites, and even entities that are available now can become unavailable later
2023-07-31 15:15:31 -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
Márton Maráz a8a7363317
Implement support for multiple Shortcut Tiles on Wear OS (#3697)
* Extract JSONArray -> List<String> conversion to extension fun

* Refactor navigation around Shortcuts Tile settings

* Add ShortcutsTileId enum class

* Introduce multiple ShortcutTile subclasses and modify settings UI and storage to support multiple Tiles

* Check if correct ShortcutsTileId is passed as parameter to BaseShortcutTile

* Update TileUpdateRequester usages to account for multiple Tiles

* Add entity count to Shortcut Tile list in Settings

* Fix ktlint errors

* Fix more ktlint errors

* Extract string resource

* Add MULTI_INSTANCES_SUPPORTED to ShortcutsTile to be able to use any number of Tiles

* Refresh the list of Shortcut Tiles in the Settings without needing to restart the app

* Remove test logs

* Update androidx.wear.tiles:tiles to the latest version which doesn't yet require API 34 compileSdk version

* Fix crash when the preference's value is "{}"

* Fix crash when key String is "null" and converting to Int

* Rename placeholder variable name

* Add a comment explaining why to save the tiles in a getter

* Return emptyList() directly for clarity

* Remove icons from "Shortcut tile #n" entries in Settings

* Pass emptyList instead of using the non-null assertion operator to prevent NPEs in edge cases

* Refactor getTileShortcuts and getAllTileShortcuts in WearPrefsRepositoryImpl.
Make the code more readable and understandable, and reduce code duplication.

* Make it explicit that intKey is only intended to be null if stringKey == "null"

* Rename getTileShortcuts to getTileShortcutsAndSaveTileId and make it save the tileId not only when there's a null key in the map, but also when the tileId is not yet in the map. This way, actual Tiles and the tileId keys will be more in sync.

* Handle adding Shortcuts Tile immediately after updating the app to a new version which introduces support for multiple Shortcuts Tiles.

* Show message in the Settings when there are no Shortcuts tiles added yet.

* Refine message in the Settings when there are no Shortcuts tiles added yet

* WIP: ConfigShortcutsTile action

* Update comments about Wear OS versions

* Finalize ConfigShortcutsTile feature by applying @jpelgrom's suggestion to OpenShortcutTileSettingsActivity

* Only wrap the code in runCatching which is expected to throw an Exception under normal circumstances, when the pref value needs to be migrated from the old format.

* Call getTileShortcutsAndSaveTileId in OpenShortcutTileSettingsActivity

* Remove unnecessary stuff
2023-07-31 15:14:01 -04:00
dependabot[bot] fcab330115
Bump kotlinx-coroutines from 1.7.2 to 1.7.3 (#3735)
Bumps `kotlinx-coroutines` from 1.7.2 to 1.7.3.

Updates `org.jetbrains.kotlinx:kotlinx-coroutines-guava` from 1.7.2 to 1.7.3
- [Release notes](https://github.com/Kotlin/kotlinx.coroutines/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md)
- [Commits](https://github.com/Kotlin/kotlinx.coroutines/compare/1.7.2...1.7.3)

Updates `org.jetbrains.kotlinx:kotlinx-coroutines-play-services` from 1.7.2 to 1.7.3
- [Release notes](https://github.com/Kotlin/kotlinx.coroutines/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md)
- [Commits](https://github.com/Kotlin/kotlinx.coroutines/compare/1.7.2...1.7.3)

Updates `org.jetbrains.kotlinx:kotlinx-coroutines-android` from 1.7.2 to 1.7.3
- [Release notes](https://github.com/Kotlin/kotlinx.coroutines/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md)
- [Commits](https://github.com/Kotlin/kotlinx.coroutines/compare/1.7.2...1.7.3)

Updates `org.jetbrains.kotlinx:kotlinx-coroutines-core` from 1.7.2 to 1.7.3
- [Release notes](https://github.com/Kotlin/kotlinx.coroutines/releases)
- [Changelog](https://github.com/Kotlin/kotlinx.coroutines/blob/master/CHANGES.md)
- [Commits](https://github.com/Kotlin/kotlinx.coroutines/compare/1.7.2...1.7.3)

---
updated-dependencies:
- dependency-name: org.jetbrains.kotlinx:kotlinx-coroutines-guava
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlinx:kotlinx-coroutines-play-services
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlinx:kotlinx-coroutines-android
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlinx:kotlinx-coroutines-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-29 12:13:58 -04:00
Justin Bassett ba3170362e
First Steps into making Gradle Catalogs (#3724)
* First Steps into making Gradle Catalogs

* Rename a couple dependencies.

* Downgrade compose compiler since it'll take more to bump the kotlin version apparently.

* Code review comments.

* Refactoring these are painful.

* Now I know my ABC, next time wont you sing with me....
2023-07-29 11:11:08 -04:00
Daniel Shokouhi 2ced00815c
Update change log week of 7/28 (#3730) 2023-07-28 11:33:31 -07:00
Joris Pelgröm 7b40dec713
Smarter discovery for already added instances (#3723)
- Hide already added instances when adding another server to the app when found in discovery
 - Show already added instances with their external URL in discovery when logging in a Wear OS device
2023-07-28 13:52:29 -04:00
Daniel Shokouhi 447ad5e30a
Show favorites only if selected server has favorites (#3729) 2023-07-28 13:50:35 -04:00
Joris Pelgröm 8f7abb4379
Fix old server references in app-level preferences (#3728) 2023-07-28 13:50:16 -04:00
Daniel Shokouhi d33bdf4b9a
Update sensors when driving interface is open or resumed (#3726)
* Update sensors when driving interface is open

* Switch to proper sensor update command
2023-07-28 13:49:53 -04:00
Daniel Shokouhi e3b44ac109
Add navigation entities to favorites and convert nav screen to grid (#3725)
* Add navigation entities to favorites and convert nav screen to grid

* Consistent null checks

* More consistency
2023-07-28 13:49:28 -04:00
Daniel Shokouhi 54836c8db2
Bump some project dependencies (#3718) 2023-07-27 15:42:50 -04:00
Joris Pelgröm 9e610370d7
Fix version code for F-Droid builds (#3717) 2023-07-27 15:42:28 -04:00
Daniel Shokouhi 4069d29d0a
Android auto: Switch to GridTemplate for home screen and default to favorites if defined (#3694)
* Android auto: default to favorites if defined

* Fix changing servers

* Fix empty favorites list

* Review comments

* Account for extra grid items when showing favorites

* Switch to grid view for home screen, show all domains when there are no favorites for the server

* Review comments

* Clean up and move some methods to util

* Collect favorites with allEntities

* Review comments

* Move native mode logic back

* Check distraction again in domain screen

* Use base class to get distraction optimized variable

* Send blank template if user is not logged in

* Mark variables as private

* Fix icon resolution for grid items
2023-07-27 15:41:22 -04:00
dependabot[bot] d9db8a06df
Bump actions/setup-java from 3.11.0 to 3.12.0 (#3707)
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3.11.0 to 3.12.0.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v3.11.0...v3.12.0)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-25 14:38:17 -04:00
Sebastian Lövdahl 3db34ec408
Show measurement unit in Wear OS complication (#3703)
* Show measurement unit in Wear OS complication

* Extend existing `friendlyState` method

* Make showing unit configurable (defaulting to false)

* Feedback fixes
2023-07-25 14:37:31 -04:00
Joris Pelgröm 6744b61a80
Fix Wear more details crash with Kelvin light temperature (#3706) 2023-07-24 20:54:39 +00:00