DO NOT MERGE Update zen onboarding
- Update text - Update buttons - Update style Bug: 79702414 Bug: 78447976 Bug: 79525632 Test: ZenOnboardingActivityTest Change-Id: Ied476fc920828409993953fba32bf3dae324ea3c
This commit is contained in:
@@ -17,40 +17,112 @@
|
|||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="320dp"
|
android:layout_width="320dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content" >
|
||||||
android:padding="20dp">
|
|
||||||
|
|
||||||
<TextView
|
<RelativeLayout
|
||||||
android:id="@+id/header"
|
android:id="@+id/zen_onboarding_choices"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/zen_onboarding_dnd_visual_disturbances_header"
|
android:paddingLeft="24dp"
|
||||||
android:textAppearance="@android:style/TextAppearance.Material.DialogWindowTitle" />
|
android:paddingRight="24dp"
|
||||||
|
android:paddingTop="18dp">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/feature_description"
|
android:id="@+id/header"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@+id/header"
|
android:text="@string/zen_onboarding_dnd_visual_disturbances_header"
|
||||||
android:layout_marginTop="24dp"
|
android:textAppearance="@android:style/TextAppearance.Material.DialogWindowTitle" />
|
||||||
android:textAppearance="?android:attr/textAppearanceListItem"
|
|
||||||
android:text="@string/zen_onboarding_dnd_visual_disturbances_description" />
|
<LinearLayout
|
||||||
|
android:id="@+id/zen_onboarding_new_setting"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_below="@+id/header"
|
||||||
|
android:layout_centerHorizontal="true"
|
||||||
|
android:layout_marginTop="22dp"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<RadioButton
|
||||||
|
android:id="@+id/zen_onboarding_new_setting_button"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingHorizontal="8dp" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/zen_onboarding_new_setting_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/zen_onboarding_new_setting_title"
|
||||||
|
android:textAppearance="?android:attr/textAppearanceListItem" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/zen_onboarding_new_setting_summary"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/zen_onboarding_new_setting_summary" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/zen_onboarding_current_setting"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_below="@+id/zen_onboarding_new_setting"
|
||||||
|
android:layout_centerHorizontal="true"
|
||||||
|
android:layout_marginTop="10dp"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
|
||||||
|
<RadioButton
|
||||||
|
android:id="@+id/zen_onboarding_current_setting_button"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingHorizontal="8dp" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/zen_onboarding_current_setting_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/zen_onboarding_current_setting_title"
|
||||||
|
android:textAppearance="?android:attr/textAppearanceListItem" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/zen_onboarding_current_setting_summary"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:text="@string/zen_onboarding_current_setting_summary" />
|
||||||
|
</LinearLayout>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:id="@+id/buttons"
|
android:id="@+id/buttons"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_below="@+id/feature_description"
|
android:layout_below="@+id/zen_onboarding_choices"
|
||||||
android:layout_marginTop="35dp">
|
android:layout_marginLeft="8dp"
|
||||||
|
android:layout_marginTop="20dp"
|
||||||
|
android:layout_marginBottom="10dp">
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/no"
|
android:id="@+id/settings"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="@string/zen_onboarding_no_update"
|
android:text="@string/zen_onboarding_settings"
|
||||||
android:layout_toStartOf="@+id/ok"
|
android:layout_alignParentStart="true"
|
||||||
style="@style/TextAppearance.ZenOnboardingButton"
|
style="@style/TextAppearance.ZenOnboardingButton"
|
||||||
android:onClick="close" />
|
android:onClick="launchSettings" />
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/ok"
|
android:id="@+id/ok"
|
||||||
|
@@ -7390,26 +7390,34 @@
|
|||||||
<string name="zen_msg_event_reminder_footer">When Do Not Disturb is on, messages, reminders, and events will muted, except for the items you allow above. You can adjust messages settings to allow your friends, family, or other contacts to reach you.</string>
|
<string name="zen_msg_event_reminder_footer">When Do Not Disturb is on, messages, reminders, and events will muted, except for the items you allow above. You can adjust messages settings to allow your friends, family, or other contacts to reach you.</string>
|
||||||
|
|
||||||
<!-- Do not disturb onboarding dialog, accept new settings [CHAR LIMIT=30]-->
|
<!-- Do not disturb onboarding dialog, accept new settings [CHAR LIMIT=30]-->
|
||||||
<string name="zen_onboarding_ok">Update</string>
|
<string name="zen_onboarding_ok">Done</string>
|
||||||
<!-- Do not disturb onboarding dialog, do not accept new settings [CHAR LIMIT=30]-->
|
<!-- Do not disturb onboarding dialog, on click user goes to dnd settings page [CHAR LIMIT=30]-->
|
||||||
<string name="zen_onboarding_no_update">Don\'t update</string>
|
|
||||||
<!-- Do not disturb onboarding dialog, description of new settings [CHAR LIMIT=NONE]-->
|
|
||||||
<string name="zen_onboarding_dnd_visual_disturbances_description">Your phone can do more to help you focus.\n\nUpdate settings to:\n\n- Hide notifications completely\n\n- Allow calls from starred contacts and repeat callers</string>
|
|
||||||
<!-- Do not disturb onboarding dialog, header prompt for settings [CHAR LIMIT=80]-->
|
|
||||||
<string name="zen_onboarding_dnd_visual_disturbances_header">Update Do Not Disturb?</string>
|
|
||||||
|
|
||||||
<!-- obsolete -->
|
|
||||||
<string name="zen_onboarding_settings">Settings</string>
|
<string name="zen_onboarding_settings">Settings</string>
|
||||||
<!-- obsolete -->
|
|
||||||
<string name="zen_onboarding_more_options">You can further customize this in Settings.</string>
|
<!-- Do not disturb onboarding dialog, title for radio button [CHAR LIMIT=80]-->
|
||||||
<!-- obsolete -->
|
<string name="zen_onboarding_new_setting_title">No visuals or sounds from notifications</string>
|
||||||
<string name="zen_onboarding_screen_on_title">Block when the screen is on</string>
|
<!-- Do not disturb onboarding dialog, title for radio button [CHAR LIMIT=80]-->
|
||||||
<!-- obsolete -->
|
<string name="zen_onboarding_current_setting_title">No sound from notifications</string>
|
||||||
<string name="zen_onboarding_screen_off_title">Block when the screen is off</string>
|
<!-- Do not disturb onboarding dialog, secondary text for radio button [CHAR LIMIT=NONE]-->
|
||||||
<!-- obsolete -->
|
<string name="zen_onboarding_new_setting_summary">You won\u2019t see or hear notifications. Calls from starred contacts and repeat callers are allowed.</string>
|
||||||
<string name="zen_onboarding_screen_off_summary">Don\'t turn on the screen or wake for notifications</string>
|
<!-- Do not disturb onboarding dialog, secondary text for radio button [CHAR LIMIT=NONE]-->
|
||||||
<!-- obsolete -->
|
<string name="zen_onboarding_current_setting_summary">(Current setting)</string>
|
||||||
<string name="zen_onboarding_screen_on_summary">Don\'t show notifications at all, except for basic phone activity and status</string>
|
|
||||||
|
<!-- Do not disturb onboarding dialog, header prompt for settings [CHAR LIMIT=80]-->
|
||||||
|
<string name="zen_onboarding_dnd_visual_disturbances_header">Change Do Not Disturb notification settings?</string>
|
||||||
|
|
||||||
|
<!-- DO NOT TRANSLATE obsolete [CHAR LIMIT=NONE]-->
|
||||||
|
<string name="zen_onboarding_dnd_visual_disturbances_description" translatable="false">Your phone can do more to help you focus.\n\nUpdate settings to:\n\n- Hide notifications completely\n\n- Allow calls from starred contacts and repeat callers</string>
|
||||||
|
<!-- DO NOT TRANSLATE obsolete -->
|
||||||
|
<string name="zen_onboarding_more_options" translatable="false">You can further customize this in Settings.</string>
|
||||||
|
<!-- DO NOT TRANSLATE obsolete -->
|
||||||
|
<string name="zen_onboarding_screen_on_title" translatable="false">Block when the screen is on</string>
|
||||||
|
<!-- DO NOT TRANSLATE obsolete -->
|
||||||
|
<string name="zen_onboarding_screen_off_title" translatable="false">Block when the screen is off</string>
|
||||||
|
<!-- DO NOT TRANSLATE obsolete -->
|
||||||
|
<string name="zen_onboarding_screen_off_summary" translatable="false">Don\'t turn on the screen or wake for notifications</string>
|
||||||
|
<!-- DO NOT TRANSLATE obsolete -->
|
||||||
|
<string name="zen_onboarding_screen_on_summary" translatable="false">Don\'t show notifications at all, except for basic phone activity and status</string>
|
||||||
|
|
||||||
<!-- Work Sounds: Work sound settings section header. [CHAR LIMIT=50] -->
|
<!-- Work Sounds: Work sound settings section header. [CHAR LIMIT=50] -->
|
||||||
<string name="sound_work_settings">Work profile sounds</string>
|
<string name="sound_work_settings">Work profile sounds</string>
|
||||||
|
@@ -439,8 +439,7 @@
|
|||||||
<item name="android:background">@drawable/btn_borderless_rect</item>
|
<item name="android:background">@drawable/btn_borderless_rect</item>
|
||||||
<item name="android:gravity">center</item>
|
<item name="android:gravity">center</item>
|
||||||
<item name="android:focusable">true</item>
|
<item name="android:focusable">true</item>
|
||||||
<item name="android:paddingStart">8dp</item>
|
<item name="android:padding">8dp</item>
|
||||||
<item name="android:paddingEnd">8dp</item>
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<style name="ActionPrimaryButton" parent="android:Widget.DeviceDefault.Button.Colored"/>
|
<style name="ActionPrimaryButton" parent="android:Widget.DeviceDefault.Button.Colored"/>
|
||||||
|
@@ -20,12 +20,14 @@ import android.app.Activity;
|
|||||||
import android.app.NotificationManager;
|
import android.app.NotificationManager;
|
||||||
import android.app.NotificationManager.Policy;
|
import android.app.NotificationManager.Policy;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.text.format.DateUtils;
|
import android.text.format.DateUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
import android.widget.RadioButton;
|
||||||
|
|
||||||
import com.android.internal.annotations.VisibleForTesting;
|
import com.android.internal.annotations.VisibleForTesting;
|
||||||
import com.android.internal.logging.MetricsLogger;
|
import com.android.internal.logging.MetricsLogger;
|
||||||
@@ -39,13 +41,16 @@ public class ZenOnboardingActivity extends Activity {
|
|||||||
private static final String TAG = "ZenOnboardingActivity";
|
private static final String TAG = "ZenOnboardingActivity";
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static final String PREF_KEY_SUGGGESTION_FIRST_DISPLAY_TIME =
|
static final String PREF_KEY_SUGGESTION_FIRST_DISPLAY_TIME =
|
||||||
"pref_zen_suggestion_first_display_time_ms";
|
"pref_zen_suggestion_first_display_time_ms";
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
static final String PREF_KEY_SUGGESTION_VIEWED = "pref_zen_suggestion_viewed";
|
|
||||||
@VisibleForTesting
|
|
||||||
static final long ALWAYS_SHOW_THRESHOLD = DateUtils.DAY_IN_MILLIS * 14;
|
static final long ALWAYS_SHOW_THRESHOLD = DateUtils.DAY_IN_MILLIS * 14;
|
||||||
|
|
||||||
|
View mNewSetting;
|
||||||
|
View mKeepCurrentSetting;
|
||||||
|
RadioButton mNewSettingButton;
|
||||||
|
RadioButton mKeepCurrentSettingButton;
|
||||||
|
|
||||||
private NotificationManager mNm;
|
private NotificationManager mNm;
|
||||||
private MetricsLogger mMetrics;
|
private MetricsLogger mMetrics;
|
||||||
|
|
||||||
@@ -66,6 +71,34 @@ public class ZenOnboardingActivity extends Activity {
|
|||||||
protected void setupUI() {
|
protected void setupUI() {
|
||||||
setContentView(R.layout.zen_onboarding);
|
setContentView(R.layout.zen_onboarding);
|
||||||
|
|
||||||
|
mNewSetting = findViewById(R.id.zen_onboarding_new_setting);
|
||||||
|
mKeepCurrentSetting = findViewById(R.id.zen_onboarding_current_setting);
|
||||||
|
mNewSettingButton = findViewById(R.id.zen_onboarding_new_setting_button);
|
||||||
|
mKeepCurrentSettingButton = findViewById(R.id.zen_onboarding_current_setting_button);
|
||||||
|
|
||||||
|
View.OnClickListener newSettingClickListener = new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
mKeepCurrentSettingButton.setChecked(false);
|
||||||
|
mNewSettingButton.setChecked(true);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
View.OnClickListener currentSettingClickListener = new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View v) {
|
||||||
|
mKeepCurrentSettingButton.setChecked(true);
|
||||||
|
mNewSettingButton.setChecked(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
mNewSetting.setOnClickListener(newSettingClickListener);
|
||||||
|
mNewSettingButton.setOnClickListener(newSettingClickListener);
|
||||||
|
|
||||||
|
mKeepCurrentSetting.setOnClickListener(currentSettingClickListener);
|
||||||
|
mKeepCurrentSettingButton.setOnClickListener(currentSettingClickListener);
|
||||||
|
|
||||||
|
mKeepCurrentSettingButton.setChecked(true);
|
||||||
mMetrics.visible(MetricsEvent.SETTINGS_ZEN_ONBOARDING);
|
mMetrics.visible(MetricsEvent.SETTINGS_ZEN_ONBOARDING);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -79,25 +112,27 @@ public class ZenOnboardingActivity extends Activity {
|
|||||||
mMetrics = ml;
|
mMetrics = ml;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void close(View button) {
|
public void launchSettings(View button) {
|
||||||
mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_KEEP_CURRENT_SETTINGS);
|
mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_SETTINGS);
|
||||||
|
Intent settings = new Intent(Settings.ACTION_ZEN_MODE_SETTINGS);
|
||||||
Settings.Global.putInt(getApplicationContext().getContentResolver(),
|
settings.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
|
||||||
Settings.Global.ZEN_SETTINGS_UPDATED, 1);
|
startActivity(settings);
|
||||||
|
|
||||||
finishAndRemoveTask();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void save(View button) {
|
public void save(View button) {
|
||||||
mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_OK);
|
|
||||||
NotificationManager.Policy policy = mNm.getNotificationPolicy();
|
NotificationManager.Policy policy = mNm.getNotificationPolicy();
|
||||||
|
|
||||||
NotificationManager.Policy newPolicy = new NotificationManager.Policy(
|
if (mNewSettingButton.isChecked()) {
|
||||||
Policy.PRIORITY_CATEGORY_REPEAT_CALLERS | policy.priorityCategories,
|
NotificationManager.Policy newPolicy = new NotificationManager.Policy(
|
||||||
Policy.PRIORITY_SENDERS_STARRED,
|
Policy.PRIORITY_CATEGORY_REPEAT_CALLERS | policy.priorityCategories,
|
||||||
policy.priorityMessageSenders,
|
Policy.PRIORITY_SENDERS_STARRED,
|
||||||
NotificationManager.Policy.getAllSuppressedVisualEffects());
|
policy.priorityMessageSenders,
|
||||||
mNm.setNotificationPolicy(newPolicy);
|
NotificationManager.Policy.getAllSuppressedVisualEffects());
|
||||||
|
mNm.setNotificationPolicy(newPolicy);
|
||||||
|
mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_OK);
|
||||||
|
} else {
|
||||||
|
mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_KEEP_CURRENT_SETTINGS);
|
||||||
|
}
|
||||||
|
|
||||||
Settings.Global.putInt(getApplicationContext().getContentResolver(),
|
Settings.Global.putInt(getApplicationContext().getContentResolver(),
|
||||||
Settings.Global.ZEN_SETTINGS_UPDATED, 1);
|
Settings.Global.ZEN_SETTINGS_UPDATED, 1);
|
||||||
@@ -143,11 +178,11 @@ public class ZenOnboardingActivity extends Activity {
|
|||||||
final long currentTimeMs = System.currentTimeMillis();
|
final long currentTimeMs = System.currentTimeMillis();
|
||||||
final long firstDisplayTimeMs;
|
final long firstDisplayTimeMs;
|
||||||
|
|
||||||
if (!prefs.contains(PREF_KEY_SUGGGESTION_FIRST_DISPLAY_TIME)) {
|
if (!prefs.contains(PREF_KEY_SUGGESTION_FIRST_DISPLAY_TIME)) {
|
||||||
firstDisplayTimeMs = currentTimeMs;
|
firstDisplayTimeMs = currentTimeMs;
|
||||||
prefs.edit().putLong(PREF_KEY_SUGGGESTION_FIRST_DISPLAY_TIME, currentTimeMs).commit();
|
prefs.edit().putLong(PREF_KEY_SUGGESTION_FIRST_DISPLAY_TIME, currentTimeMs).commit();
|
||||||
} else {
|
} else {
|
||||||
firstDisplayTimeMs = prefs.getLong(PREF_KEY_SUGGGESTION_FIRST_DISPLAY_TIME, -1);
|
firstDisplayTimeMs = prefs.getLong(PREF_KEY_SUGGESTION_FIRST_DISPLAY_TIME, -1);
|
||||||
}
|
}
|
||||||
|
|
||||||
final long showTimeMs = firstDisplayTimeMs + ALWAYS_SHOW_THRESHOLD;
|
final long showTimeMs = firstDisplayTimeMs + ALWAYS_SHOW_THRESHOLD;
|
||||||
|
@@ -18,21 +18,11 @@ package com.android.settings.notification;
|
|||||||
|
|
||||||
import static android.app.NotificationManager.Policy.PRIORITY_CATEGORY_ALARMS;
|
import static android.app.NotificationManager.Policy.PRIORITY_CATEGORY_ALARMS;
|
||||||
import static android.app.NotificationManager.Policy.PRIORITY_CATEGORY_REPEAT_CALLERS;
|
import static android.app.NotificationManager.Policy.PRIORITY_CATEGORY_REPEAT_CALLERS;
|
||||||
import static android.app.NotificationManager.Policy.PRIORITY_SENDERS_ANY;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_AMBIENT;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_BADGE;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_FULL_SCREEN_INTENT;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_LIGHTS;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_NOTIFICATION_LIST;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_PEEK;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_SCREEN_OFF;
|
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_SCREEN_ON;
|
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_SCREEN_ON;
|
||||||
import static android.app.NotificationManager.Policy.SUPPRESSED_EFFECT_STATUS_BAR;
|
|
||||||
|
|
||||||
import static com.android.settings.notification.ZenOnboardingActivity.ALWAYS_SHOW_THRESHOLD;
|
import static com.android.settings.notification.ZenOnboardingActivity.ALWAYS_SHOW_THRESHOLD;
|
||||||
import static com.android.settings.notification.ZenOnboardingActivity.PREF_KEY_SUGGESTION_VIEWED;
|
|
||||||
import static com.android.settings.notification.ZenOnboardingActivity
|
import static com.android.settings.notification.ZenOnboardingActivity
|
||||||
.PREF_KEY_SUGGGESTION_FIRST_DISPLAY_TIME;
|
.PREF_KEY_SUGGESTION_FIRST_DISPLAY_TIME;
|
||||||
import static com.android.settings.notification.ZenOnboardingActivity.isSuggestionComplete;
|
import static com.android.settings.notification.ZenOnboardingActivity.isSuggestionComplete;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
@@ -99,10 +89,11 @@ public class ZenOnboardingActivityTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void save() {
|
public void saveNewSetting() {
|
||||||
Policy policy = new Policy(PRIORITY_CATEGORY_ALARMS, 0, 0, SUPPRESSED_EFFECT_SCREEN_ON);
|
Policy policy = new Policy(PRIORITY_CATEGORY_ALARMS, 0, 0, SUPPRESSED_EFFECT_SCREEN_ON);
|
||||||
when(mNm.getNotificationPolicy()).thenReturn(policy);
|
when(mNm.getNotificationPolicy()).thenReturn(policy);
|
||||||
|
|
||||||
|
mActivity.mNewSetting.performClick();
|
||||||
mActivity.save(null);
|
mActivity.save(null);
|
||||||
|
|
||||||
verify(mMetricsLogger).action(MetricsEvent.ACTION_ZEN_ONBOARDING_OK);
|
verify(mMetricsLogger).action(MetricsEvent.ACTION_ZEN_ONBOARDING_OK);
|
||||||
@@ -120,24 +111,14 @@ public class ZenOnboardingActivityTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void close() {
|
public void keepCurrentSetting() {
|
||||||
Policy policy = new Policy(
|
Policy policy = new Policy(PRIORITY_CATEGORY_ALARMS, 0, 0, SUPPRESSED_EFFECT_SCREEN_ON);
|
||||||
PRIORITY_CATEGORY_ALARMS, PRIORITY_SENDERS_ANY, 0,
|
|
||||||
SUPPRESSED_EFFECT_SCREEN_ON
|
|
||||||
| SUPPRESSED_EFFECT_SCREEN_OFF
|
|
||||||
| SUPPRESSED_EFFECT_FULL_SCREEN_INTENT
|
|
||||||
| SUPPRESSED_EFFECT_LIGHTS
|
|
||||||
| SUPPRESSED_EFFECT_PEEK
|
|
||||||
| SUPPRESSED_EFFECT_STATUS_BAR
|
|
||||||
| SUPPRESSED_EFFECT_BADGE
|
|
||||||
| SUPPRESSED_EFFECT_AMBIENT
|
|
||||||
| SUPPRESSED_EFFECT_NOTIFICATION_LIST);
|
|
||||||
when(mNm.getNotificationPolicy()).thenReturn(policy);
|
when(mNm.getNotificationPolicy()).thenReturn(policy);
|
||||||
|
|
||||||
mActivity.close(null);
|
mActivity.mKeepCurrentSetting.performClick();
|
||||||
|
mActivity.save(null);
|
||||||
|
|
||||||
verify(mMetricsLogger).action(MetricsEvent.ACTION_ZEN_ONBOARDING_KEEP_CURRENT_SETTINGS);
|
verify(mMetricsLogger).action(MetricsEvent.ACTION_ZEN_ONBOARDING_KEEP_CURRENT_SETTINGS);
|
||||||
|
|
||||||
verify(mNm, never()).setNotificationPolicy(any());
|
verify(mNm, never()).setNotificationPolicy(any());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -192,7 +173,7 @@ public class ZenOnboardingActivityTest {
|
|||||||
firstTime -= ALWAYS_SHOW_THRESHOLD * 2;
|
firstTime -= ALWAYS_SHOW_THRESHOLD * 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
getSharedPreferences().edit().putLong(PREF_KEY_SUGGGESTION_FIRST_DISPLAY_TIME,
|
getSharedPreferences().edit().putLong(PREF_KEY_SUGGESTION_FIRST_DISPLAY_TIME,
|
||||||
firstTime).commit();
|
firstTime).commit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user