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

Commit 859bbaa7 authored by Charlie Anderson's avatar Charlie Anderson Committed by Android (Google) Code Review
Browse files

Merge "Convert PackageManagerHelper to use Dagger" into main

parents de739c22 480b42f8
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.content.Context;
import com.android.launcher3.pm.InstallSessionHelper;
import com.android.launcher3.util.ApiWrapper;
import com.android.launcher3.util.DaggerSingletonTracker;
import com.android.launcher3.util.PackageManagerHelper;
import com.android.launcher3.util.PluginManagerWrapper;
import com.android.launcher3.util.ScreenOnTracker;
import com.android.launcher3.util.SettingsCache;
@@ -46,6 +47,7 @@ public interface LauncherBaseAppComponent {
    SettingsCache getSettingsCache();
    CustomWidgetManager getCustomWidgetManager();
    PluginManagerWrapper getPluginManagerWrapper();
    PackageManagerHelper getPackageManagerHelper();

    /** Builder for LauncherBaseAppComponent. */
    interface Builder {
+12 −8
Original line number Diff line number Diff line
@@ -42,6 +42,9 @@ import androidx.annotation.Nullable;
import com.android.launcher3.PendingAddItemInfo;
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.dagger.ApplicationContext;
import com.android.launcher3.dagger.LauncherAppSingleton;
import com.android.launcher3.dagger.LauncherBaseAppComponent;
import com.android.launcher3.model.data.AppInfo;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.ItemInfoWithIcon;
@@ -51,16 +54,19 @@ import com.android.launcher3.model.data.WorkspaceItemInfo;
import java.util.List;
import java.util.Objects;

import javax.inject.Inject;

/**
 * Utility methods using package manager
 */
public class PackageManagerHelper implements SafeCloseable{
@LauncherAppSingleton
public class PackageManagerHelper {

    private static final String TAG = "PackageManagerHelper";

    @NonNull
    public static final MainThreadInitializedObject<PackageManagerHelper> INSTANCE =
            new MainThreadInitializedObject<>(PackageManagerHelper::new);
    public static DaggerSingletonObject<PackageManagerHelper> INSTANCE =
            new DaggerSingletonObject<>(LauncherBaseAppComponent::getPackageManagerHelper);

    @NonNull
    private final Context mContext;
@@ -73,7 +79,8 @@ public class PackageManagerHelper implements SafeCloseable{

    private final String[] mLegacyMultiInstanceSupportedApps;

    public PackageManagerHelper(@NonNull final Context context) {
    @Inject
    public PackageManagerHelper(@ApplicationContext final Context context) {
        mContext = context;
        mPm = context.getPackageManager();
        mLauncherApps = Objects.requireNonNull(context.getSystemService(LauncherApps.class));
@@ -81,9 +88,6 @@ public class PackageManagerHelper implements SafeCloseable{
                    R.array.config_appsSupportMultiInstancesSplit);
    }

    @Override
    public void close() { }

    /**
     * Returns the installing app package for the given package
     */