diff --git a/res/color/dream_card_color_state_list.xml b/res/color/dream_card_color_state_list.xml
index 0799dc6fab0..b0c86bba121 100644
--- a/res/color/dream_card_color_state_list.xml
+++ b/res/color/dream_card_color_state_list.xml
@@ -17,8 +17,6 @@
-
\ No newline at end of file
diff --git a/res/color/dream_card_text_color_state_list.xml b/res/color/dream_card_text_color_state_list.xml
index 2ca7a0fc915..438855fd233 100644
--- a/res/color/dream_card_text_color_state_list.xml
+++ b/res/color/dream_card_text_color_state_list.xml
@@ -17,8 +17,6 @@
-
\ No newline at end of file
diff --git a/src/com/android/settings/dream/DreamAdapter.java b/src/com/android/settings/dream/DreamAdapter.java
index 27c32dfbe79..ea64e8dd1d8 100644
--- a/src/com/android/settings/dream/DreamAdapter.java
+++ b/src/com/android/settings/dream/DreamAdapter.java
@@ -50,14 +50,13 @@ public class DreamAdapter extends RecyclerView.Adapter
* View holder for each {@link IDreamItem}.
*/
private class DreamViewHolder extends RecyclerView.ViewHolder {
- private static final int VALUE_ENABLED_ALPHA = 255;
private final TextView mTitleView;
private final TextView mSummaryView;
private final ImageView mPreviewView;
private final ImageView mPreviewPlaceholderView;
private final Button mCustomizeButton;
private final Context mContext;
- private final int mDisabledAlphaValue;
+ private final float mDisabledAlphaValue;
DreamViewHolder(View view, Context context) {
super(view);
@@ -67,7 +66,7 @@ public class DreamAdapter extends RecyclerView.Adapter
mTitleView = view.findViewById(R.id.title_text);
mSummaryView = view.findViewById(R.id.summary_text);
mCustomizeButton = view.findViewById(R.id.customize_button);
- mDisabledAlphaValue = (int) (ColorUtil.getDisabledAlpha(context) * VALUE_ENABLED_ALPHA);
+ mDisabledAlphaValue = ColorUtil.getDisabledAlpha(context);
}
/**
@@ -93,7 +92,6 @@ public class DreamAdapter extends RecyclerView.Adapter
mPreviewView.setImageDrawable(null);
mPreviewPlaceholderView.setVisibility(View.VISIBLE);
}
- mPreviewView.setImageAlpha(getAlpha());
final Drawable icon = item.isActive()
? mContext.getDrawable(R.drawable.ic_dream_check_circle)
@@ -105,7 +103,6 @@ public class DreamAdapter extends RecyclerView.Adapter
final int iconSize = mContext.getResources().getDimensionPixelSize(
R.dimen.dream_item_icon_size);
icon.setBounds(0, 0, iconSize, iconSize);
- icon.setAlpha(getAlpha());
mTitleView.setCompoundDrawablesRelative(icon, null, null, null);
if (item.isActive()) {
@@ -130,10 +127,6 @@ public class DreamAdapter extends RecyclerView.Adapter
setEnabledStateOnViews(itemView, mEnabled);
}
- private int getAlpha() {
- return mEnabled ? VALUE_ENABLED_ALPHA : mDisabledAlphaValue;
- }
-
/**
* Makes sure the view (and any children) get the enabled state changed.
*/
@@ -145,6 +138,8 @@ public class DreamAdapter extends RecyclerView.Adapter
for (int i = vg.getChildCount() - 1; i >= 0; i--) {
setEnabledStateOnViews(vg.getChildAt(i), enabled);
}
+ } else {
+ v.setAlpha(enabled ? 1 : mDisabledAlphaValue);
}
}
}
diff --git a/src/com/android/settings/localepicker/LocalePickerWithRegionActivity.java b/src/com/android/settings/localepicker/LocalePickerWithRegionActivity.java
index 70f738395be..bcc55e3a2db 100644
--- a/src/com/android/settings/localepicker/LocalePickerWithRegionActivity.java
+++ b/src/com/android/settings/localepicker/LocalePickerWithRegionActivity.java
@@ -17,11 +17,8 @@
package com.android.settings.localepicker;
import android.app.FragmentTransaction;
-import android.app.LocaleManager;
import android.content.Intent;
import android.os.Bundle;
-import android.os.LocaleList;
-import android.util.Log;
import android.view.MenuItem;
import com.android.internal.app.LocalePickerWithRegion;
@@ -34,7 +31,6 @@ public class LocalePickerWithRegionActivity extends SettingsBaseActivity
implements LocalePickerWithRegion.LocaleSelectedListener {
private static final String PARENT_FRAGMENT_NAME = "localeListEditor";
- private static final String TAG = "Calvin";
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -51,25 +47,6 @@ public class LocalePickerWithRegionActivity extends SettingsBaseActivity
.commit();
}
- public void setAppDefaultLocale(String languageTag) {
- if (languageTag.isEmpty()) {
- Log.w(TAG, "[setAppDefaultLocale] No language tag.");
- return;
- }
- setAppDefaultLocale(LocaleList.forLanguageTags(languageTag));
- }
-
- /** Sets per app's default language to system. */
- public void setAppDefaultLocale(LocaleList localeList) {
- LocaleManager mLocaleManager = getSystemService(LocaleManager.class);
- if (mLocaleManager == null) {
- Log.w(TAG, "LocaleManager is null, and cannot set the app locale up.");
- return;
- }
- mLocaleManager.setApplicationLocales("com.android.vending", localeList);
- }
-
-
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == android.R.id.home) {
@@ -81,16 +58,9 @@ public class LocalePickerWithRegionActivity extends SettingsBaseActivity
@Override
public void onLocaleSelected(LocaleStore.LocaleInfo locale) {
- /*final Intent intent = new Intent();
+ final Intent intent = new Intent();
intent.putExtra(LocaleListEditor.INTENT_LOCALE_KEY, locale);
- setResult(RESULT_OK, intent);*/
- if(locale != null) {
- Log.d("Calvin", "onLocaleSelected " + locale.getLocale().toLanguageTag());
- setAppDefaultLocale(locale.getLocale().toLanguageTag());
- } else {
- Log.d("Calvin", "onLocaleSelected null");
- setAppDefaultLocale("");
- }
+ setResult(RESULT_OK, intent);
finish();
}
diff --git a/src/com/android/settings/notification/zen/AbstractZenCustomRulePreferenceController.java b/src/com/android/settings/notification/zen/AbstractZenCustomRulePreferenceController.java
index bf700804634..f6997c6f433 100644
--- a/src/com/android/settings/notification/zen/AbstractZenCustomRulePreferenceController.java
+++ b/src/com/android/settings/notification/zen/AbstractZenCustomRulePreferenceController.java
@@ -19,9 +19,6 @@ package com.android.settings.notification.zen;
import android.app.AutomaticZenRule;
import android.content.Context;
import android.os.Bundle;
-import android.util.Slog;
-
-import androidx.preference.Preference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settingslib.core.lifecycle.Lifecycle;
@@ -37,23 +34,19 @@ abstract class AbstractZenCustomRulePreferenceController extends
super(context, key, lifecycle);
}
- @Override
- public void updateState(Preference preference) {
- if (mId != null) {
- mRule = mBackend.getAutomaticZenRule(mId);
- }
- }
-
@Override
public boolean isAvailable() {
return mRule != null;
}
- public void onResume(AutomaticZenRule rule, String id) {
+ public void setIdAndRule(String id, AutomaticZenRule rule) {
mId = id;
mRule = rule;
}
+ public void onResume() {
+ }
+
Bundle createBundle() {
Bundle bundle = new Bundle();
bundle.putString(ZenCustomRuleSettings.RULE_ID, mId);
diff --git a/src/com/android/settings/notification/zen/ZenCustomRuleSettingsBase.java b/src/com/android/settings/notification/zen/ZenCustomRuleSettingsBase.java
index 28a3046b608..b417e032915 100644
--- a/src/com/android/settings/notification/zen/ZenCustomRuleSettingsBase.java
+++ b/src/com/android/settings/notification/zen/ZenCustomRuleSettingsBase.java
@@ -37,10 +37,11 @@ abstract class ZenCustomRuleSettingsBase extends ZenModeSettingsBase {
String mId;
AutomaticZenRule mRule;
List mControllers = new ArrayList<>();
+ private boolean mIsFirstLaunch = true;
/**
* @return null if no preference category exists
- */
+ */
abstract String getPreferenceCategoryKey();
@Override
@@ -49,7 +50,7 @@ abstract class ZenCustomRuleSettingsBase extends ZenModeSettingsBase {
Bundle bundle = getArguments();
if (bundle != null && bundle.containsKey(RULE_ID)) {
mId = bundle.getString(RULE_ID);
- mRule = mBackend.getAutomaticZenRule(mId);
+ updateRule();
} else {
Log.d(TAG, "Rule id required to set custom dnd rule config settings");
this.finish();
@@ -57,13 +58,32 @@ abstract class ZenCustomRuleSettingsBase extends ZenModeSettingsBase {
}
@Override
- public void onZenModeConfigChanged() {
- super.onZenModeConfigChanged();
+ public void onResume() {
+ super.onResume();
updatePreferences();
}
- public void updatePreferences() {
+ @Override
+ public void onZenModeConfigChanged() {
+ super.onZenModeConfigChanged();
+ updatePreferences();
+ updatePreferenceStates();
+ }
+
+ private void updateRule() {
mRule = mBackend.getAutomaticZenRule(mId);
+ for (AbstractPreferenceController controller : mControllers) {
+ AbstractZenCustomRulePreferenceController zenRuleController =
+ (AbstractZenCustomRulePreferenceController) controller;
+ zenRuleController.setIdAndRule(mId, mRule);
+ }
+ }
+
+ public void updatePreferences() {
+ if (!mIsFirstLaunch) {
+ updateRule();
+ }
+
final PreferenceScreen screen = getPreferenceScreen();
String categoryKey = getPreferenceCategoryKey();
if (categoryKey != null) {
@@ -78,10 +98,15 @@ abstract class ZenCustomRuleSettingsBase extends ZenModeSettingsBase {
for (AbstractPreferenceController controller : mControllers) {
AbstractZenCustomRulePreferenceController zenRuleController =
(AbstractZenCustomRulePreferenceController) controller;
- zenRuleController.onResume(mRule, mId);
- zenRuleController.displayPreference(screen);
- updatePreference(zenRuleController);
+ zenRuleController.onResume();
+ if (!mIsFirstLaunch) {
+ // In first launch, displayPreference() is already called in DashboardFragment's
+ // onCreate().
+ zenRuleController.displayPreference(screen);
+ }
}
+
+ mIsFirstLaunch = false;
}
@Override
@@ -89,12 +114,6 @@ abstract class ZenCustomRuleSettingsBase extends ZenModeSettingsBase {
return R.string.help_uri_interruptions;
}
- @Override
- public void onResume() {
- super.onResume();
- updatePreferences();
- }
-
Bundle createZenRuleBundle() {
Bundle bundle = new Bundle();
bundle.putString(RULE_ID, mId);
diff --git a/src/com/android/settings/notification/zen/ZenRulePrioritySendersPreferenceController.java b/src/com/android/settings/notification/zen/ZenRulePrioritySendersPreferenceController.java
index cee496ee8b0..8f5e0e10bb3 100644
--- a/src/com/android/settings/notification/zen/ZenRulePrioritySendersPreferenceController.java
+++ b/src/com/android/settings/notification/zen/ZenRulePrioritySendersPreferenceController.java
@@ -18,7 +18,6 @@ package com.android.settings.notification.zen;
import static com.android.settings.notification.zen.ZenPrioritySendersHelper.UNKNOWN;
-import android.app.AutomaticZenRule;
import android.content.Context;
import android.os.AsyncTask;
import android.service.notification.ZenPolicy;
@@ -79,8 +78,8 @@ public class ZenRulePrioritySendersPreferenceController
}
@Override
- public void onResume(AutomaticZenRule rule, String id) {
- super.onResume(rule, id);
+ public void onResume() {
+ super.onResume();
if (mIsMessages) {
updateChannelCounts();
}
diff --git a/tests/robotests/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java b/tests/robotests/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java
index 8c9cfc0d91f..339ba8e2e79 100644
--- a/tests/robotests/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java
+++ b/tests/robotests/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java
@@ -20,8 +20,6 @@ import android.app.AutomaticZenRule;
import android.app.NotificationManager;
import android.service.notification.ZenPolicy;
-import com.android.settings.notification.zen.AbstractZenCustomRulePreferenceController;
-
import org.junit.runner.RunWith;
import org.robolectric.RobolectricTestRunner;
@@ -37,6 +35,6 @@ abstract class ZenRuleCustomPrefContrTestBase {
void updateControllerZenPolicy(ZenPolicy policy) {
mRule.setZenPolicy(policy);
- getController().onResume(mRule, RULE_ID);
+ getController().setIdAndRule(RULE_ID, mRule);
}
}
diff --git a/tests/robotests/src/com/android/settings/notification/zen/ZenRulePreferenceControllerTest.java b/tests/robotests/src/com/android/settings/notification/zen/ZenRulePreferenceControllerTest.java
index 10eae066f2d..514b4f696a2 100644
--- a/tests/robotests/src/com/android/settings/notification/zen/ZenRulePreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/notification/zen/ZenRulePreferenceControllerTest.java
@@ -78,7 +78,7 @@ public class ZenRulePreferenceControllerTest {
assertTrue(mController.mRule == null);
assertTrue(mController.mId == null);
- mController.onResume(rule, id);
+ mController.setIdAndRule(id, rule);
assertEquals(mController.mId, id);
assertEquals(mController.mRule, rule);
diff --git a/tests/unit/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java b/tests/unit/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java
index 53ad7c5995e..c26394389b3 100644
--- a/tests/unit/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java
+++ b/tests/unit/src/com/android/settings/notification/zen/ZenRuleCustomPrefContrTestBase.java
@@ -35,6 +35,6 @@ abstract class ZenRuleCustomPrefContrTestBase {
void updateControllerZenPolicy(ZenPolicy policy) {
mRule.setZenPolicy(policy);
- getController().onResume(mRule, RULE_ID);
+ getController().setIdAndRule(RULE_ID, mRule);
}
}