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

Commit 9077db3c authored by Bernardo Rufino's avatar Bernardo Rufino
Browse files

Update trampoline toast message

It was saying "will be blocked" when it was in fact already being
blocked.

Test: W/ targetSdk 30, verify trampoline toast says "will be blocked".
Test: W/ targetSdk 'S', verify trampoline toast says "blocked".
Bug: 167676448
Fixes: 171296995
Change-Id: Ie6ac8b7b5dac08c828f25582c7ef841b2bb1f9e6
parent 96e4c40c
Loading
Loading
Loading
Loading
+18 −15
Original line number Diff line number Diff line
@@ -10077,24 +10077,27 @@ public class NotificationManagerService extends SystemService {

        @Override
        public boolean isActivityStartAllowed(int uid, String packageName) {
            boolean block = CompatChanges.isChangeEnabled(NOTIFICATION_TRAMPOLINE_BLOCK, uid);
            if (block || mPackagesShown.add(packageName)) {
                mUiHandler.post(() ->
                        Toast.makeText(getUiContext(),
                                "Indirect activity start from "
                                        + packageName + ". "
                                        + "This will be blocked in S.\n"
                                        + "See go/s-trampolines.",
                                Toast.LENGTH_LONG).show());
            }
            String message =
            String toastMessage = "Indirect activity start from " + packageName;
            String logcatMessage =
                    "Indirect notification activity start (trampoline) from " + packageName;
            if (block) {
                Slog.e(TAG, message + " blocked");

            if (CompatChanges.isChangeEnabled(NOTIFICATION_TRAMPOLINE_BLOCK, uid)) {
                toast(toastMessage + " blocked.");
                Slog.e(TAG, logcatMessage + " blocked");
                return false;
            } else {
                if (mPackagesShown.add(packageName)) {
                    toast(toastMessage + ". This will be blocked in S.");
                }
            Slog.w(TAG, message + ", this should be avoided for performance reasons");
                Slog.w(TAG, logcatMessage + ", this should be avoided for performance reasons");
                return true;
            }
        }

        private void toast(String message) {
            mUiHandler.post(() ->
                    Toast.makeText(getUiContext(), message + "\nSee go/s-trampolines.",
                            Toast.LENGTH_LONG).show());
        }
    }
}