Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fa6482c4 authored by Julia Reynolds's avatar Julia Reynolds Committed by android-build-merger
Browse files

Update zen onboarding ui

am: 29ba3601

Change-Id: I2c1769f683dd464c96e758b61bd5e47b4a538c44
parents aee1191c 29ba3601
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -742,7 +742,7 @@
            android:name=".notification.ZenOnboardingActivity"
            android:label="@string/zen_onboarding_dnd_visual_disturbances_header"
            android:icon="@drawable/ic_settings_notifications"
            android:theme="@style/Theme.Settings.NoActionBar"
            android:theme="@*android:style/Theme.DeviceDefault.Settings.Dialog.NoActionBar"
            android:exported="true"
            android:taskAffinity="com.android.settings"
            android:parentActivityName="Settings">
+14 −117
Original line number Diff line number Diff line
@@ -16,152 +16,49 @@
-->
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_width="320dp"
    android:layout_height="wrap_content"
    android:padding="20dp">

    <ImageView
        android:id="@+id/header_icon"
        android:layout_width="32dp"
        android:layout_height="32dp"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:src="@drawable/ic_zen"
        android:tint="?android:attr/colorAccent"/>

    <TextView
        android:id="@+id/header"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/header_icon"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="12dp"
        android:text="@string/zen_onboarding_dnd_visual_disturbances_header"
        android:textAppearance="@android:style/TextAppearance.Material.Headline" />
        android:textAppearance="@android:style/TextAppearance.Material.DialogWindowTitle" />

    <TextView
        android:id="@+id/feature_description"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/header"
        android:layout_centerHorizontal="true"
        android:textAlignment="center"
        android:layout_marginTop="14dp"
        android:layout_marginTop="24dp"
        android:textAppearance="?android:attr/textAppearanceListItem"
        android:text="@string/zen_onboarding_dnd_visual_disturbances_description" />

    <LinearLayout
        android:id="@+id/screen_off"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/feature_description"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="35dp"
        android:orientation="horizontal">

        <CheckBox
            android:id="@+id/screen_off_option"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingHorizontal="8dp"
            android:onClick="logClick" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/screen_off_title"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="@string/zen_onboarding_screen_off_title"
                android:textAppearance="?android:attr/textAppearanceListItem" />

            <TextView
                android:id="@+id/screen_off_summary"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="@string/zen_onboarding_screen_off_summary" />
        </LinearLayout>

    </LinearLayout>

    <LinearLayout
        android:id="@+id/screen_on"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/screen_off"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="10dp"
        android:orientation="horizontal">

        <CheckBox
            android:id="@+id/screen_on_option"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:paddingHorizontal="8dp"
            android:onClick="logClick" />

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/screen_on_title"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="@string/zen_onboarding_screen_on_title"
                android:textAppearance="?android:attr/textAppearanceListItem" />

            <TextView
                android:id="@+id/screen_on_summary"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:text="@string/zen_onboarding_screen_on_summary" />
        </LinearLayout>

    </LinearLayout>

    <TextView
        android:id="@+id/further_customize"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/screen_on"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="20dp"
        android:textAppearance="?android:attr/textAppearanceListItem"
        android:text="@string/zen_onboarding_more_options" />

    <RelativeLayout
        android:id="@+id/buttons"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/further_customize"
        android:layout_marginTop="35dp"
        android:id="@+id/buttons">
        android:layout_below="@+id/feature_description"
        android:layout_marginTop="35dp">

        <TextView
            android:id="@+id/settings"
        <Button
            android:id="@+id/no"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentStart="true"
            android:layout_weight="1"
            android:layout_centerInParent="true"
            android:text="@string/zen_onboarding_settings"
            android:textAppearance="?android:attr/textAppearanceListItem"
            android:textColor="?android:attr/colorControlActivated"
            android:onClick="launchSettings" />
            android:text="@string/zen_onboarding_no_update"
            android:layout_toStartOf="@+id/ok"
            style="@style/TextAppearance.ZenOnboardingButton"
            android:onClick="close" />

        <Button
            android:id="@+id/ok"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentEnd="true"
            android:layout_weight="1"
            android:layout_centerInParent="true"
            android:text="@string/zen_onboarding_ok"
            style="@style/ActionPrimaryButton"
            style="@style/TextAppearance.ZenOnboardingButton"
            android:onClick="save" />
    </RelativeLayout>
</RelativeLayout>
 No newline at end of file
+15 −3
Original line number Diff line number Diff line
@@ -7360,14 +7360,26 @@
        <item quantity="other"><xliff:g id="on_count" example="3">%d</xliff:g> rules can turn on automatically</item>
    </plurals>
    <string name="zen_onboarding_ok">Ok</string>
    <!-- Do not disturb onboarding dialog, accept new settings [CHAR LIMIT=30]-->
    <string name="zen_onboarding_ok">Update</string>
    <!-- Do not disturb onboarding dialog, do not accept new settings [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 mutes sounds &amp; vibrations\n\nUpdate settings to also:\n\n- Hide notifications\n\n- Only show calls from starred contacts</string>
    <!-- Do not disturb onboarding dialog, header prompt for settings [CHAR LIMIT=80]-->
    <string name="zen_onboarding_dnd_visual_disturbances_header">Update your Do Not Disturb settings?</string>
    <!-- obsolete -->
    <string name="zen_onboarding_settings">Settings</string>
    <!-- obsolete -->
    <string name="zen_onboarding_more_options">You can further customize this in Settings.</string>
    <!-- obsolete -->
    <string name="zen_onboarding_screen_on_title">Block when the screen is on</string>
    <!-- obsolete -->
    <string name="zen_onboarding_screen_off_title">Block when the screen is off</string>
    <string name="zen_onboarding_dnd_visual_disturbances_description">Do Not Disturb can do more than block unwanted sounds - it can block visuals too. This may be helpful if you\'re trying to sleep, focus, or limit time spent on your phone.</string>
    <string name="zen_onboarding_dnd_visual_disturbances_header">Block sounds and visuals</string>
    <!-- obsolete -->
    <string name="zen_onboarding_screen_off_summary">Don\'t turn on the screen or wake for notifications</string>
    <!-- obsolete -->
    <string name="zen_onboarding_screen_on_summary">Don\'t show notifications at all, except for basic phone activity and status</string>
    <!-- Work Sounds: Work sound settings section header.  [CHAR LIMIT=50] -->
+11 −0
Original line number Diff line number Diff line
@@ -432,6 +432,17 @@
        <item name="android:ellipsize">marquee</item>
    </style>

  <style name="TextAppearance.ZenOnboardingButton">
        <item name="android:fontFamily">sans-serif-medium</item>
        <item name="android:textSize">14sp</item>
        <item name="android:textColor">?android:attr/colorAccent</item>
        <item name="android:background">@drawable/btn_borderless_rect</item>
        <item name="android:gravity">center</item>
        <item name="android:focusable">true</item>
        <item name="android:paddingStart">8dp</item>
        <item name="android:paddingEnd">8dp</item>
    </style>

    <style name="ActionPrimaryButton" parent="android:Widget.DeviceDefault.Button.Colored"/>

    <style name="ActionSecondaryButton" parent="android:Widget.DeviceDefault.Button"/>
+6 −32
Original line number Diff line number Diff line
@@ -33,8 +33,6 @@ public class ZenOnboardingActivity extends Activity {

    private NotificationManager mNm;
    private MetricsLogger mMetrics;
    CheckBox mScreenOn;
    CheckBox mScreenOff;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
@@ -48,10 +46,6 @@ public class ZenOnboardingActivity extends Activity {
    @VisibleForTesting
    protected void setupUI() {
        setContentView(R.layout.zen_onboarding);
        mScreenOn = findViewById(R.id.screen_on_option);
        mScreenOff = findViewById(R.id.screen_off_option);
        mScreenOn.setChecked(true);
        mScreenOff.setChecked(true);

        mMetrics.visible(MetricsEvent.SETTINGS_ZEN_ONBOARDING);
    }
@@ -66,39 +60,19 @@ public class ZenOnboardingActivity extends Activity {
        mMetrics = ml;
    }

    public void logClick(View view) {
        CheckBox checkbox = (CheckBox) view;
        switch (checkbox.getId()) {
            case R.id.screen_on_option:
                mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_SCREEN_ON, checkbox.isChecked());
                break;
            case R.id.screen_off_option:
                mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_SCREEN_OFF,
                        checkbox.isChecked());
                break;
        }
    }

    public void launchSettings(View button) {
        mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_SETTINGS);
        Intent settings = new Intent(Settings.ZEN_MODE_BLOCKED_EFFECTS_SETTINGS);
        settings.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
        startActivity(settings);
    public void close(View button) {
        mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_KEEP_CURRENT_SETTINGS);
        finishAndRemoveTask();
    }

    public void save(View button) {
        mMetrics.action(MetricsEvent.ACTION_ZEN_ONBOARDING_OK);
        NotificationManager.Policy policy = mNm.getNotificationPolicy();
        int currentEffects = policy.suppressedVisualEffects;

        currentEffects = NotificationManager.Policy.toggleScreenOnEffectsSuppressed(
                currentEffects, mScreenOn != null && mScreenOn.isChecked());
        currentEffects = NotificationManager.Policy.toggleScreenOffEffectsSuppressed(
                currentEffects, mScreenOff != null && mScreenOff.isChecked());

        NotificationManager.Policy newPolicy = new NotificationManager.Policy(
                policy.priorityCategories, policy.priorityCallSenders,
                policy.priorityMessageSenders, currentEffects);
                policy.priorityCategories, NotificationManager.Policy.PRIORITY_SENDERS_STARRED,
                policy.priorityMessageSenders,
                NotificationManager.Policy.getAllSuppressedVisualEffects());
        mNm.setNotificationPolicy(newPolicy);

        finishAndRemoveTask();
Loading