From b7251fa693b20a2efbfa31ff82c211bdb0022d4b Mon Sep 17 00:00:00 2001 From: Ruchi Kandoi Date: Mon, 22 Oct 2018 16:58:37 -0700 Subject: [PATCH 01/24] Add support for FEATURE_NFC_ANDROID_BEAM Test: Check if app shows the Toggle switch Bug: 117519147 Change-Id: I395653dd977dc9b149fc343b533d15df71affaf1 --- .../nfc/AndroidBeamPreferenceController.java | 5 +++++ .../nfc/AndroidBeamPreferenceControllerTest.java | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/src/com/android/settings/nfc/AndroidBeamPreferenceController.java b/src/com/android/settings/nfc/AndroidBeamPreferenceController.java index 12ab1b756dc..9fc0aec2230 100644 --- a/src/com/android/settings/nfc/AndroidBeamPreferenceController.java +++ b/src/com/android/settings/nfc/AndroidBeamPreferenceController.java @@ -16,6 +16,7 @@ package com.android.settings.nfc; import android.content.Context; +import android.content.pm.PackageManager; import android.nfc.NfcAdapter; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; @@ -63,6 +64,10 @@ public class AndroidBeamPreferenceController extends BasePreferenceController @Override @AvailabilityStatus public int getAvailabilityStatus() { + PackageManager pm = mContext.getPackageManager(); + if (!pm.hasSystemFeature(PackageManager.FEATURE_NFC_BEAM)) { + return UNSUPPORTED_ON_DEVICE; + } return mNfcAdapter != null ? AVAILABLE : UNSUPPORTED_ON_DEVICE; diff --git a/tests/robotests/src/com/android/settings/nfc/AndroidBeamPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/nfc/AndroidBeamPreferenceControllerTest.java index 0abd428d027..90daae0ac87 100644 --- a/tests/robotests/src/com/android/settings/nfc/AndroidBeamPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/nfc/AndroidBeamPreferenceControllerTest.java @@ -22,6 +22,7 @@ import static org.mockito.Mockito.spy; import static org.mockito.Mockito.when; import android.content.Context; +import android.content.pm.PackageManager; import android.nfc.NfcAdapter; import android.nfc.NfcManager; import android.os.UserHandle; @@ -56,6 +57,8 @@ public class AndroidBeamPreferenceControllerTest { private UserManager mUserManager; @Mock private PreferenceScreen mScreen; + @Mock + private PackageManager mPackageManager; private RestrictedPreference mAndroidBeamPreference; private AndroidBeamPreferenceController mAndroidBeamController; @@ -77,6 +80,8 @@ public class AndroidBeamPreferenceControllerTest { mAndroidBeamPreference = new RestrictedPreference(RuntimeEnvironment.application); when(mScreen.findPreference(mAndroidBeamController.getPreferenceKey())).thenReturn( mAndroidBeamPreference); + when(mContext.getPackageManager()).thenReturn(mPackageManager); + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_NFC_BEAM)).thenReturn(true); Settings.Global.putString(mContext.getContentResolver(), Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS, @@ -93,6 +98,13 @@ public class AndroidBeamPreferenceControllerTest { assertThat(mAndroidBeamController.isAvailable()).isTrue(); } + @Test + public void isAvailable_noNfcFeature_shouldReturnFalse() { + when(mNfcAdapter.isEnabled()).thenReturn(true); + when(mPackageManager.hasSystemFeature(PackageManager.FEATURE_NFC_BEAM)).thenReturn(false); + assertThat(mAndroidBeamController.isAvailable()).isFalse(); + } + @Test public void isAvailable_noNfcAdapter_shouldReturnFalse() { ReflectionHelpers.setField(mAndroidBeamController, "mNfcAdapter", null); From a226307b17fa95400a3f51ec02d6c354fb3c066b Mon Sep 17 00:00:00 2001 From: Christine Franks Date: Wed, 5 Dec 2018 15:35:42 -0800 Subject: [PATCH 02/24] Add display white balance setting Bug: 111215474 Test: make RunSettingsRoboTests -j100 Change-Id: Icf31ff820008740312ad811d0eda72fd3fb90a63 --- res/values/strings.xml | 3 + res/xml/display_settings.xml | 5 ++ ...splayWhiteBalancePreferenceController.java | 46 +++++++++++ ...yWhiteBalancePreferenceControllerTest.java | 78 +++++++++++++++++++ 4 files changed, 132 insertions(+) create mode 100644 src/com/android/settings/display/DisplayWhiteBalancePreferenceController.java create mode 100644 tests/robotests/src/com/android/settings/display/DisplayWhiteBalancePreferenceControllerTest.java diff --git a/res/values/strings.xml b/res/values/strings.xml index 126a8351795..56b7c66d2ce 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -2644,6 +2644,9 @@ Your screen brightness will automatically adjust to your environment and activities. You can move the slider manually to help adaptive brightness learn your preferences. + + Display white balance + Night Light diff --git a/res/xml/display_settings.xml b/res/xml/display_settings.xml index 50a5649ac36..76b3d2eefba 100644 --- a/res/xml/display_settings.xml +++ b/res/xml/display_settings.xml @@ -79,6 +79,11 @@ settings:controller="com.android.settings.display.ColorModePreferenceController" settings:keywords="@string/keywords_color_mode" /> + + Date: Thu, 27 Dec 2018 13:38:35 -0800 Subject: [PATCH 03/24] Show "Done" button to prevent user from getting stuck When the user has already reached max enrollments, we should show a done button. It's possible to get to the introduction page (back button during SUW, or launching android.settings.BIOMETRIC_ENROLL). Bug: 111548033 Test: Done button is shown and works as expected when max enrollments Change-Id: Ia70c21f63606393116e222ca940ee93bcfb25995 --- .../biometrics/BiometricEnrollIntroduction.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java index 0ddc1fc298c..798c188dde1 100644 --- a/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java +++ b/src/com/android/settings/biometrics/BiometricEnrollIntroduction.java @@ -150,7 +150,8 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase getNextButton().setVisibility(View.VISIBLE); } else { mErrorText.setText(errorMsg); - getNextButton().setVisibility(View.GONE); + getNextButton().setText(getResources().getString(R.string.done)); + getNextButton().setVisibility(View.VISIBLE); } } @@ -162,8 +163,13 @@ public abstract class BiometricEnrollIntroduction extends BiometricEnrollBase @Override protected void onNextButtonClick(View view) { - // Lock thingy is already set up, launch directly to the next page - launchNextEnrollingActivity(mToken); + if (checkMaxEnrolled() == 0) { + // Lock thingy is already set up, launch directly to the next page + launchNextEnrollingActivity(mToken); + } else { + setResult(RESULT_FINISHED); + finish(); + } } private void launchChooseLock() { From a5e8bddc462d51b0e7d08409ac3b4a8ecc8ea993 Mon Sep 17 00:00:00 2001 From: Amin Shaikh Date: Wed, 19 Dec 2018 14:42:59 -0500 Subject: [PATCH 04/24] Update Settings text styles to use DeviceDefault. - Replace all TextAppearance.Material styles with the equivalent TextAppearance.DeviceDefault style - Reparent Theme.Settings.HomeBase to inherit from Theme.Settings. This ensures that the correct textAppearance theme attributes are applied throughout the Settings application. Bug: 121211932 Test: manually opening Settings and enabling/disabling HotDogOverlay Change-Id: Ibe4873ed0294de79dbb6aeca464d14c291239c4b --- res/layout-land/confirm_lock_password.xml | 4 +- res/layout-land/confirm_lock_pattern.xml | 6 +-- res/layout-land/storage_summary_donut.xml | 4 +- .../font_size_activity.xml | 4 +- .../screen_zoom_activity.xml | 4 +- res/layout-sw360dp/storage_summary_donut.xml | 4 +- res/layout/admin_support_details_dialog.xml | 4 +- res/layout/battery_header.xml | 6 +-- res/layout/bluetooth_pin_confirm.xml | 8 +-- res/layout/bluetooth_pin_entry.xml | 6 +-- res/layout/choose_lock_dialog_item.xml | 2 +- res/layout/confirm_lock_password_base.xml | 4 +- res/layout/confirm_lock_pattern_base.xml | 4 +- res/layout/data_usage_detail.xml | 8 +-- res/layout/font_size_activity.xml | 4 +- res/layout/font_size_preview.xml | 8 +-- res/layout/preference.xml | 4 +- res/layout/preference_multiline_title.xml | 4 +- res/layout/preference_progress_category.xml | 2 +- res/layout/preference_volume_slider.xml | 4 +- .../preference_widget_seekbar_settings.xml | 2 +- res/layout/preset_picker_item.xml | 2 +- res/layout/preview_seek_bar_view_pager.xml | 2 +- res/layout/running_processes_header.xml | 16 +++--- res/layout/running_processes_item.xml | 8 +-- res/layout/screen_zoom_activity.xml | 4 +- res/layout/screen_zoom_preview_app_icon.xml | 4 +- res/layout/screen_zoom_preview_settings.xml | 20 ++++---- res/layout/settings_summary_preference.xml | 2 +- res/layout/storage_internal_forget.xml | 2 +- res/layout/storage_internal_format.xml | 2 +- res/layout/storage_internal_unmount.xml | 2 +- res/layout/storage_item.xml | 4 +- res/layout/storage_summary.xml | 4 +- res/layout/storage_summary_donut.xml | 4 +- res/layout/storage_wizard_init.xml | 4 +- res/layout/tall_preference_category.xml | 2 +- res/layout/text_description_preference.xml | 2 +- res/layout/widget_text_views.xml | 4 +- res/layout/zen_onboarding.xml | 2 +- res/layout/zen_rule_type.xml | 4 +- res/values/styles.xml | 50 +++++++++---------- res/values/themes.xml | 2 +- tests/robotests/res/layout/preference.xml | 4 +- 44 files changed, 123 insertions(+), 123 deletions(-) diff --git a/res/layout-land/confirm_lock_password.xml b/res/layout-land/confirm_lock_password.xml index 8d742fa5cd5..d140badbaeb 100644 --- a/res/layout-land/confirm_lock_password.xml +++ b/res/layout-land/confirm_lock_password.xml @@ -28,7 +28,7 @@ android:layout_height="match_parent"> - \ No newline at end of file + diff --git a/res/layout-land/storage_summary_donut.xml b/res/layout-land/storage_summary_donut.xml index 5fe4cc89aa4..f43737a8921 100644 --- a/res/layout-land/storage_summary_donut.xml +++ b/res/layout-land/storage_summary_donut.xml @@ -42,7 +42,7 @@ android:fontFamily="@*android:string/config_headlineFontFamily" android:singleLine="true" android:textAlignment="viewStart" - android:textAppearance="@android:style/TextAppearance.Material.Display1" + android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Display1" android:textSize="36sp" /> + android:textAppearance="@*android:style/TextAppearance.DeviceDefault.Body1" />