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

Commit e1daf91d authored by Sunny Goyal's avatar Sunny Goyal Committed by Android (Google) Code Review
Browse files

Merge "Moving all intent receiver register calls to a single place" into tm-qpr-dev

parents 5f9b26b6 a992ac9e
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -18,6 +18,8 @@ package com.android.launcher3.model;

import static android.content.ContentResolver.SCHEME_CONTENT;

import static com.android.launcher3.util.SimpleBroadcastReceiver.getPackageFilter;

import android.annotation.TargetApi;
import android.app.RemoteAction;
import android.content.ContentProviderClient;
@@ -55,7 +57,6 @@ import com.android.launcher3.popup.RemoteActionShortcut;
import com.android.launcher3.popup.SystemShortcut;
import com.android.launcher3.util.BgObjectWithLooper;
import com.android.launcher3.util.MainThreadInitializedObject;
import com.android.launcher3.util.PackageManagerHelper;
import com.android.launcher3.util.Preconditions;
import com.android.launcher3.util.SimpleBroadcastReceiver;

@@ -117,7 +118,7 @@ public final class WellbeingModel extends BgObjectWithLooper {
        if (!TextUtils.isEmpty(mWellbeingProviderPkg)) {
            mContext.registerReceiver(
                    new SimpleBroadcastReceiver(t -> restartObserver()),
                    PackageManagerHelper.getPackageFilter(mWellbeingProviderPkg,
                    getPackageFilter(mWellbeingProviderPkg,
                            Intent.ACTION_PACKAGE_ADDED, Intent.ACTION_PACKAGE_CHANGED,
                            Intent.ACTION_PACKAGE_REMOVED, Intent.ACTION_PACKAGE_DATA_CLEARED,
                            Intent.ACTION_PACKAGE_RESTARTED),
+11 −14
Original line number Diff line number Diff line
@@ -10,12 +10,10 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_S
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED;

import android.app.KeyguardManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;

import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.util.ScreenOnTracker;
import com.android.launcher3.util.ScreenOnTracker.ScreenOnListener;
import com.android.systemui.shared.system.QuickStepContract;

import java.io.PrintWriter;
@@ -30,6 +28,7 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas
            SYSUI_STATE_OVERVIEW_DISABLED | SYSUI_STATE_HOME_DISABLED |
            SYSUI_STATE_BACK_DISABLED | SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED;

    private final ScreenOnListener mScreenOnListener;
    private final TaskbarActivityContext mContext;
    private int mKeyguardSysuiFlags;
    private boolean mBouncerShowing;
@@ -37,22 +36,20 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas
    private final KeyguardManager mKeyguardManager;
    private boolean mIsScreenOff;

    private final BroadcastReceiver mScreenOffReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
    public TaskbarKeyguardController(TaskbarActivityContext context) {
        mContext = context;
        mScreenOnListener = isOn -> {
            if (!isOn) {
                mIsScreenOff = true;
                AbstractFloatingView.closeOpenViews(mContext, false, TYPE_ALL);
            }
        };

    public TaskbarKeyguardController(TaskbarActivityContext context) {
        mContext = context;
        mKeyguardManager = mContext.getSystemService(KeyguardManager.class);
    }

    public void init(NavbarButtonsViewController navbarButtonUIController) {
        mNavbarButtonsViewController = navbarButtonUIController;
        mContext.registerReceiver(mScreenOffReceiver, new IntentFilter(Intent.ACTION_SCREEN_OFF));
        ScreenOnTracker.INSTANCE.get(mContext).addListener(mScreenOnListener);
    }

    public void updateStateForSysuiFlags(int systemUiStateFlags) {
@@ -104,7 +101,7 @@ public class TaskbarKeyguardController implements TaskbarControllers.LoggableTas
    }

    public void onDestroy() {
        mContext.unregisterReceiver(mScreenOffReceiver);
        ScreenOnTracker.INSTANCE.get(mContext).removeListener(mScreenOnListener);
    }

    @Override
+6 −4
Original line number Diff line number Diff line
@@ -609,11 +609,13 @@ public class QuickstepLauncher extends Launcher {
    }

    @Override
    protected void onScreenOff() {
        super.onScreenOff();
    protected void onScreenOnChanged(boolean isOn) {
        super.onScreenOnChanged(isOn);
        if (!isOn) {
            RecentsView recentsView = getOverviewPanel();
            recentsView.finishRecentsAnimation(true /* toRecents */, null);
        }
    }

    @Override
    public void onAllAppsTransition(float progress) {
+5 −10
Original line number Diff line number Diff line
@@ -21,15 +21,12 @@ import static android.content.Intent.ACTION_PACKAGE_CHANGED;
import static android.content.Intent.ACTION_PACKAGE_REMOVED;

import static com.android.launcher3.config.FeatureFlags.SEPARATE_RECENTS_ACTIVITY;
import static com.android.launcher3.util.PackageManagerHelper.getPackageFilter;
import static com.android.systemui.shared.system.PackageManagerWrapper.ACTION_PREFERRED_ACTIVITY_CHANGED;

import android.content.ActivityNotFoundException;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
@@ -57,9 +54,9 @@ import java.util.function.Consumer;
public final class OverviewComponentObserver {
    private static final String TAG = "OverviewComponentObserver";

    private final BroadcastReceiver mUserPreferenceChangeReceiver =
    private final SimpleBroadcastReceiver mUserPreferenceChangeReceiver =
            new SimpleBroadcastReceiver(this::updateOverviewTargets);
    private final BroadcastReceiver mOtherHomeAppUpdateReceiver =
    private final SimpleBroadcastReceiver mOtherHomeAppUpdateReceiver =
            new SimpleBroadcastReceiver(this::updateOverviewTargets);

    private final Context mContext;
@@ -102,8 +99,7 @@ public final class OverviewComponentObserver {
            mConfigChangesMap.append(fallbackComponent.hashCode(), fallbackInfo.configChanges);
        } catch (PackageManager.NameNotFoundException ignored) { /* Impossible */ }

        mContext.registerReceiver(mUserPreferenceChangeReceiver,
                new IntentFilter(ACTION_PREFERRED_ACTIVITY_CHANGED));
        mUserPreferenceChangeReceiver.register(mContext, ACTION_PREFERRED_ACTIVITY_CHANGED);
        updateOverviewTargets();
    }

@@ -181,9 +177,8 @@ public final class OverviewComponentObserver {
                unregisterOtherHomeAppUpdateReceiver();

                mUpdateRegisteredPackage = defaultHome.getPackageName();
                mContext.registerReceiver(mOtherHomeAppUpdateReceiver, getPackageFilter(
                        mUpdateRegisteredPackage, ACTION_PACKAGE_ADDED, ACTION_PACKAGE_CHANGED,
                        ACTION_PACKAGE_REMOVED));
                mOtherHomeAppUpdateReceiver.registerPkgActions(mContext, mUpdateRegisteredPackage,
                        ACTION_PACKAGE_ADDED, ACTION_PACKAGE_CHANGED, ACTION_PACKAGE_REMOVED);
            }
        }
        mOverviewChangeListener.accept(mIsHomeAndOverviewSame);
+11 −9
Original line number Diff line number Diff line
@@ -63,11 +63,13 @@ public abstract class AbstractFloatingView extends LinearLayout implements Touch
            TYPE_TASK_MENU,
            TYPE_OPTIONS_POPUP,
            TYPE_ICON_SURFACE,
            TYPE_OPTIONS_POPUP_DIALOG,
            TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP,
            TYPE_WIDGETS_EDUCATION_DIALOG,
            TYPE_TASKBAR_EDUCATION_DIALOG,
            TYPE_TASKBAR_ALL_APPS,
            TYPE_OPTIONS_POPUP_DIALOG
            TYPE_ADD_TO_HOME_CONFIRMATION,
            TYPE_TASKBAR_OVERLAY_PROXY
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface FloatingViewType {}
@@ -87,14 +89,14 @@ public abstract class AbstractFloatingView extends LinearLayout implements Touch
    public static final int TYPE_TASK_MENU = 1 << 11;
    public static final int TYPE_OPTIONS_POPUP = 1 << 12;
    public static final int TYPE_ICON_SURFACE = 1 << 13;
    public static final int TYPE_OPTIONS_POPUP_DIALOG = 1 << 18;

    public static final int TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP = 1 << 14;
    public static final int TYPE_WIDGETS_EDUCATION_DIALOG = 1 << 15;
    public static final int TYPE_TASKBAR_EDUCATION_DIALOG = 1 << 16;
    public static final int TYPE_TASKBAR_ALL_APPS = 1 << 17;
    public static final int TYPE_ADD_TO_HOME_CONFIRMATION = 1 << 18;
    public static final int TYPE_TASKBAR_OVERLAY_PROXY = 1 << 19;
    public static final int TYPE_OPTIONS_POPUP_DIALOG = 1 << 14;

    public static final int TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP = 1 << 15;
    public static final int TYPE_WIDGETS_EDUCATION_DIALOG = 1 << 16;
    public static final int TYPE_TASKBAR_EDUCATION_DIALOG = 1 << 17;
    public static final int TYPE_TASKBAR_ALL_APPS = 1 << 18;
    public static final int TYPE_ADD_TO_HOME_CONFIRMATION = 1 << 19;
    public static final int TYPE_TASKBAR_OVERLAY_PROXY = 1 << 20;

    public static final int TYPE_ALL = TYPE_FOLDER | TYPE_ACTION_POPUP
            | TYPE_WIDGETS_BOTTOM_SHEET | TYPE_WIDGET_RESIZE_FRAME | TYPE_WIDGETS_FULL_SHEET
Loading