Fixed
Status Update
Comments
vi...@google.com <vi...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
https://android-review.googlesource.com/1123258
https://goto.google.com/android-sha1/b90079595f33f58fece04026a97faa0d243acdb1
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
ss...@gmail.com <ss...@gmail.com> #3
ss...@gmail.com <ss...@gmail.com> #4
Project: platform/frameworks/support
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically ( b/140759491 ).
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
https://android-review.googlesource.com/1288456
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically (
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
vi...@google.com <vi...@google.com>
sh...@google.com <sh...@google.com>
sm...@google.com <sm...@google.com> #6
Thanks for reporting the issue.
Looks like an oversight where SelectionTracker's AdapterObserver is simply ignoring rangeRemoved events. I'll aim to land a fix for this in the 1.1 stable release (either the initial release, or a fast-follow-on point release).
Looks like an oversight where SelectionTracker's AdapterObserver is simply ignoring rangeRemoved events. I'll aim to land a fix for this in the 1.1 stable release (either the initial release, or a fast-follow-on point release).
ap...@google.com <ap...@google.com> #7
Project: platform/frameworks/support
Branch: androidx-master-dev
commit 3b4d015eaebacb3ba82f67248cdc5befbffbc3d0
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update DemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/DemoAdapter.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/DemoDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/DemoHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/res/layout/selection_demo_layout.xml
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
https://android-review.googlesource.com/1396972
Branch: androidx-master-dev
commit 3b4d015eaebacb3ba82f67248cdc5befbffbc3d0
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update DemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/DemoAdapter.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/DemoDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/DemoHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/res/layout/selection_demo_layout.xml
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
ap...@google.com <ap...@google.com> #9
Project: platform/frameworks/support
Branch: snap-temp-L55000000669795486
commit 9335df63d373a327e06e21e7258660f9bcc429fb
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
https://android-review.googlesource.com/1404003
Branch: snap-temp-L55000000669795486
commit 9335df63d373a327e06e21e7258660f9bcc429fb
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
ap...@google.com <ap...@google.com> #10
Project: platform/frameworks/support
Branch: snap-temp-L13100000669799324
commit 24d59b6e7a77af3ead3911e929174c086bdb1a0c
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
https://android-review.googlesource.com/1404339
Branch: snap-temp-L13100000669799324
commit 24d59b6e7a77af3ead3911e929174c086bdb1a0c
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
ap...@google.com <ap...@google.com> #11
Project: platform/frameworks/support
Branch: snap-temp-L10500000669872246
commit ea538c8ae5bf29fecbc39bb30dbfc9974d5b3bb7
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
https://android-review.googlesource.com/1404370
Branch: snap-temp-L10500000669872246
commit ea538c8ae5bf29fecbc39bb30dbfc9974d5b3bb7
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
ap...@google.com <ap...@google.com> #12
Project: platform/frameworks/support
Branch: snap-temp-L85700000669873256
commit 8b02837e39b9aecaa2a558307890de302da2fe8d
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
https://android-review.googlesource.com/1404377
Branch: snap-temp-L85700000669873256
commit 8b02837e39b9aecaa2a558307890de302da2fe8d
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
ap...@google.com <ap...@google.com> #13
Project: platform/frameworks/support
Branch: snap-temp-L23500000669881336
commit 34de1726004bf0b9b9aad0622f656007e650ec8d
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
https://android-review.googlesource.com/1404357
Branch: snap-temp-L23500000669881336
commit 34de1726004bf0b9b9aad0622f656007e650ec8d
Author: Steve McKay <smckay@google.com>
Date: Mon Aug 10 17:34:07 2020
Fix issue where selection wasn't update when corresponding items removed from adapter.
Add ItemTouchHelper based swipe away support to Fancy demo app to help provide better test bed (for me...debugging :)
Improved organization of code in Fancy demo activity, to help keep concepts clear and separate for readers.
Update FancySelectionDemoAdapter to support removing items (and generally improve organization).
Move selection demos into RecyclerView/Selection/... "folder" of the samples app.
Bug: 138932671
Test: Manual test of demo app + addition of new test coverage in DefaultSelectionTracker.
Change-Id: Ic7924aca017b35aae65195f2c40e49641177471f
(cherry picked from commit caddb9aae42e7ea049b1d3ab15f328353460a6cb)
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/DefaultSelectionTrackerTest.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestAdapter.java
M recyclerview/recyclerview-selection/src/androidTest/java/androidx/recyclerview/selection/testing/TestSelectionObserver.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/DefaultSelectionTracker.java
M recyclerview/recyclerview-selection/src/main/java/androidx/recyclerview/selection/ItemKeyProvider.java
M samples/Support7Demos/src/main/AndroidManifest.xml
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyDetailsLookup.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancyHeaderHolder.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoActivity.java
M samples/Support7Demos/src/main/java/com/example/android/supportv7/widget/selection/fancy/FancySelectionDemoAdapter.java
M samples/Support7Demos/src/main/res/menu/selection_demo_actions.xml
M samples/Support7Demos/src/main/res/values/strings.xml
an...@google.com <an...@google.com> #14
The following changes were cherrypicked through
Release Track:
Changes: aosp/1404331
Description
Version used: N/A
Theme used: N/A
Devices/Android versions reproduced on: Emulator / Android 9.0 (Google APIs)
public class MyAdapter extends RecyclerView.Adapter<String> {
private List<String> mData;
public MyAdapter () {
mData = new ArrayList<>();
mData.add("Test1");
mData.add("Test2");
}
public void removeFirst() {
mData.remove(0);
notifyItemRemoved(0);
}
}
Suppose that the first item is selected. Removing it calling MyAdapter.removeFirst() will also call notifyItemRemoved() but the selection tracker observe are not issued (none of its callbacks are invoked). In fact, the selection tracker keeps the selection state saying that there is a selection.