Fixed
Status Update
Comments
sm...@google.com <sm...@google.com> #2
Easy repro: Tap back key during gesture selection.
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-master-dev
commit dc37dddeefb6910a229d81612a60374678e615b4
Author: Steve McKay <smckay@google.com>
Date: Wed Aug 14 23:48:25 2019
Add support for resetting library state in response to CANCEL events and clearing of selection.
Sepcifically:
- BandSelectionHelper#reset
- GestureSelectionHelper#reset
- Clearing Selection in tracker.
- Reset the OperationMonitor.
- Connect explicit clearSelection (as clients call from back button) to reset.
GestureDetector is already listening for CANCEL events, cleans up its own state internally.
Related cleanups:
- Add onSelectionCleared support to SelectionObserver class.
- Guard all runtime state checking behind DEBUG bit (mis-configuration still throws).
- Deprecate support for setting gesture/pointer tooltypes.
- Define more events in TestEvents.
- Cleanup naming and consoliate some tests in BandSelectionHelperTest.
- Remove support POINTER_UP in BandSelectionHelper...POINTER_UP is for secondary pointer
devices only, which is outside of the domain of BandSelectionHelper.
BUG: 137460699
Test: Passing, added new test related to reset behavior.
Change-Id: Ie7127571dfa95f571ac754b3ae58e03bb153cbe8
M recyclerview/recyclerview-selection/api/1.1.0-alpha07.txt
M recyclerview/recyclerview-selection/api/current.txt
M recyclerview/recyclerview-selection/api/public_plus_experimental_1.1.0-alpha07.txt
M recyclerview/recyclerview-selection/api/public_plus_experimental_current.txt
M recyclerview/recyclerview-selection/api/restricted_1.1.0-alpha07.txt
M recyclerview/recyclerview-selection/api/restricted_current.txt
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/BandSelectionHelperTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTracker_SingleSelectTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/GestureSelectionHelperTest.java
A recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/ResetMangerTest.java
A recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/SelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/TouchInputHandlerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestEvents.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestRunnable.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/BandSelectionHelper.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureDetectorOnItemTouchListenerAdapter.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureSelectionHelper.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MotionEvents.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MouseInputHandler.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/OperationMonitor.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/Range.java
A recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ResetManager.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/SelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/TouchInputHandler.java
https://android-review.googlesource.com/1103351
Branch: androidx-master-dev
commit dc37dddeefb6910a229d81612a60374678e615b4
Author: Steve McKay <smckay@google.com>
Date: Wed Aug 14 23:48:25 2019
Add support for resetting library state in response to CANCEL events and clearing of selection.
Sepcifically:
- BandSelectionHelper#reset
- GestureSelectionHelper#reset
- Clearing Selection in tracker.
- Reset the OperationMonitor.
- Connect explicit clearSelection (as clients call from back button) to reset.
GestureDetector is already listening for CANCEL events, cleans up its own state internally.
Related cleanups:
- Add onSelectionCleared support to SelectionObserver class.
- Guard all runtime state checking behind DEBUG bit (mis-configuration still throws).
- Deprecate support for setting gesture/pointer tooltypes.
- Define more events in TestEvents.
- Cleanup naming and consoliate some tests in BandSelectionHelperTest.
- Remove support POINTER_UP in BandSelectionHelper...POINTER_UP is for secondary pointer
devices only, which is outside of the domain of BandSelectionHelper.
BUG: 137460699
Test: Passing, added new test related to reset behavior.
Change-Id: Ie7127571dfa95f571ac754b3ae58e03bb153cbe8
M recyclerview/recyclerview-selection/api/1.1.0-alpha07.txt
M recyclerview/recyclerview-selection/api/current.txt
M recyclerview/recyclerview-selection/api/public_plus_experimental_1.1.0-alpha07.txt
M recyclerview/recyclerview-selection/api/public_plus_experimental_current.txt
M recyclerview/recyclerview-selection/api/restricted_1.1.0-alpha07.txt
M recyclerview/recyclerview-selection/api/restricted_current.txt
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/BandSelectionHelperTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTracker_SingleSelectTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/GestureSelectionHelperTest.java
A recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/ResetMangerTest.java
A recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/SelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/TouchInputHandlerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestEvents.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestRunnable.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/BandSelectionHelper.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureDetectorOnItemTouchListenerAdapter.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/GestureSelectionHelper.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MotionEvents.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/MouseInputHandler.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/OperationMonitor.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/Range.java
A recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ResetManager.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/SelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/TouchInputHandler.java
sm...@google.com <sm...@google.com> #4
Aiming to have a 1.1 beta release out soon including this fix.
All defensive check stability issues should be resolved with this CL.
All defensive check stability issues should be resolved with this CL.
Description