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

Commit 5a33106d authored by Oleksandr Peletskyi's avatar Oleksandr Peletskyi
Browse files

Fixed cross profile usage of TextClock.

Fixed crash of a widget that uses TextClock and belongs to a work
profile when is being added to the dash board.

BUG:27035203
Change-Id: I70c66cb792d159d2527050db820e7154784148a2
parent 41c1bb8f
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -555,7 +555,15 @@ public class TextClock extends TextView {
        filter.addAction(Intent.ACTION_TIME_CHANGED);
        filter.addAction(Intent.ACTION_TIMEZONE_CHANGED);

        getContext().registerReceiver(mIntentReceiver, filter, null, getHandler());
        // OK, this is gross but needed. This class is supported by the
        // remote views mechanism and as a part of that the remote views
        // can be inflated by a context for another user without the app
        // having interact users permission - just for loading resources.
        // For example, when adding widgets from a managed profile to the
        // home screen. Therefore, we register the receiver as the user
        // the app is running as not the one the context is for.
        getContext().registerReceiverAsUser(mIntentReceiver, android.os.Process.myUserHandle(),
                filter, null, getHandler());
    }

    private void registerObserver() {