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

Commit 2c9a418e authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Inject PipBoundsHandler and PipSnapAlgorithm using Dagger2" into...

Merge "Inject PipBoundsHandler and PipSnapAlgorithm using Dagger2" into rvc-dev am: 062f7a09 am: 4098d307 am: 2db8f2e7

Change-Id: I2ee29afda2a5f4b97f8a79c01e1c54a29c30b280
parents f2bd0a6d 2db8f2e7
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@ import android.view.WindowManagerGlobal;

import java.io.PrintWriter;

import javax.inject.Inject;

/**
 * Handles bounds calculation for PIP on Phone and other form factors, it keeps tracking variant
 * state changes originated from Window Manager and is the source of truth for PiP window bounds.
@@ -81,9 +83,10 @@ public class PipBoundsHandler {
    private boolean mIsShelfShowing;
    private int mShelfHeight;

    public PipBoundsHandler(Context context) {
    @Inject
    public PipBoundsHandler(Context context, PipSnapAlgorithm pipSnapAlgorithm) {
        mContext = context;
        mSnapAlgorithm = new PipSnapAlgorithm(context);
        mSnapAlgorithm = pipSnapAlgorithm;
        mWindowManager = WindowManagerGlobal.getWindowManagerService();
        reloadResources();
        // Initialize the aspect ratio to the default aspect ratio.  Don't do this in reload
+3 −0
Original line number Diff line number Diff line
@@ -25,6 +25,8 @@ import android.util.Size;

import java.io.PrintWriter;

import javax.inject.Inject;

/**
 * Calculates the snap targets and the snap position for the PIP given a position and a velocity.
 * All bounds are relative to the display top/left.
@@ -39,6 +41,7 @@ public class PipSnapAlgorithm {

    private int mOrientation = Configuration.ORIENTATION_UNDEFINED;

    @Inject
    public PipSnapAlgorithm(Context context) {
        Resources res = context.getResources();
        mContext = context;
+6 −3
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ import com.android.systemui.UiOffloadThread;
import com.android.systemui.broadcast.BroadcastDispatcher;
import com.android.systemui.pip.BasePipManager;
import com.android.systemui.pip.PipBoundsHandler;
import com.android.systemui.pip.PipSnapAlgorithm;
import com.android.systemui.pip.PipTaskOrganizer;
import com.android.systemui.shared.recents.IPinnedStackAnimationListener;
import com.android.systemui.shared.system.ActivityManagerWrapper;
@@ -205,7 +206,9 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio
    public PipManager(Context context, BroadcastDispatcher broadcastDispatcher,
            DisplayController displayController,
            FloatingContentCoordinator floatingContentCoordinator,
            DeviceConfigProxy deviceConfig) {
            DeviceConfigProxy deviceConfig,
            PipBoundsHandler pipBoundsHandler,
            PipSnapAlgorithm pipSnapAlgorithm) {
        mContext = context;
        mActivityManager = ActivityManager.getService();

@@ -218,7 +221,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio
        ActivityManagerWrapper.getInstance().registerTaskStackListener(mTaskStackListener);

        final IActivityTaskManager activityTaskManager = ActivityTaskManager.getService();
        mPipBoundsHandler = new PipBoundsHandler(context);
        mPipBoundsHandler = pipBoundsHandler;
        mPipTaskOrganizer = new PipTaskOrganizer(mContext, mPipBoundsHandler);
        mPipTaskOrganizer.registerPipTransitionCallback(this);
        mInputConsumerController = InputConsumerController.getPipInputConsumer();
@@ -227,7 +230,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio
                mInputConsumerController);
        mTouchHandler = new PipTouchHandler(context, mActivityManager, activityTaskManager,
                mMenuController, mInputConsumerController, mPipBoundsHandler, mPipTaskOrganizer,
                floatingContentCoordinator, deviceConfig);
                floatingContentCoordinator, deviceConfig, pipSnapAlgorithm);
        mAppOpsListener = new PipAppOpsListener(context, mActivityManager,
                mTouchHandler.getMotionHelper());
        displayController.addDisplayChangingController(mRotationController);
+3 −2
Original line number Diff line number Diff line
@@ -166,7 +166,8 @@ public class PipTouchHandler {
            PipBoundsHandler pipBoundsHandler,
            PipTaskOrganizer pipTaskOrganizer,
            FloatingContentCoordinator floatingContentCoordinator,
            DeviceConfigProxy deviceConfig) {
            DeviceConfigProxy deviceConfig,
            PipSnapAlgorithm pipSnapAlgorithm) {
        // Initialize the Pip input consumer
        mContext = context;
        mActivityManager = activityManager;
@@ -174,7 +175,7 @@ public class PipTouchHandler {
        mMenuController = menuController;
        mMenuController.addListener(new PipMenuListener());
        mDismissViewController = new PipDismissViewController(context);
        mSnapAlgorithm = new PipSnapAlgorithm(mContext);
        mSnapAlgorithm = pipSnapAlgorithm;
        mFlingAnimationUtils = new FlingAnimationUtils(context.getResources().getDisplayMetrics(),
                2.5f);
        mGesture = new DefaultPipTouchGesture();
+3 −2
Original line number Diff line number Diff line
@@ -228,13 +228,14 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio
    }

    @Inject
    public PipManager(Context context, BroadcastDispatcher broadcastDispatcher) {
    public PipManager(Context context, BroadcastDispatcher broadcastDispatcher,
            PipBoundsHandler pipBoundsHandler) {
        if (mInitialized) {
            return;
        }
        mInitialized = true;
        mContext = context;
        mPipBoundsHandler = new PipBoundsHandler(context);
        mPipBoundsHandler = pipBoundsHandler;
        mPipTaskOrganizer = new PipTaskOrganizer(mContext, mPipBoundsHandler);
        mPipTaskOrganizer.registerPipTransitionCallback(this);
        mActivityTaskManager = ActivityTaskManager.getService();
Loading