Fixes the issue Launcher state propagation is slower than onDeferredResume.
There's currently a bug prevents Launcher release drag lock for two step widgets. Supposedly, onDeferredResume should release the drag lock; However, in 3-button navigation mode, the transition from Overview -> Normal is triggered in Launcher#onNewIntent, which happens after onDeferredResume. This issue is not reproducible with gesture navigation because its transition from Overview -> Normal is handled in NavBarToHomeTouchController Test: manual verified with following steps 1. Enable 3-button navigation 2. Long press in WorkSpace -> Widgets 3. Drag Settings Widget to WorkSpace 4. When the config activity is shown, press "recents" button to see Overview 5. press "home" button to go back to workspace 6. repeat 2 and 3, verify the widget can be dragged Bug: 149659788 Change-Id: I396ffa8a7db44bf3872a10de4208340a99a7efe8
This commit is contained in:
@@ -157,6 +157,12 @@ public abstract class BaseQuickstepLauncher extends Launcher
|
||||
@Override
|
||||
protected void onDeferredResumed() {
|
||||
super.onDeferredResumed();
|
||||
handlePendingActivityRequest();
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void handlePendingActivityRequest() {
|
||||
super.handlePendingActivityRequest();
|
||||
if (mPendingActivityRequestCode != -1 && isInState(NORMAL)) {
|
||||
// Remove any active ProxyActivityStarter task and send RESULT_CANCELED to Launcher.
|
||||
onActivityResult(mPendingActivityRequestCode, RESULT_CANCELED, null);
|
||||
|
||||
Reference in New Issue
Block a user