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

Commit 2c306ce6 authored by Dave Mankoff's avatar Dave Mankoff Committed by Android (Google) Code Review
Browse files

Merge "Break VolumeDialogControllerImpl' dependency on StatusBar" into sc-dev

parents b35c0291 42c91ffa
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -236,7 +236,7 @@ public class ScreenDecorations extends SystemUI implements Tunable {
            Log.i(TAG, "ScreenDecorations is disabled");
            return;
        }
        mHandler = mThreadFactory.builderHandlerOnNewThread("ScreenDecorations");
        mHandler = mThreadFactory.buildHandlerOnNewThread("ScreenDecorations");
        mExecutor = mThreadFactory.buildDelayableExecutorOnHandler(mHandler);
        mExecutor.execute(this::startOnScreenDecorationsThread);
        mDotViewController.setUiExecutor(mExecutor);
+16 −0
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import android.hardware.display.DisplayManager;
import android.hardware.face.FaceManager;
import android.hardware.fingerprint.FingerprintManager;
import android.media.AudioManager;
import android.media.IAudioService;
import android.media.MediaRouter2Manager;
import android.media.session.MediaSessionManager;
import android.net.ConnectivityManager;
@@ -77,6 +78,8 @@ import com.android.systemui.dagger.qualifiers.DisplayId;
import com.android.systemui.dagger.qualifiers.Main;
import com.android.systemui.shared.system.PackageManagerWrapper;

import java.util.Optional;

import javax.inject.Singleton;

import dagger.Module;
@@ -165,6 +168,13 @@ public class FrameworkServicesModule {
        return ActivityTaskManager.getService();
    }

    @Provides
    @Singleton
    static IAudioService provideIAudioService() {
        return IAudioService.Stub.asInterface(ServiceManager.getService(Context.AUDIO_SERVICE));
    }


    @Provides
    @Singleton
    static IBatteryStats provideIBatteryStats() {
@@ -360,6 +370,12 @@ public class FrameworkServicesModule {
        return context.getSystemService(Vibrator.class);
    }

    @Provides
    @Singleton
    static Optional<Vibrator> provideOptionalVibrator(Context context) {
        return Optional.ofNullable(context.getSystemService(Vibrator.class));
    }

    @Provides
    @Singleton
    static ViewConfiguration provideViewConfiguration(Context context) {
+11 −8
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ import android.util.ArraySet;
import android.util.Log;

import com.android.settingslib.mobile.TelephonyIcons;
import com.android.systemui.Dependency;
import com.android.systemui.R;
import com.android.systemui.dagger.SysUISingleton;
import com.android.systemui.statusbar.policy.NetworkController;
@@ -63,6 +62,7 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba
    private final SecurityController mSecurityController;
    private final Handler mHandler = Handler.getMain();
    private final CarrierConfigTracker mCarrierConfigTracker;
    private final TunerService mTunerService;

    private boolean mHideAirplane;
    private boolean mHideMobile;
@@ -83,9 +83,16 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba

    @Inject
    public StatusBarSignalPolicy(Context context, StatusBarIconController iconController,
            CarrierConfigTracker carrierConfigTracker) {
            CarrierConfigTracker carrierConfigTracker, NetworkController networkController,
            SecurityController securityController, TunerService tunerService) {
        mContext = context;

        mIconController = iconController;
        mCarrierConfigTracker = carrierConfigTracker;
        mNetworkController = networkController;
        mSecurityController = securityController;
        mTunerService = tunerService;

        mSlotAirplane = mContext.getString(com.android.internal.R.string.status_bar_airplane);
        mSlotMobile   = mContext.getString(com.android.internal.R.string.status_bar_mobile);
        mSlotWifi     = mContext.getString(com.android.internal.R.string.status_bar_wifi);
@@ -96,18 +103,14 @@ public class StatusBarSignalPolicy implements NetworkControllerImpl.SignalCallba
                mContext.getString(com.android.internal.R.string.status_bar_call_strength);
        mActivityEnabled = mContext.getResources().getBoolean(R.bool.config_showActivity);

        mIconController = iconController;
        mCarrierConfigTracker = carrierConfigTracker;
        mNetworkController = Dependency.get(NetworkController.class);
        mSecurityController = Dependency.get(SecurityController.class);

        Dependency.get(TunerService.class).addTunable(this, StatusBarIconController.ICON_HIDE_LIST);
        tunerService.addTunable(this, StatusBarIconController.ICON_HIDE_LIST);
        mNetworkController.addCallback(this);
        mSecurityController.addCallback(this);
    }

    public void destroy() {
        Dependency.get(TunerService.class).removeTunable(this);
        mTunerService.removeTunable(this);
        mNetworkController.removeCallback(this);
        mSecurityController.removeCallback(this);
    }
+9 −1
Original line number Diff line number Diff line
@@ -29,13 +29,21 @@ import java.util.concurrent.Executor;
 * threads; there are no singletons here. Use responsibly.
 */
public interface ThreadFactory {
    /**
     * Returns a {@link Looper} running on a named thread.
     *
     * The thread is implicitly started and may be left running indefinitely, depending on the
     * implementation. Assume this is the case and use responsibly.
     */
    Looper buildLooperOnNewThread(String threadName);

    /**
     * Returns a {@link Handler} running on a named thread.
     *
     * The thread is implicitly started and may be left running indefinitely, depending on the
     * implementation. Assume this is the case and use responsibly.
     */
    Handler builderHandlerOnNewThread(String threadName);
    Handler buildHandlerOnNewThread(String threadName);

    /**
     * Return an {@link java.util.concurrent.Executor} running on a named thread.
+7 −2
Original line number Diff line number Diff line
@@ -29,10 +29,15 @@ class ThreadFactoryImpl implements ThreadFactory {
    ThreadFactoryImpl() {}

    @Override
    public Handler builderHandlerOnNewThread(String threadName) {
    public Looper buildLooperOnNewThread(String threadName) {
        HandlerThread handlerThread = new HandlerThread(threadName);
        handlerThread.start();
        return new Handler(handlerThread.getLooper());
        return handlerThread.getLooper();
    }

    @Override
    public Handler buildHandlerOnNewThread(String threadName) {
        return new Handler(buildLooperOnNewThread(threadName));
    }

    @Override
Loading