Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2021-09-11 13:02:25 +0300
committerStefan Niedermann <info@niedermann.it>2021-09-11 13:02:25 +0300
commita9fb6f12ba310163fd3e649ee1a114fa7d1ade24 (patch)
tree1ff5f56138e39d42f95b7cad9b7f0bac29aba1e9 /app/src/main
parent119fced9697f304ecb8039236f7f84b634aae2a5 (diff)
Fix #1308 Crash when long pressing a note and swiping to the edge of the screen
Signed-off-by: Stefan Niedermann <info@niedermann.it>
Diffstat (limited to 'app/src/main')
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/main/items/ItemAdapter.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/main/items/selection/ItemSelectionTracker.java5
2 files changed, 8 insertions, 1 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/main/items/ItemAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/main/items/ItemAdapter.java
index 5508beb6..7470fa25 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/main/items/ItemAdapter.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/main/items/ItemAdapter.java
@@ -170,6 +170,10 @@ public class ItemAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> i
return itemList.get(notePosition);
}
+ public boolean hasItemPosition(int notePosition) {
+ return notePosition >= 0 && notePosition < itemList.size();
+ }
+
public void remove(@NonNull Item item) {
itemList.remove(item);
notifyDataSetChanged();
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/main/items/selection/ItemSelectionTracker.java b/app/src/main/java/it/niedermann/owncloud/notes/main/items/selection/ItemSelectionTracker.java
index 4031c47e..bce834e2 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/main/items/selection/ItemSelectionTracker.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/main/items/selection/ItemSelectionTracker.java
@@ -31,7 +31,10 @@ public class ItemSelectionTracker {
@Override
public boolean canSetStateAtPosition(int position, boolean nextState) {
@Nullable Integer swipedPosition = adapter.getSwipedPosition();
- return !adapter.getItem(position).isSection() && (swipedPosition == null || swipedPosition != position);
+ if (!adapter.hasItemPosition(position)) {
+ return false;
+ }
+ return (swipedPosition == null || swipedPosition != position) && !adapter.getItem(position).isSection();
}
@Override