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

Commit db19b396 authored by Govinda Wasserman's avatar Govinda Wasserman Committed by Android (Google) Code Review
Browse files

Merge "Add option to return a null Dagger graph" into tm-qpr-dev

parents 5bd31e03 19e63a79
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -411,6 +411,7 @@

        <service android:name=".screenshot.ScreenshotCrossProfileService"
                 android:permission="com.android.systemui.permission.SELF"
                 android:process=":screenshot_cross_profile"
                 android:exported="false" />

        <service android:name=".screenrecord.RecordingService" />
+9 −0
Original line number Diff line number Diff line
@@ -22,6 +22,8 @@ import android.os.Handler;
import android.os.HandlerThread;
import android.util.Log;

import androidx.annotation.Nullable;

import com.android.systemui.dagger.GlobalRootComponent;
import com.android.systemui.dagger.SysUIComponent;
import com.android.systemui.dagger.WMComponent;
@@ -53,6 +55,7 @@ public abstract class SystemUIInitializer {
        mContext = context;
    }

    @Nullable
    protected abstract GlobalRootComponent.Builder getGlobalRootComponentBuilder();

    /**
@@ -69,6 +72,11 @@ public abstract class SystemUIInitializer {
     * Starts the initialization process. This stands up the Dagger graph.
     */
    public void init(boolean fromTest) throws ExecutionException, InterruptedException {
        GlobalRootComponent.Builder globalBuilder = getGlobalRootComponentBuilder();
        if (globalBuilder == null) {
            return;
        }

        mRootComponent = getGlobalRootComponentBuilder()
                .context(mContext)
                .instrumentationTest(fromTest)
@@ -119,6 +127,7 @@ public abstract class SystemUIInitializer {
                    .setBackAnimation(Optional.ofNullable(null))
                    .setDesktopMode(Optional.ofNullable(null));
        }

        mSysUIComponent = builder.build();
        if (initializeComponents) {
            mSysUIComponent.init();
+13 −2
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.systemui

import android.app.Application
import android.content.Context
import com.android.systemui.dagger.DaggerReferenceGlobalRootComponent
import com.android.systemui.dagger.GlobalRootComponent
@@ -24,7 +25,17 @@ import com.android.systemui.dagger.GlobalRootComponent
 * {@link SystemUIInitializer} that stands up AOSP SystemUI.
 */
class SystemUIInitializerImpl(context: Context) : SystemUIInitializer(context) {
    override fun getGlobalRootComponentBuilder(): GlobalRootComponent.Builder {
        return DaggerReferenceGlobalRootComponent.builder()

    override fun getGlobalRootComponentBuilder(): GlobalRootComponent.Builder? {
        return when (Application.getProcessName()) {
            SCREENSHOT_CROSS_PROFILE_PROCESS -> null
            else -> DaggerReferenceGlobalRootComponent.builder()
        }
    }

    companion object {
        private const val SYSTEMUI_PROCESS = "com.android.systemui"
        private const val SCREENSHOT_CROSS_PROFILE_PROCESS =
                "$SYSTEMUI_PROCESS:screenshot_cross_profile"
    }
}