Loading packages/CarSystemUI/src/com/android/systemui/CarSystemUIModule.java +9 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,8 @@ import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.dock.DockManager; import com.android.systemui.dock.DockManagerImpl; import com.android.systemui.doze.DozeHost; import com.android.systemui.pip.phone.PipMenuActivity; import com.android.systemui.pip.phone.dagger.PipMenuActivityClass; import com.android.systemui.plugins.qs.QSFactory; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.power.EnhancedEstimates; Loading Loading @@ -142,6 +144,13 @@ public abstract class CarSystemUIModule { mainHandler, transactionPool).build(); } @Singleton @PipMenuActivityClass @Provides static Class<?> providePipMenuActivityClass() { return PipMenuActivity.class; } @Binds abstract HeadsUpManager bindHeadsUpManagerPhone(HeadsUpManagerPhone headsUpManagerPhone); Loading packages/SystemUI/src/com/android/systemui/dagger/SystemUIRootComponent.java +0 −6 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ import com.android.systemui.dump.DumpManager; import com.android.systemui.fragments.FragmentService; import com.android.systemui.keyguard.KeyguardSliceProvider; import com.android.systemui.onehanded.dagger.OneHandedModule; import com.android.systemui.pip.phone.PipMenuActivity; import com.android.systemui.pip.phone.dagger.PipModule; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.util.InjectionInflationController; Loading Loading @@ -133,9 +132,4 @@ public interface SystemUIRootComponent { * Member injection into the supplied argument. */ void inject(KeyguardSliceProvider keyguardSliceProvider); /** * Member injection into the supplied argument. */ void inject(PipMenuActivity pipMenuActivity); } packages/SystemUI/src/com/android/systemui/pip/phone/PipManager.java +4 −2 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ 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.pip.phone.dagger.PipMenuActivityClass; import com.android.systemui.shared.recents.IPinnedStackAnimationListener; import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.InputConsumerController; Loading Loading @@ -250,6 +251,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio @Inject public PipManager(Context context, BroadcastDispatcher broadcastDispatcher, @PipMenuActivityClass Class<?> pipMenuActivityClass, DisplayController displayController, FloatingContentCoordinator floatingContentCoordinator, DeviceConfigProxy deviceConfig, Loading @@ -274,8 +276,8 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio mPipTaskOrganizer.registerPipTransitionCallback(this); mInputConsumerController = InputConsumerController.getPipInputConsumer(); mMediaController = new PipMediaController(context, mActivityManager, broadcastDispatcher); mMenuController = new PipMenuActivityController(context, mMediaController, mInputConsumerController); mMenuController = new PipMenuActivityController(context, pipMenuActivityClass, mMediaController, mInputConsumerController); mTouchHandler = new PipTouchHandler(context, mActivityManager, mMenuController, mInputConsumerController, mPipBoundsHandler, mPipTaskOrganizer, floatingContentCoordinator, deviceConfig, pipSnapAlgorithm, sysUiState); Loading packages/SystemUI/src/com/android/systemui/pip/phone/PipMenuActivity.java +15 −14 Original line number Diff line number Diff line Loading @@ -76,17 +76,15 @@ import android.widget.ImageButton; import android.widget.LinearLayout; import com.android.systemui.Interpolators; import com.android.systemui.SystemUIFactory; import com.android.wm.shell.R; import java.util.ArrayList; import java.util.Collections; import java.util.List; import javax.inject.Inject; /** * Translucent activity that gets started on top of a task in PIP to allow the user to control it. * TODO(b/150319024): PipMenuActivity will move to a Window */ public class PipMenuActivity extends Activity { Loading Loading @@ -126,19 +124,11 @@ public class PipMenuActivity extends Activity { private final List<RemoteAction> mActions = new ArrayList<>(); private AccessibilityManager mAccessibilityManager; private View mViewRoot; private Drawable mBackgroundDrawable; private View mMenuContainer; private LinearLayout mActionsGroup; private View mSettingsButton; private View mDismissButton; private View mResizeHandle; private View mTopEndContainer; private int mBetweenActionPaddingLand; @Inject PipMenuIconsAlgorithm mPipMenuIconsAlgorithm; private AnimatorSet mMenuContainerAnimator; private ValueAnimator.AnimatorUpdateListener mMenuBgUpdateListener = Loading Loading @@ -193,6 +183,9 @@ public class PipMenuActivity extends Activity { break; } case MESSAGE_MENU_EXPANDED : { if (mMenuContainerAnimator == null) { return; } mMenuContainerAnimator.setStartDelay(MENU_SHOW_ON_EXPAND_START_DELAY); mMenuContainerAnimator.start(); break; Loading @@ -202,6 +195,9 @@ public class PipMenuActivity extends Activity { break; } case MESSAGE_UPDATE_MENU_LAYOUT: { if (mPipMenuIconsAlgorithm == null) { return; } final Rect bounds = (Rect) msg.obj; mPipMenuIconsAlgorithm.onBoundsChanged(bounds); break; Loading @@ -214,6 +210,13 @@ public class PipMenuActivity extends Activity { private final Runnable mFinishRunnable = this::hideMenu; protected View mViewRoot; protected View mSettingsButton; protected View mDismissButton; protected View mResizeHandle; protected View mTopEndContainer; protected PipMenuIconsAlgorithm mPipMenuIconsAlgorithm; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { // Set the flags to allow us to watch for outside touches and also hide the menu and start Loading @@ -222,8 +225,6 @@ public class PipMenuActivity extends Activity { super.onCreate(savedInstanceState); SystemUIFactory.getInstance().getRootComponent().inject(this); setContentView(R.layout.pip_menu_activity); mAccessibilityManager = getSystemService(AccessibilityManager.class); Loading Loading @@ -254,7 +255,7 @@ public class PipMenuActivity extends Activity { mActionsGroup = findViewById(R.id.actions_group); mBetweenActionPaddingLand = getResources().getDimensionPixelSize( R.dimen.pip_between_action_padding_land); mPipMenuIconsAlgorithm = new PipMenuIconsAlgorithm(this.getApplicationContext()); mPipMenuIconsAlgorithm.bindViews((ViewGroup) mViewRoot, (ViewGroup) mTopEndContainer, mResizeHandle, mSettingsButton, mDismissButton); updateFromIntent(getIntent()); Loading packages/SystemUI/src/com/android/systemui/pip/phone/PipMenuActivityController.java +7 −3 Original line number Diff line number Diff line Loading @@ -110,6 +110,8 @@ public class PipMenuActivityController { void onPipShowMenu(); } /** TODO(b/150319024): PipMenuActivity will move to a Window */ private Class<?> mPipMenuActivityClass; private Context mContext; private PipMediaController mMediaController; private InputConsumerController mInputConsumerController; Loading Loading @@ -185,11 +187,13 @@ public class PipMenuActivityController { } }; public PipMenuActivityController(Context context, PipMediaController mediaController, InputConsumerController inputConsumerController) { public PipMenuActivityController(Context context, Class<?> pipMenuActivityClass, PipMediaController mediaController, InputConsumerController inputConsumerController ) { mContext = context; mMediaController = mediaController; mInputConsumerController = inputConsumerController; mPipMenuActivityClass = pipMenuActivityClass; } public boolean isMenuActivityVisible() { Loading Loading @@ -454,7 +458,7 @@ public class PipMenuActivityController { WINDOWING_MODE_PINNED, ACTIVITY_TYPE_UNDEFINED); if (pinnedStackInfo != null && pinnedStackInfo.taskIds != null && pinnedStackInfo.taskIds.length > 0) { Intent intent = new Intent(mContext, PipMenuActivity.class); Intent intent = new Intent(mContext, mPipMenuActivityClass); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra(EXTRA_CONTROLLER_MESSENGER, mMessenger); intent.putExtra(EXTRA_ACTIONS, resolveMenuActions()); Loading Loading
packages/CarSystemUI/src/com/android/systemui/CarSystemUIModule.java +9 −0 Original line number Diff line number Diff line Loading @@ -38,6 +38,8 @@ import com.android.systemui.dagger.qualifiers.Main; import com.android.systemui.dock.DockManager; import com.android.systemui.dock.DockManagerImpl; import com.android.systemui.doze.DozeHost; import com.android.systemui.pip.phone.PipMenuActivity; import com.android.systemui.pip.phone.dagger.PipMenuActivityClass; import com.android.systemui.plugins.qs.QSFactory; import com.android.systemui.plugins.statusbar.StatusBarStateController; import com.android.systemui.power.EnhancedEstimates; Loading Loading @@ -142,6 +144,13 @@ public abstract class CarSystemUIModule { mainHandler, transactionPool).build(); } @Singleton @PipMenuActivityClass @Provides static Class<?> providePipMenuActivityClass() { return PipMenuActivity.class; } @Binds abstract HeadsUpManager bindHeadsUpManagerPhone(HeadsUpManagerPhone headsUpManagerPhone); Loading
packages/SystemUI/src/com/android/systemui/dagger/SystemUIRootComponent.java +0 −6 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ import com.android.systemui.dump.DumpManager; import com.android.systemui.fragments.FragmentService; import com.android.systemui.keyguard.KeyguardSliceProvider; import com.android.systemui.onehanded.dagger.OneHandedModule; import com.android.systemui.pip.phone.PipMenuActivity; import com.android.systemui.pip.phone.dagger.PipModule; import com.android.systemui.statusbar.policy.ConfigurationController; import com.android.systemui.util.InjectionInflationController; Loading Loading @@ -133,9 +132,4 @@ public interface SystemUIRootComponent { * Member injection into the supplied argument. */ void inject(KeyguardSliceProvider keyguardSliceProvider); /** * Member injection into the supplied argument. */ void inject(PipMenuActivity pipMenuActivity); }
packages/SystemUI/src/com/android/systemui/pip/phone/PipManager.java +4 −2 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ 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.pip.phone.dagger.PipMenuActivityClass; import com.android.systemui.shared.recents.IPinnedStackAnimationListener; import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.InputConsumerController; Loading Loading @@ -250,6 +251,7 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio @Inject public PipManager(Context context, BroadcastDispatcher broadcastDispatcher, @PipMenuActivityClass Class<?> pipMenuActivityClass, DisplayController displayController, FloatingContentCoordinator floatingContentCoordinator, DeviceConfigProxy deviceConfig, Loading @@ -274,8 +276,8 @@ public class PipManager implements BasePipManager, PipTaskOrganizer.PipTransitio mPipTaskOrganizer.registerPipTransitionCallback(this); mInputConsumerController = InputConsumerController.getPipInputConsumer(); mMediaController = new PipMediaController(context, mActivityManager, broadcastDispatcher); mMenuController = new PipMenuActivityController(context, mMediaController, mInputConsumerController); mMenuController = new PipMenuActivityController(context, pipMenuActivityClass, mMediaController, mInputConsumerController); mTouchHandler = new PipTouchHandler(context, mActivityManager, mMenuController, mInputConsumerController, mPipBoundsHandler, mPipTaskOrganizer, floatingContentCoordinator, deviceConfig, pipSnapAlgorithm, sysUiState); Loading
packages/SystemUI/src/com/android/systemui/pip/phone/PipMenuActivity.java +15 −14 Original line number Diff line number Diff line Loading @@ -76,17 +76,15 @@ import android.widget.ImageButton; import android.widget.LinearLayout; import com.android.systemui.Interpolators; import com.android.systemui.SystemUIFactory; import com.android.wm.shell.R; import java.util.ArrayList; import java.util.Collections; import java.util.List; import javax.inject.Inject; /** * Translucent activity that gets started on top of a task in PIP to allow the user to control it. * TODO(b/150319024): PipMenuActivity will move to a Window */ public class PipMenuActivity extends Activity { Loading Loading @@ -126,19 +124,11 @@ public class PipMenuActivity extends Activity { private final List<RemoteAction> mActions = new ArrayList<>(); private AccessibilityManager mAccessibilityManager; private View mViewRoot; private Drawable mBackgroundDrawable; private View mMenuContainer; private LinearLayout mActionsGroup; private View mSettingsButton; private View mDismissButton; private View mResizeHandle; private View mTopEndContainer; private int mBetweenActionPaddingLand; @Inject PipMenuIconsAlgorithm mPipMenuIconsAlgorithm; private AnimatorSet mMenuContainerAnimator; private ValueAnimator.AnimatorUpdateListener mMenuBgUpdateListener = Loading Loading @@ -193,6 +183,9 @@ public class PipMenuActivity extends Activity { break; } case MESSAGE_MENU_EXPANDED : { if (mMenuContainerAnimator == null) { return; } mMenuContainerAnimator.setStartDelay(MENU_SHOW_ON_EXPAND_START_DELAY); mMenuContainerAnimator.start(); break; Loading @@ -202,6 +195,9 @@ public class PipMenuActivity extends Activity { break; } case MESSAGE_UPDATE_MENU_LAYOUT: { if (mPipMenuIconsAlgorithm == null) { return; } final Rect bounds = (Rect) msg.obj; mPipMenuIconsAlgorithm.onBoundsChanged(bounds); break; Loading @@ -214,6 +210,13 @@ public class PipMenuActivity extends Activity { private final Runnable mFinishRunnable = this::hideMenu; protected View mViewRoot; protected View mSettingsButton; protected View mDismissButton; protected View mResizeHandle; protected View mTopEndContainer; protected PipMenuIconsAlgorithm mPipMenuIconsAlgorithm; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { // Set the flags to allow us to watch for outside touches and also hide the menu and start Loading @@ -222,8 +225,6 @@ public class PipMenuActivity extends Activity { super.onCreate(savedInstanceState); SystemUIFactory.getInstance().getRootComponent().inject(this); setContentView(R.layout.pip_menu_activity); mAccessibilityManager = getSystemService(AccessibilityManager.class); Loading Loading @@ -254,7 +255,7 @@ public class PipMenuActivity extends Activity { mActionsGroup = findViewById(R.id.actions_group); mBetweenActionPaddingLand = getResources().getDimensionPixelSize( R.dimen.pip_between_action_padding_land); mPipMenuIconsAlgorithm = new PipMenuIconsAlgorithm(this.getApplicationContext()); mPipMenuIconsAlgorithm.bindViews((ViewGroup) mViewRoot, (ViewGroup) mTopEndContainer, mResizeHandle, mSettingsButton, mDismissButton); updateFromIntent(getIntent()); Loading
packages/SystemUI/src/com/android/systemui/pip/phone/PipMenuActivityController.java +7 −3 Original line number Diff line number Diff line Loading @@ -110,6 +110,8 @@ public class PipMenuActivityController { void onPipShowMenu(); } /** TODO(b/150319024): PipMenuActivity will move to a Window */ private Class<?> mPipMenuActivityClass; private Context mContext; private PipMediaController mMediaController; private InputConsumerController mInputConsumerController; Loading Loading @@ -185,11 +187,13 @@ public class PipMenuActivityController { } }; public PipMenuActivityController(Context context, PipMediaController mediaController, InputConsumerController inputConsumerController) { public PipMenuActivityController(Context context, Class<?> pipMenuActivityClass, PipMediaController mediaController, InputConsumerController inputConsumerController ) { mContext = context; mMediaController = mediaController; mInputConsumerController = inputConsumerController; mPipMenuActivityClass = pipMenuActivityClass; } public boolean isMenuActivityVisible() { Loading Loading @@ -454,7 +458,7 @@ public class PipMenuActivityController { WINDOWING_MODE_PINNED, ACTIVITY_TYPE_UNDEFINED); if (pinnedStackInfo != null && pinnedStackInfo.taskIds != null && pinnedStackInfo.taskIds.length > 0) { Intent intent = new Intent(mContext, PipMenuActivity.class); Intent intent = new Intent(mContext, mPipMenuActivityClass); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.putExtra(EXTRA_CONTROLLER_MESSENGER, mMessenger); intent.putExtra(EXTRA_ACTIONS, resolveMenuActions()); Loading