Fix split-screen flash issue

For smaller size screens (such as 720p), in split-screen view,
the size of DividerSnapAlgorithm.mTargets is 3, the divider line
can only stop in the middle.

As the original logic, when tapping recent, it will cause the top-docked
activity to resize, leading to flash in some cases.

To fix this, do not call startDragging in this scenario.

Google issue:
https://code.google.com/p/android/issues/detail?id=224851

Change-Id: Iac58d536ccf668eed67f82418ce2cf90d46670ed
This commit is contained in:
Qiushi.Han
2016-10-10 13:31:48 +08:00
parent 7c4efe421c
commit 9170ca82bd

View File

@@ -1048,6 +1048,7 @@ public class DividerView extends FrameLayout implements OnTouchListener,
public final void onBusEvent(RecentsActivityStartingEvent recentsActivityStartingEvent) {
if (mGrowRecents && getWindowManagerProxy().getDockSide() == WindowManager.DOCKED_TOP
&& getSnapAlgorithm().getMiddleTarget() != getSnapAlgorithm().getLastSplitTarget()
&& getCurrentPosition() == getSnapAlgorithm().getLastSplitTarget().position) {
mState.growAfterRecentsDrawn = true;
startDragging(false /* animate */, false /* touching */);