Revert "unfold: move everything into SysUIUnfoldComponent"

This reverts commit 0de2b1122d55c23000ca5ef2671b9d9e8fd24d97.

Reason for revert: Breaks unfold animation in launcher, as the progress forwarder to make the launcher IPCs is set on the wrong instance

Change-Id: If2d37d849003545d21cf441f48bc430a9d3c0830
Fixes: 314934160
diff --git a/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java b/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java
index 9672fac..e7b8773 100644
--- a/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java
+++ b/packages/SystemUI/src/com/android/systemui/dagger/SysUIComponent.java
@@ -36,6 +36,8 @@
 import com.android.systemui.unfold.FoldStateLoggingProvider;
 import com.android.systemui.unfold.SysUIUnfoldComponent;
 import com.android.systemui.unfold.UnfoldTransitionProgressProvider;
+import com.android.systemui.unfold.dagger.UnfoldBg;
+import com.android.systemui.unfold.progress.UnfoldTransitionProgressForwarder;
 import com.android.wm.shell.back.BackAnimation;
 import com.android.wm.shell.bubbles.Bubbles;
 import com.android.wm.shell.desktopmode.DesktopMode;
@@ -137,19 +139,26 @@
                             c.getUnfoldHapticsPlayer();
                             c.getNaturalRotationUnfoldProgressProvider().init();
                             c.getUnfoldLatencyTracker().init();
-                            c.getFoldStateLoggingProvider()
-                                    .ifPresent(FoldStateLoggingProvider::init);
-                            c.getFoldStateLogger().ifPresent(FoldStateLogger::init);
-                            final UnfoldTransitionProgressProvider progressProvider =
-                                    Flags.unfoldAnimationBackgroundProgress()
-                                            ? c.getBgUnfoldTransitionProgressProvider()
-                                            : c.getUnfoldTransitionProgressProvider();
-                            progressProvider.addCallback(c.getUnfoldTransitionProgressForwarder());
                         });
         // No init method needed, just needs to be gotten so that it's created.
         getMediaMuteAwaitConnectionCli();
         getNearbyMediaDevicesManager();
         getConnectingDisplayViewModel().init();
+        getFoldStateLoggingProvider().ifPresent(FoldStateLoggingProvider::init);
+        getFoldStateLogger().ifPresent(FoldStateLogger::init);
+
+        Optional<UnfoldTransitionProgressProvider> unfoldTransitionProgressProvider;
+
+        if (Flags.unfoldAnimationBackgroundProgress()) {
+            unfoldTransitionProgressProvider = getBgUnfoldTransitionProgressProvider();
+        } else {
+            unfoldTransitionProgressProvider = getUnfoldTransitionProgressProvider();
+        }
+        unfoldTransitionProgressProvider
+                .ifPresent(
+                        (progressProvider) ->
+                                getUnfoldTransitionProgressForwarder()
+                                        .ifPresent(progressProvider::addCallback));
     }
 
     /**
@@ -171,6 +180,37 @@
     ContextComponentHelper getContextComponentHelper();
 
     /**
+     * Creates a UnfoldTransitionProgressProvider that calculates progress in the background.
+     */
+    @SysUISingleton
+    @UnfoldBg
+    Optional<UnfoldTransitionProgressProvider> getBgUnfoldTransitionProgressProvider();
+
+    /**
+     * Creates a UnfoldTransitionProgressProvider that calculates progress in the main thread.
+     */
+    @SysUISingleton
+    Optional<UnfoldTransitionProgressProvider> getUnfoldTransitionProgressProvider();
+
+    /**
+     * Creates a UnfoldTransitionProgressForwarder.
+     */
+    @SysUISingleton
+    Optional<UnfoldTransitionProgressForwarder> getUnfoldTransitionProgressForwarder();
+
+    /**
+     * Creates a FoldStateLoggingProvider.
+     */
+    @SysUISingleton
+    Optional<FoldStateLoggingProvider> getFoldStateLoggingProvider();
+
+    /**
+     * Creates a FoldStateLogger.
+     */
+    @SysUISingleton
+    Optional<FoldStateLogger> getFoldStateLogger();
+
+    /**
      * Main dependency providing module.
      */
     @SysUISingleton
diff --git a/packages/SystemUI/src/com/android/systemui/unfold/SysUIUnfoldModule.kt b/packages/SystemUI/src/com/android/systemui/unfold/SysUIUnfoldModule.kt
index ff73e0e..10fc83c 100644
--- a/packages/SystemUI/src/com/android/systemui/unfold/SysUIUnfoldModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/unfold/SysUIUnfoldModule.kt
@@ -21,7 +21,6 @@
 import com.android.systemui.shade.NotificationPanelUnfoldAnimationController
 import com.android.systemui.statusbar.phone.StatusBarMoveFromCenterAnimationController
 import com.android.systemui.unfold.dagger.UnfoldBg
-import com.android.systemui.unfold.progress.UnfoldTransitionProgressForwarder
 import com.android.systemui.unfold.util.NaturalRotationUnfoldProgressProvider
 import com.android.systemui.unfold.util.ScopedUnfoldTransitionProgressProvider
 import com.android.systemui.unfold.util.UnfoldKeyguardVisibilityManager
@@ -107,20 +106,4 @@
     fun getUnfoldLatencyTracker(): UnfoldLatencyTracker
 
     fun getNaturalRotationUnfoldProgressProvider(): NaturalRotationUnfoldProgressProvider
-
-    /** Creates a UnfoldTransitionProgressProvider that calculates progress in the main thread. */
-    fun getUnfoldTransitionProgressProvider(): UnfoldTransitionProgressProvider
-
-    /** Creates a UnfoldTransitionProgressProvider that calculates progress in the background. */
-    @UnfoldBg
-    fun getBgUnfoldTransitionProgressProvider(): UnfoldTransitionProgressProvider
-
-    /** Creates a UnfoldTransitionProgressForwarder. */
-    fun getUnfoldTransitionProgressForwarder(): UnfoldTransitionProgressForwarder
-
-    /** Creates a FoldStateLoggingProvider. */
-    fun getFoldStateLoggingProvider(): Optional<FoldStateLoggingProvider>
-
-    /** Creates a FoldStateLogger. */
-    fun getFoldStateLogger(): Optional<FoldStateLogger>
 }