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

Commit 3bdd65e2 authored by Julia Reynolds's avatar Julia Reynolds Committed by Android (Google) Code Review
Browse files

Merge "Fix crash on rotation" into pi-dev

parents ff2653a0 e2897aed
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2743,6 +2743,7 @@

        <!-- Show channel-level notification settings (channel passed in as extras) -->
        <activity android:name="Settings$ChannelNotificationSettingsActivity"
                  android:label="@string/notification_channel_title"
                  android:exported="true">
            <intent-filter android:priority="1">
                <action android:name="android.settings.CHANNEL_NOTIFICATION_SETTINGS" />
+18 −1
Original line number Diff line number Diff line
@@ -31,15 +31,32 @@

    <!-- Channels/Channel groups added here -->

    <!-- Importance toggle -->
    <com.android.settingslib.RestrictedSwitchPreference
        android:key="allow_sound"
        android:title="@string/allow_interruption"
        android:summary="@string/allow_interruption_summary" />

    <!-- Visibility Override -->
    <com.android.settings.RestrictedListPreference
        android:key="visibility_override"
        android:title="@string/app_notification_visibility_override_title"/>

    <!-- Show badge -->
    <com.android.settingslib.RestrictedSwitchPreference
        android:key="badge"
        android:title="@string/notification_badge_title"
        android:order="501"
        settings:useAdditionalSummary="true"
        settings:allowDividerAbove="true"
        settings:restrictedSwitchSummary="@string/enabled_by_admin" />

    <!-- Bypass DND -->
    <com.android.settingslib.RestrictedSwitchPreference
        android:key="bypass_dnd"
        android:title="@string/app_notification_override_dnd_title"
        android:summary="@string/app_notification_override_dnd_summary"
        settings:useAdditionalSummary="true"/>

    <Preference
        android:key="app_link"
        android:title="@string/app_settings_link"
+6 −3
Original line number Diff line number Diff line
@@ -14,8 +14,11 @@
     limitations under the License.
-->

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:settings="http://schemas.android.com/apk/res-auto"
    android:key="channel_settings"
    android:title="@string/notification_channel_title"
    settings:initialExpandedChildrenCount="3" >

    <com.android.settings.applications.LayoutPreference
+2 −5
Original line number Diff line number Diff line
@@ -68,10 +68,7 @@ public class AppNotificationSettings extends NotificationSettingsBase {
            mDynamicPreferences.clear();
        }

        if (mShowLegacyChannelConfig) {
            addPreferencesFromResource(R.xml.channel_notification_settings);
        } else {
            addPreferencesFromResource(R.xml.app_notification_settings);
        if (!mShowLegacyChannelConfig) {
            // Load channel settings
            new AsyncTask<Void, Void, Void>() {
                @Override
@@ -106,7 +103,7 @@ public class AppNotificationSettings extends NotificationSettingsBase {

    @Override
    protected int getPreferenceScreenResId() {
        return R.xml.notification_settings;
        return R.xml.app_notification_settings;
    }

    @Override
+17 −6
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@ package com.android.settings.notification;

import static com.android.settings.widget.EntityHeaderController.PREF_KEY_APP_HEADER;

import android.arch.lifecycle.LifecycleObserver;
import android.arch.lifecycle.OnLifecycleEvent;
import android.content.Context;
import android.support.v14.preference.PreferenceFragment;
import android.support.v7.preference.Preference;
@@ -30,13 +32,16 @@ import com.android.settings.R;
import com.android.settings.applications.LayoutPreference;
import com.android.settings.core.PreferenceControllerMixin;
import com.android.settings.widget.EntityHeaderController;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.events.OnStart;

import java.util.Objects;

public class HeaderPreferenceController extends NotificationPreferenceController
        implements PreferenceControllerMixin {
        implements PreferenceControllerMixin, LifecycleObserver {

    private final PreferenceFragment mFragment;
    private EntityHeaderController mHeaderController;

    public HeaderPreferenceController(Context context, PreferenceFragment fragment) {
        super(context, null);
@@ -57,10 +62,9 @@ public class HeaderPreferenceController extends NotificationPreferenceController
    public void updateState(Preference preference) {
        if (mAppRow != null && mFragment != null) {
            LayoutPreference pref = (LayoutPreference) preference;
            EntityHeaderController controller = EntityHeaderController
                    .newInstance(mFragment.getActivity(), mFragment,
                            pref.findViewById(R.id.entity_header));
            pref = controller.setIcon(mAppRow.icon)
            mHeaderController = EntityHeaderController.newInstance(
                    mFragment.getActivity(), mFragment, pref.findViewById(R.id.entity_header));
            pref = mHeaderController.setIcon(mAppRow.icon)
                    .setLabel(getLabel())
                    .setSummary(getSummary())
                    .setPackageName(mAppRow.pkg)
@@ -68,7 +72,7 @@ public class HeaderPreferenceController extends NotificationPreferenceController
                    .setButtonActions(EntityHeaderController.ActionType.ACTION_NOTIF_PREFERENCE,
                            EntityHeaderController.ActionType.ACTION_NONE)
                    .setHasAppInfoLink(true)
                    .done(mFragment.getActivity(), mContext);
                    .done(null, mContext);
            pref.findViewById(R.id.entity_header).setVisibility(View.VISIBLE);
        }
    }
@@ -101,4 +105,11 @@ public class HeaderPreferenceController extends NotificationPreferenceController
            return "";
        }
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    public void onStart() {
        if (mHeaderController != null) {
            mHeaderController.styleActionBar(mFragment.getActivity());
        }
    }
}
Loading