Merge "Update auto-rotate UI to comply with guidelines" into sc-dev

This commit is contained in:
Abel Tesfaye
2021-03-15 23:52:26 +00:00
committed by Android (Google) Code Review
3 changed files with 21 additions and 14 deletions

View File

@@ -2847,6 +2847,10 @@
<string name="adaptive_sleep_contextual_slice_title">Turn on screen attention</string> <string name="adaptive_sleep_contextual_slice_title">Turn on screen attention</string>
<!-- Description about the contextual adaptive sleep card [CHAR LIMIT=NONE]--> <!-- Description about the contextual adaptive sleep card [CHAR LIMIT=NONE]-->
<string name="adaptive_sleep_contextual_slice_summary">Keep screen on when looking at it</string> <string name="adaptive_sleep_contextual_slice_summary">Keep screen on when looking at it</string>
<!-- auto_rotate settings screen, title about the required permission is missing [CHAR LIMIT=NONE]-->
<string name="auto_rotate_summary_no_permission">Camera access is required for Face Detection. Tap to manage permissions for Device Personalization Services</string>
<!-- auto_rotate settings screen, text for the camera permission button [CHAR LIMIT=NONE]-->
<string name="auto_rotate_manage_permission_button">Manage permissions</string>
<!-- Night display screen, setting option name to enable night display (renamed "Night Light" with title caps). [CHAR LIMIT=30] --> <!-- Night display screen, setting option name to enable night display (renamed "Night Light" with title caps). [CHAR LIMIT=30] -->
<string name="night_display_title">Night Light</string> <string name="night_display_title">Night Light</string>

View File

@@ -20,11 +20,10 @@
xmlns:settings="http://schemas.android.com/apk/res-auto" xmlns:settings="http://schemas.android.com/apk/res-auto"
android:title="@string/accelerometer_title" > android:title="@string/accelerometer_title" >
<Preference <com.android.settingslib.widget.BannerMessagePreference
android:key="face_rotate_permission" android:key="face_rotate_permission"
android:title="@string/adaptive_sleep_title_no_permission" android:title="@string/adaptive_sleep_title_no_permission"
android:summary="@string/adaptive_sleep_summary_no_permission" android:summary="@string/auto_rotate_summary_no_permission"
android:icon="@drawable/ic_info_outline_24"
settings:controller="com.android.settings.display.SmartAutoRotatePermissionController" /> settings:controller="com.android.settings.display.SmartAutoRotatePermissionController" />
<SwitchPreference <SwitchPreference

View File

@@ -22,11 +22,12 @@ import static com.android.settings.display.SmartAutoRotateController.isRotationR
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.net.Uri; import android.net.Uri;
import android.text.TextUtils;
import androidx.preference.Preference; import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.core.BasePreferenceController; import com.android.settings.core.BasePreferenceController;
import com.android.settingslib.widget.BannerMessagePreference;
/** /**
* The controller of camera based rotate permission warning preference. The preference appears when * The controller of camera based rotate permission warning preference. The preference appears when
@@ -44,6 +45,18 @@ public class SmartAutoRotatePermissionController extends BasePreferenceControlle
mIntent.setData(Uri.parse("package:" + packageName)); mIntent.setData(Uri.parse("package:" + packageName));
} }
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
final BannerMessagePreference preference =
(BannerMessagePreference) screen.findPreference(getPreferenceKey());
preference
.setPositiveButtonText(R.string.auto_rotate_manage_permission_button)
.setPositiveButtonOnClickListener(v -> {
mContext.startActivity(mIntent);
});
}
@Override @Override
@AvailabilityStatus @AvailabilityStatus
public int getAvailabilityStatus() { public int getAvailabilityStatus() {
@@ -51,13 +64,4 @@ public class SmartAutoRotatePermissionController extends BasePreferenceControlle
? AVAILABLE_UNSEARCHABLE ? AVAILABLE_UNSEARCHABLE
: UNSUPPORTED_ON_DEVICE; : UNSUPPORTED_ON_DEVICE;
} }
@Override
public boolean handlePreferenceTreeClick(Preference preference) {
if (TextUtils.equals(getPreferenceKey(), preference.getKey())) {
mContext.startActivity(mIntent);
return true;
}
return super.handlePreferenceTreeClick(preference);
}
} }