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

Commit 371ab666 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

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

Change-Id: I6cbc6c76daf1de4a8dd5f4ad65ee37a3b0c36a77
parents 97903a77 062f7a09
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