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

Commit 429d27dd authored by Matthew Fritze's avatar Matthew Fritze
Browse files

Pass Uri in SliceBroadcastRelay

Add the Uri as an extra to the Intent broadcast in the relay.

Test: runtest systemui
Bug: 70622039
Change-Id: I4942ecc9780a7814e3ac436e80034f76cb7bc6db
parent 69b1fce5
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -87,9 +87,11 @@ public class SliceBroadcastRelayHandler extends SystemUI {

        private final ArraySet<ComponentName> mReceivers = new ArraySet<>();
        private final UserHandle mUserId;
        private final Uri mUri;

        public BroadcastRelay(Uri uri) {
            mUserId = new UserHandle(ContentProvider.getUserIdFromUri(uri));
            mUri = uri;
        }

        public void register(Context context, ComponentName receiver, IntentFilter filter) {
@@ -106,6 +108,7 @@ public class SliceBroadcastRelayHandler extends SystemUI {
            intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
            for (ComponentName receiver : mReceivers) {
                intent.setComponent(receiver);
                intent.putExtra(SliceBroadcastRelay.EXTRA_URI, mUri.toString());
                if (DEBUG) Log.d(TAG, "Forwarding " + receiver + " " + intent + " " + mUserId);
                context.sendBroadcastAsUser(intent, mUserId);
            }
+1 −0
Original line number Diff line number Diff line
@@ -60,6 +60,7 @@ public class SliceBroadcastRelayHandlerTest extends SysuiTestCase {
                new ComponentName(mContext.getPackageName(), Receiver.class.getName()));
        IntentFilter value = new IntentFilter(TEST_ACTION);
        intent.putExtra(SliceBroadcastRelay.EXTRA_FILTER, value);
        intent.putExtra(SliceBroadcastRelay.EXTRA_URI, testUri);

        relayHandler.handleIntent(intent);
        verify(relayHandler.mContext).registerReceiver(any(), eq(value));