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

Commit 9a2e20a9 authored by Alejandro Nijamkin's avatar Alejandro Nijamkin
Browse files

[flexiglass] CentralSurfaces is a dep of StatusBarStateController.

This is needed to fix the crash in the attached bug.

The problem is that "root" is accessed before it's set.

The SysuiStatusBarStateController.start codepath accesses it.
The CentralSurfacesImpl.start sets it.

By adding the dependency, we ask the system to guarantee that
CentralSurfacesImpl.start happened before
SysuiStatusBarStateController.start is invoked.

Fix: 332956676
Test: manually verified that the crash no longer occurs and system UI
shows up normally (it was a crashloop)
Flag: ACONFIG com.android.systemui.scene_container DEVELOPMENT

Change-Id: I15b679616e7b98d6c142fba55e891ee351fee997
parent b6faddb5
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ import android.view.View;

import com.android.systemui.CoreStartable;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.startable.Dependencies;
import com.android.systemui.statusbar.phone.CentralSurfaces;

import java.lang.annotation.Retention;
@@ -30,6 +31,7 @@ import java.lang.annotation.Retention;
/**
 * Sends updates to {@link StateListener}s about changes to the status bar state and dozing state
 */
@Dependencies(CentralSurfaces.class)
public interface SysuiStatusBarStateController extends StatusBarStateController, CoreStartable {

    // TODO: b/115739177 (remove this explicit ordering if we can)