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

Commit e2429079 authored by Daniel Santiago Rivera's avatar Daniel Santiago Rivera
Browse files

Restrict reflection access to Toast's TransientNotification.

Apps accessing the transient notification end up modifying the Toast's
presentation in un-intended ways, such as forcing it to show on top of
the lock screen. For other cases, as configuration of duration, gravity
or view to show, Toast has available public APIs.

Bug: 123768598
Test: n/a
Change-Id: I0854389e4cc60baff2d433d4c49fa603a242982e
parent affa55b4
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -95,7 +95,7 @@ public class Toast {
    public static final int LENGTH_LONG = 1;

    final Context mContext;
    @UnsupportedAppUsage
    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
    final TN mTN;
    @UnsupportedAppUsage
    int mDuration;
@@ -354,7 +354,7 @@ public class Toast {
    }

    private static class TN extends ITransientNotification.Stub {
        @UnsupportedAppUsage
        @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
        private final WindowManager.LayoutParams mParams = new WindowManager.LayoutParams();

        private static final int SHOW = 0;
@@ -362,18 +362,18 @@ public class Toast {
        private static final int CANCEL = 2;
        final Handler mHandler;

        @UnsupportedAppUsage
        @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
        int mGravity;
        int mX;
        @UnsupportedAppUsage
        @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
        int mY;
        float mHorizontalMargin;
        float mVerticalMargin;


        @UnsupportedAppUsage
        @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
        View mView;
        @UnsupportedAppUsage
        @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
        View mNextView;
        int mDuration;