Wear: tile add msg wear control disabled

This commit is contained in:
Andries Smit 2022-01-11 14:21:56 +01:00
parent 6321758634
commit ad440740d2
2 changed files with 16 additions and 3 deletions

View file

@ -77,12 +77,14 @@ abstract open class TileBase : TileService() {
): ListenableFuture<Tile> = serviceScope.future {
Log.i(TAG, "onTileRequest: ")
val actionsSelected = getSelectedActions()
val wearControlEnabled = hasWearControl()
Tile.Builder()
.setResourcesVersion(resourceVersion)
.setTimeline(
Timeline.Builder().addTimelineEntry(
TimelineEntry.Builder().setLayout(
Layout.Builder().setRoot(layout(actionsSelected, requestParams.deviceParameters!!)).build()
Layout.Builder().setRoot(layout(wearControlEnabled, actionsSelected, requestParams.deviceParameters!!)).build()
).build()
).build()
)
@ -124,7 +126,12 @@ abstract open class TileBase : TileService() {
.addContent(action(action2, deviceParameters))
.build()
private fun layout(actions: List<Action>, deviceParameters: DeviceParameters): LayoutElement {
private fun layout(enabled: Boolean, actions: List<Action>, deviceParameters: DeviceParameters): LayoutElement {
if (!enabled) {
return Text.Builder()
.setText(resources.getString(R.string.wear_control_not_enabled))
.build()
}
if (actions.isNotEmpty()) {
val b = Column.Builder()
if (actions.size == 1 || actions.size == 3) {
@ -213,6 +220,11 @@ abstract open class TileBase : TileService() {
)
.build()
private fun hasWearControl(): Boolean {
val sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this)
return sharedPrefs.getBoolean("wearcontrol", false)
}
private fun getSelectedActions(): List<Action> {
val sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this)
setDefaultSettings(sharedPrefs)

View file

@ -172,6 +172,7 @@
<string name="temp_target_manual">Manual</string>
<string name="temp_target_cancel">Cancel</string>
<string name="tile_none">None</string>
<string name="tile_no_config">No tile config available</string>
<string name="tile_no_config">No config available</string>
<string name="wear_control_not_enabled">Wear control disabled</string>
</resources>