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

Commit f376daf6 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Can't use dagger to inject DockManager."

parents 2d70f04a 3f4650ce
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
@@ -39,6 +39,7 @@ import android.view.ViewGroup;
import androidx.annotation.VisibleForTesting;

import com.android.internal.colorextraction.ColorExtractor;
import com.android.systemui.SysUiServiceProvider;
import com.android.systemui.colorextraction.SysuiColorExtractor;
import com.android.systemui.dock.DockManager;
import com.android.systemui.dock.DockManager.DockEventListener;
@@ -72,6 +73,7 @@ public final class ClockManager {
    private final Map<String, ClockPlugin> mClocks = new ArrayMap<>();
    @Nullable private ClockPlugin mCurrentClock;

    private final Context mContext;
    private final ContentResolver mContentResolver;
    private final SettingsWrapper mSettingsWrapper;
    private final Handler mMainHandler = new Handler(Looper.getMainLooper());
@@ -117,7 +119,7 @@ public final class ClockManager {
                    reload();
                }
            };
    @Nullable private final DockManager mDockManager;
    @Nullable private DockManager mDockManager;
    /**
     * When docked, the DOCKED_CLOCK_FACE setting will be checked for the custom clock face
     * to show.
@@ -132,18 +134,16 @@ public final class ClockManager {

    @Inject
    public ClockManager(Context context, InjectionInflationController injectionInflater,
            PluginManager pluginManager, @Nullable DockManager dockManager,
            SysuiColorExtractor colorExtractor) {
        this(context, injectionInflater, pluginManager, dockManager, colorExtractor,
            PluginManager pluginManager, SysuiColorExtractor colorExtractor) {
        this(context, injectionInflater, pluginManager, colorExtractor,
                context.getContentResolver(), new SettingsWrapper(context.getContentResolver()));
    }

    ClockManager(Context context, InjectionInflationController injectionInflater,
            PluginManager pluginManager, @Nullable DockManager dockManager,
            SysuiColorExtractor colorExtractor, ContentResolver contentResolver,
            SettingsWrapper settingsWrapper) {
            PluginManager pluginManager, SysuiColorExtractor colorExtractor,
            ContentResolver contentResolver, SettingsWrapper settingsWrapper) {
        mContext = context;
        mPluginManager = pluginManager;
        mDockManager = dockManager;
        mColorExtractor = colorExtractor;
        mContentResolver = contentResolver;
        mSettingsWrapper = settingsWrapper;
@@ -323,6 +323,9 @@ public final class ClockManager {
        mContentResolver.registerContentObserver(
                Settings.Secure.getUriFor(Settings.Secure.DOCKED_CLOCK_FACE),
                false, mContentObserver);
        if (mDockManager == null) {
            mDockManager = SysUiServiceProvider.getComponent(mContext, DockManager.class);
        }
        if (mDockManager != null) {
            mDockManager.addListener(mDockEventListener);
        }
+0 −11
Original line number Diff line number Diff line
@@ -31,7 +31,6 @@ import com.android.internal.widget.LockPatternUtils;
import com.android.keyguard.ViewMediatorCallback;
import com.android.systemui.assist.AssistManager;
import com.android.systemui.classifier.FalsingManager;
import com.android.systemui.dock.DockManager;
import com.android.systemui.fragments.FragmentService;
import com.android.systemui.keyguard.DismissCallbackRegistry;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
@@ -220,16 +219,6 @@ public class SystemUIFactory {
        return SysUiServiceProvider.getComponent(context, StatusBar.class);
    }

    /**
     * Provides DockManager.
     */
    @Singleton
    @Provides
    @Nullable
    public DockManager providesDockManager(Context context) {
        return SysUiServiceProvider.getComponent(context, DockManager.class);
    }

    @Module
    protected static class ContextHolder {
        private Context mContext;
+3 −1
Original line number Diff line number Diff line
@@ -67,8 +67,10 @@ public final class ClockManagerTest extends SysuiTestCase {
        when(mMockInjectionInflationController.injectable(any())).thenReturn(inflater);

        mFakeDockManager = new DockManagerFake();
        getContext().putComponent(DockManager.class, mFakeDockManager);

        mClockManager = new ClockManager(getContext(), mMockInjectionInflationController,
                mMockPluginManager, mFakeDockManager, mMockColorExtractor, mMockContentResolver,
                mMockPluginManager, mMockColorExtractor, mMockContentResolver,
                mMockSettingsWrapper);

        mClockManager.addOnClockChangedListener(mMockListener);