summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Vignesh Ramanathan <vigneshrsastra@google.com> 2025-01-03 06:31:45 -0800
committer Android (Google) Code Review <android-gerrit@google.com> 2025-01-03 06:31:45 -0800
commit65feac4876b77f05ad640dfce38d952ea892a030 (patch)
treefb2652b13abd6123809a63970c3e21b692e08cfa
parent89bc5baec00477b02c55b4d690cd556513e8ea88 (diff)
parent8ac4c9fe9b3eea2326d6b540b2011aa3bdf5cda5 (diff)
Merge changes Ic2e1c874,I07c8717a into main
* changes: Fix Mat2 Button Alignment Issue Fix Permission Entry Issue
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/ui/GrantPermissionsActivity.java3
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/ui/wear/GrantPermissionsWearViewHandler.java9
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/ui/wear/WearGrantPermissionsScreen.kt24
-rw-r--r--PermissionController/src/com/android/permissioncontroller/permission/ui/wear/elements/material3/WearPermissionButton.kt2
4 files changed, 35 insertions, 3 deletions
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/ui/GrantPermissionsActivity.java b/PermissionController/src/com/android/permissioncontroller/permission/ui/GrantPermissionsActivity.java
index c1479caf2..a7114f30b 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/ui/GrantPermissionsActivity.java
+++ b/PermissionController/src/com/android/permissioncontroller/permission/ui/GrantPermissionsActivity.java
@@ -262,6 +262,9 @@ public class GrantPermissionsActivity extends SettingsActivity
if (DeviceUtils.isWear(this)) {
// Do not grab input focus and hide keyboard.
getWindow().addFlags(FLAG_ALT_FOCUSABLE_IM);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
+ overrideActivityTransition(OVERRIDE_TRANSITION_OPEN, 0, 0);
+ }
}
if (PackageManager.ACTION_REQUEST_PERMISSIONS_FOR_OTHER.equals(getIntent().getAction())) {
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/GrantPermissionsWearViewHandler.java b/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/GrantPermissionsWearViewHandler.java
index c9e9a2eb1..5100b08fd 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/GrantPermissionsWearViewHandler.java
+++ b/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/GrantPermissionsWearViewHandler.java
@@ -271,6 +271,12 @@ public class GrantPermissionsWearViewHandler implements GrantPermissionsViewHand
WearGrantPermissionsScreenKt.setContent(root,
mViewModel,
+ () -> {
+ if (mResultListener != null) {
+ mResultListener.onPermissionGrantResult(null, null, CANCELED);
+ }
+ return Unit.INSTANCE;
+ },
id -> {
onButtonClicked(id);
return Unit.INSTANCE;
@@ -278,7 +284,8 @@ public class GrantPermissionsWearViewHandler implements GrantPermissionsViewHand
checked -> {
onLocationSwitchChanged(checked);
return Unit.INSTANCE;
- });
+ }
+ );
if (mGroupName != null) {
updateScreen();
}
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/WearGrantPermissionsScreen.kt b/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/WearGrantPermissionsScreen.kt
index 1498b91b6..e6c141cc8 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/WearGrantPermissionsScreen.kt
+++ b/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/WearGrantPermissionsScreen.kt
@@ -18,10 +18,14 @@ package com.android.permissioncontroller.permission.ui.wear
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.runtime.Composable
+import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.livedata.observeAsState
+import androidx.compose.runtime.mutableStateOf
+import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.res.stringResource
+import androidx.wear.compose.material3.Dialog
import com.android.permissioncontroller.R
import com.android.permissioncontroller.permission.ui.GrantPermissionsActivity.ALLOW_ALWAYS_BUTTON
import com.android.permissioncontroller.permission.ui.GrantPermissionsActivity.ALLOW_BUTTON
@@ -45,6 +49,7 @@ import com.android.permissioncontroller.permission.ui.wear.model.WearGrantPermis
import com.android.permissioncontroller.permission.ui.wear.theme.ResourceHelper
import com.android.permissioncontroller.permission.ui.wear.theme.WearPermissionMaterialUIVersion.MATERIAL2_5
import com.android.permissioncontroller.permission.ui.wear.theme.WearPermissionMaterialUIVersion.MATERIAL3
+import kotlinx.coroutines.delay
@Composable
fun WearGrantPermissionsScreen(
@@ -119,12 +124,29 @@ fun WearGrantPermissionsScreen(
fun setContent(
composeView: ComposeView,
viewModel: WearGrantPermissionsViewModel,
+ onCancelled: () -> Unit,
onButtonClicked: (Int) -> Unit,
onLocationSwitchChanged: (Boolean) -> Unit,
) {
composeView.setContent {
- WearGrantPermissionsScreen(viewModel, onButtonClicked, onLocationSwitchChanged)
+ if (ResourceHelper.material3Enabled) {
+ AsDialog(onCancelled) {
+ WearGrantPermissionsScreen(viewModel, onButtonClicked, onLocationSwitchChanged)
+ }
+ } else {
+ WearGrantPermissionsScreen(viewModel, onButtonClicked, onLocationSwitchChanged)
+ }
+ }
+}
+
+@Composable
+private fun AsDialog(onDismissRequest: () -> Unit, content: @Composable () -> Unit) {
+ val showDialog = remember { mutableStateOf(false) }
+ LaunchedEffect(Unit) {
+ delay(300)
+ showDialog.value = true
}
+ Dialog(show = showDialog.value, onDismissRequest = onDismissRequest, content = content)
}
@Composable
diff --git a/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/elements/material3/WearPermissionButton.kt b/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/elements/material3/WearPermissionButton.kt
index 79a8963d8..7aa165b0f 100644
--- a/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/elements/material3/WearPermissionButton.kt
+++ b/PermissionController/src/com/android/permissioncontroller/permission/ui/wear/elements/material3/WearPermissionButton.kt
@@ -63,7 +63,7 @@ fun WearPermissionButton(
modifier = modifier,
secondaryLabel = secondaryLabel,
secondaryLabelMaxLines = secondaryLabelMaxLines,
- icon = { iconBuilder?.build() },
+ icon = iconBuilder?.let { { iconBuilder.build() } },
largeIcon = false,
colors = style.material2ChipColors(),
enabled = enabled,