mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-19 18:58:19 +00:00
Merge "[Launcher Jank] Move binder call of RotationChangeProvider to BG thread" into main
This commit is contained in:
@@ -37,6 +37,7 @@ import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCH
|
||||
import static com.android.launcher3.taskbar.TaskbarAutohideSuspendController.FLAG_AUTOHIDE_SUSPEND_DRAGGING;
|
||||
import static com.android.launcher3.taskbar.TaskbarAutohideSuspendController.FLAG_AUTOHIDE_SUSPEND_FULLSCREEN;
|
||||
import static com.android.launcher3.testing.shared.ResourceUtils.getBoolByName;
|
||||
import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR;
|
||||
import static com.android.quickstep.util.AnimUtils.completeRunnableListCallback;
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_VISIBLE;
|
||||
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_VOICE_INTERACTION_WINDOW_SHOWING;
|
||||
@@ -289,7 +290,7 @@ public class TaskbarActivityContext extends BaseTaskbarContext {
|
||||
new TaskbarUnfoldAnimationController(this, unfoldTransitionProgressProvider,
|
||||
mWindowManager,
|
||||
new RotationChangeProvider(c.getSystemService(DisplayManager.class), this,
|
||||
getMainThreadHandler())),
|
||||
UI_HELPER_EXECUTOR.getHandler(), getMainThreadHandler())),
|
||||
new TaskbarKeyguardController(this),
|
||||
new StashedHandleViewController(this, stashedHandleView),
|
||||
new TaskbarStashController(this),
|
||||
|
||||
@@ -194,6 +194,7 @@ import com.android.systemui.unfold.UnfoldTransitionFactory;
|
||||
import com.android.systemui.unfold.UnfoldTransitionProgressProvider;
|
||||
import com.android.systemui.unfold.config.ResourceUnfoldTransitionConfig;
|
||||
import com.android.systemui.unfold.config.UnfoldTransitionConfig;
|
||||
import com.android.systemui.unfold.dagger.UnfoldMain;
|
||||
import com.android.systemui.unfold.progress.RemoteUnfoldTransitionReceiver;
|
||||
import com.android.systemui.unfold.updates.RotationChangeProvider;
|
||||
|
||||
@@ -1047,6 +1048,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer
|
||||
getMainExecutor(),
|
||||
getMainThreadHandler(),
|
||||
/* backgroundExecutor= */ UI_HELPER_EXECUTOR,
|
||||
/* bgHandler= */ UI_HELPER_EXECUTOR.getHandler(),
|
||||
/* tracingTagPrefix= */ "launcher",
|
||||
getSystemService(DisplayManager.class)
|
||||
);
|
||||
@@ -1066,7 +1068,7 @@ public class QuickstepLauncher extends Launcher implements RecentsViewContainer
|
||||
}
|
||||
|
||||
private void initUnfoldAnimationController(UnfoldTransitionProgressProvider progressProvider,
|
||||
RotationChangeProvider rotationChangeProvider) {
|
||||
@UnfoldMain RotationChangeProvider rotationChangeProvider) {
|
||||
mLauncherUnfoldAnimationController = new LauncherUnfoldAnimationController(
|
||||
/* launcher= */ this,
|
||||
getWindowManager(),
|
||||
|
||||
@@ -21,8 +21,11 @@ import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.WindowManager;
|
||||
|
||||
import androidx.annotation.MainThread;
|
||||
|
||||
import com.android.systemui.shared.animation.UnfoldMoveFromCenterAnimator;
|
||||
import com.android.systemui.unfold.UnfoldTransitionProgressProvider.TransitionProgressListener;
|
||||
import com.android.systemui.unfold.dagger.UnfoldMain;
|
||||
import com.android.systemui.unfold.updates.RotationChangeProvider;
|
||||
|
||||
import java.util.HashMap;
|
||||
@@ -34,7 +37,7 @@ import java.util.Map;
|
||||
public abstract class BaseUnfoldMoveFromCenterAnimator implements TransitionProgressListener {
|
||||
|
||||
private final UnfoldMoveFromCenterAnimator mMoveFromCenterAnimation;
|
||||
private final RotationChangeProvider mRotationChangeProvider;
|
||||
@UnfoldMain private final RotationChangeProvider mRotationChangeProvider;
|
||||
|
||||
private final Map<ViewGroup, Boolean> mOriginalClipToPadding = new HashMap<>();
|
||||
private final Map<ViewGroup, Boolean> mOriginalClipChildren = new HashMap<>();
|
||||
@@ -48,7 +51,7 @@ public abstract class BaseUnfoldMoveFromCenterAnimator implements TransitionProg
|
||||
private Float mLastTransitionProgress = null;
|
||||
|
||||
public BaseUnfoldMoveFromCenterAnimator(WindowManager windowManager,
|
||||
RotationChangeProvider rotationChangeProvider) {
|
||||
@UnfoldMain RotationChangeProvider rotationChangeProvider) {
|
||||
mMoveFromCenterAnimation = new UnfoldMoveFromCenterAnimator(windowManager,
|
||||
new LauncherViewsMoveFromCenterTranslationApplier());
|
||||
mRotationChangeProvider = rotationChangeProvider;
|
||||
@@ -143,8 +146,14 @@ public abstract class BaseUnfoldMoveFromCenterAnimator implements TransitionProg
|
||||
private class UnfoldMoveFromCenterRotationListener implements
|
||||
RotationChangeProvider.RotationListener {
|
||||
|
||||
@MainThread
|
||||
@Override
|
||||
public void onRotationChanged(@Rotation int newRotation) {
|
||||
onRotationChangedInternal(newRotation);
|
||||
}
|
||||
|
||||
@MainThread
|
||||
private void onRotationChangedInternal(@Rotation int newRotation) {
|
||||
mMoveFromCenterAnimation.updateDisplayProperties(newRotation);
|
||||
updateRegisteredViewsIfNeeded();
|
||||
}
|
||||
|
||||
@@ -39,6 +39,7 @@ import com.android.quickstep.util.unfold.LauncherJankMonitorTransitionProgressLi
|
||||
import com.android.quickstep.util.unfold.PreemptiveUnfoldTransitionProgressProvider;
|
||||
import com.android.systemui.unfold.UnfoldTransitionProgressProvider;
|
||||
import com.android.systemui.unfold.UnfoldTransitionProgressProvider.TransitionProgressListener;
|
||||
import com.android.systemui.unfold.dagger.UnfoldMain;
|
||||
import com.android.systemui.unfold.updates.RotationChangeProvider;
|
||||
import com.android.systemui.unfold.util.NaturalRotationUnfoldProgressProvider;
|
||||
import com.android.systemui.unfold.util.ScopedUnfoldTransitionProgressProvider;
|
||||
@@ -76,7 +77,7 @@ public class LauncherUnfoldAnimationController implements OnDeviceProfileChangeL
|
||||
QuickstepLauncher launcher,
|
||||
WindowManager windowManager,
|
||||
UnfoldTransitionProgressProvider unfoldTransitionProgressProvider,
|
||||
RotationChangeProvider rotationChangeProvider) {
|
||||
@UnfoldMain RotationChangeProvider rotationChangeProvider) {
|
||||
mLauncher = launcher;
|
||||
|
||||
if (FeatureFlags.PREEMPTIVE_UNFOLD_ANIMATION_START.get()) {
|
||||
|
||||
@@ -21,6 +21,7 @@ import android.view.WindowManager;
|
||||
|
||||
import com.android.launcher3.Hotseat;
|
||||
import com.android.launcher3.uioverrides.QuickstepLauncher;
|
||||
import com.android.systemui.unfold.dagger.UnfoldMain;
|
||||
import com.android.systemui.unfold.updates.RotationChangeProvider;
|
||||
|
||||
/**
|
||||
@@ -30,8 +31,9 @@ public class UnfoldMoveFromCenterHotseatAnimator extends BaseUnfoldMoveFromCente
|
||||
|
||||
private final QuickstepLauncher mLauncher;
|
||||
|
||||
public UnfoldMoveFromCenterHotseatAnimator(QuickstepLauncher launcher,
|
||||
WindowManager windowManager, RotationChangeProvider rotationChangeProvider) {
|
||||
public UnfoldMoveFromCenterHotseatAnimator(
|
||||
QuickstepLauncher launcher, WindowManager windowManager,
|
||||
@UnfoldMain RotationChangeProvider rotationChangeProvider) {
|
||||
super(windowManager, rotationChangeProvider);
|
||||
mLauncher = launcher;
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.android.launcher3.CellLayout;
|
||||
import com.android.launcher3.ShortcutAndWidgetContainer;
|
||||
import com.android.launcher3.Workspace;
|
||||
import com.android.launcher3.uioverrides.QuickstepLauncher;
|
||||
import com.android.systemui.unfold.dagger.UnfoldMain;
|
||||
import com.android.systemui.unfold.updates.RotationChangeProvider;
|
||||
|
||||
/**
|
||||
@@ -31,8 +32,9 @@ public class UnfoldMoveFromCenterWorkspaceAnimator extends BaseUnfoldMoveFromCen
|
||||
|
||||
private final QuickstepLauncher mLauncher;
|
||||
|
||||
public UnfoldMoveFromCenterWorkspaceAnimator(QuickstepLauncher launcher,
|
||||
WindowManager windowManager, RotationChangeProvider rotationChangeProvider) {
|
||||
public UnfoldMoveFromCenterWorkspaceAnimator(
|
||||
QuickstepLauncher launcher, WindowManager windowManager,
|
||||
@UnfoldMain RotationChangeProvider rotationChangeProvider) {
|
||||
super(windowManager, rotationChangeProvider);
|
||||
mLauncher = launcher;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user