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

Commit b4290129 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add link to notification app listing in shade" into pi-dev

parents a14ad4b2 ed1c9af6
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -1347,11 +1347,19 @@ public final class Settings {
    public static final String ACTION_NOTIFICATION_SETTINGS
            = "android.settings.NOTIFICATION_SETTINGS";

    /**
     * Activity Action: Show app listing settings, filtered by those that send notifications.
     *
     * @hide
     */
    @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
    public static final String ACTION_ALL_APPS_NOTIFICATION_SETTINGS =
            "android.settings.ALL_APPS_NOTIFICATION_SETTINGS";

    /**
     * Activity Action: Show notification settings for a single app.
     * <p>
     *     Input: {@link #EXTRA_APP_PACKAGE}, the package containing the channel to display.
     *     Input: Optionally, {@link #EXTRA_CHANNEL_ID}, to highlight that channel.
     *     Input: {@link #EXTRA_APP_PACKAGE}, the package to display.
     * <p>
     * Output: Nothing.
     */
+18 −3
Original line number Diff line number Diff line
@@ -15,13 +15,27 @@
  -->

<!-- Extends Framelayout -->
<com.android.systemui.statusbar.DismissView
<com.android.systemui.statusbar.FooterView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingEnd="8dp"
        android:visibility="gone">
    <com.android.systemui.statusbar.DismissViewButton
    <FrameLayout
        android:id="@+id/content"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
        <com.android.systemui.statusbar.FooterViewButton
            style="@android:style/Widget.Material.Button.Borderless"
            android:id="@+id/manage_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="start"
            android:focusable="true"
            android:text="@string/manage_notifications_text"
            android:textColor="?attr/wallpaperTextColor"
            android:textAllCaps="false"/>
        <com.android.systemui.statusbar.FooterViewButton
            style="@android:style/Widget.Material.Button.Borderless"
            android:id="@+id/dismiss_text"
            android:layout_width="wrap_content"
@@ -32,4 +46,5 @@
            android:text="@string/clear_all_notifications_text"
            android:textColor="?attr/wallpaperTextColor"
            android:textAllCaps="true"/>
</com.android.systemui.statusbar.DismissView>
    </FrameLayout>
</com.android.systemui.statusbar.FooterView>
+3 −0
Original line number Diff line number Diff line
@@ -1053,6 +1053,9 @@
    <!-- The text to clear all notifications. [CHAR LIMIT=60] -->
    <string name="clear_all_notifications_text">Clear all</string>

    <!-- The text for the manage notifications link. [CHAR LIMIT=40] -->
    <string name="manage_notifications_text">Manage notifications</string>

    <!-- The text to show in the notifications shade when dnd is suppressing notifications. [CHAR LIMIT=100] -->
    <string name="dnd_suppressing_shade_text">Do Not disturb is hiding notifications</string>

+5 −0
Original line number Diff line number Diff line
@@ -48,6 +48,11 @@ public class EmptyShadeView extends StackScrollerDecorView {
        return findViewById(R.id.no_notifications);
    }

    @Override
    protected View findSecondaryView() {
        return null;
    }

    public void setTextColor(@ColorInt int color) {
        mEmptyText.setTextColor(color);
    }
+24 −12
Original line number Diff line number Diff line
@@ -26,11 +26,12 @@ import com.android.systemui.R;
import com.android.systemui.statusbar.stack.ExpandableViewState;
import com.android.systemui.statusbar.stack.StackScrollState;

public class DismissView extends StackScrollerDecorView {
public class FooterView extends StackScrollerDecorView {
    private final int mClearAllTopPadding;
    private DismissViewButton mDismissButton;
    private FooterViewButton mDismissButton;
    private FooterViewButton mManageButton;

    public DismissView(Context context, AttributeSet attrs) {
    public FooterView(Context context, AttributeSet attrs) {
        super(context, attrs);
        mClearAllTopPadding = context.getResources().getDimensionPixelSize(
                R.dimen.clear_all_padding_top);
@@ -38,21 +39,31 @@ public class DismissView extends StackScrollerDecorView {

    @Override
    protected View findContentView() {
        return findViewById(R.id.content);
    }

    protected View findSecondaryView() {
        return findViewById(R.id.dismiss_text);
    }

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
        mDismissButton = (DismissViewButton) findContentView();
        mDismissButton = (FooterViewButton) findSecondaryView();
        mManageButton = findViewById(R.id.manage_text);
    }

    public void setTextColor(@ColorInt int color) {
        mManageButton.setTextColor(color);
        mDismissButton.setTextColor(color);
    }

    public void setOnButtonClickListener(OnClickListener listener) {
        mContent.setOnClickListener(listener);
    public void setManageButtonClickListener(OnClickListener listener) {
        mManageButton.setOnClickListener(listener);
    }

    public void setDismissButtonClickListener(OnClickListener listener) {
        mDismissButton.setOnClickListener(listener);
    }

    public boolean isOnEmptySpace(float touchX, float touchY) {
@@ -68,25 +79,26 @@ public class DismissView extends StackScrollerDecorView {
        mDismissButton.setText(R.string.clear_all_notifications_text);
        mDismissButton.setContentDescription(
                mContext.getString(R.string.accessibility_clear_all));
        mManageButton.setText(R.string.manage_notifications_text);
    }

    public boolean isButtonVisible() {
        return mDismissButton.getAlpha() != 0.0f;
        return mManageButton.getAlpha() != 0.0f;
    }

    @Override
    public ExpandableViewState createNewViewState(StackScrollState stackScrollState) {
        return new DismissViewState();
        return new FooterViewState();
    }

    public class DismissViewState extends ExpandableViewState {
    public class FooterViewState extends ExpandableViewState {
        @Override
        public void applyToView(View view) {
            super.applyToView(view);
            if (view instanceof DismissView) {
                DismissView dismissView = (DismissView) view;
            if (view instanceof FooterView) {
                FooterView footerView = (FooterView) view;
                boolean visible = this.clipTopAmount < mClearAllTopPadding;
                dismissView.performVisibilityAnimation(visible && !dismissView.willBeGone());
                footerView.performVisibilityAnimation(visible && !footerView.willBeGone());
            }
        }
    }
Loading