From da594a82873b54debaec4b2fc74d24b9aac77d1f Mon Sep 17 00:00:00 2001 From: Sylvia van Os Date: Sun, 28 Nov 2021 22:45:35 +0100 Subject: [PATCH] Fix getItemId mistake (fixes #623) --- CHANGELOG.md | 1 + .../java/protect/card_locker/BaseCursorAdapter.java | 8 +++++++- .../java/protect/card_locker/GroupCursorAdapter.java | 10 +++++----- .../protect/card_locker/LoyaltyCardCursorAdapter.java | 2 +- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 90088edc5..d0c1dfa2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unreleased - 93 - Add Catima to [Quick Access Device Controls](https://developer.android.com/guide/topics/ui/device-control) +- Fix some groups not showing up correctly in group management screen ## v2.10.0 - 92 (2021-11-20) diff --git a/app/src/main/java/protect/card_locker/BaseCursorAdapter.java b/app/src/main/java/protect/card_locker/BaseCursorAdapter.java index 5da4eeef2..682093785 100644 --- a/app/src/main/java/protect/card_locker/BaseCursorAdapter.java +++ b/app/src/main/java/protect/card_locker/BaseCursorAdapter.java @@ -9,8 +9,13 @@ public abstract class BaseCursorAdapter exten private boolean mDataValid; private int mRowIDColumn; - public BaseCursorAdapter(Cursor inputCursor) { + private String mRowIDColumnName; + + public BaseCursorAdapter(Cursor inputCursor, String rowIDColumnName) { setHasStableIds(true); + + mRowIDColumnName = rowIDColumnName; + swapCursor(inputCursor); } @@ -58,6 +63,7 @@ public abstract class BaseCursorAdapter exten if (inputCursor != null) { mCursor = inputCursor; + mRowIDColumn = mCursor.getColumnIndex(mRowIDColumnName); mDataValid = true; notifyDataSetChanged(); } else { diff --git a/app/src/main/java/protect/card_locker/GroupCursorAdapter.java b/app/src/main/java/protect/card_locker/GroupCursorAdapter.java index 306027b0e..dd9105d33 100644 --- a/app/src/main/java/protect/card_locker/GroupCursorAdapter.java +++ b/app/src/main/java/protect/card_locker/GroupCursorAdapter.java @@ -12,14 +12,14 @@ import androidx.appcompat.widget.AppCompatImageButton; import androidx.recyclerview.widget.RecyclerView; import protect.card_locker.preferences.Settings; -class GroupCursorAdapter extends BaseCursorAdapter { +public class GroupCursorAdapter extends BaseCursorAdapter { Settings mSettings; private final Context mContext; - private final GroupCursorAdapter.GroupAdapterListener mListener; + private final GroupAdapterListener mListener; DBHelper mDb; - public GroupCursorAdapter(Context inputContext, Cursor inputCursor, GroupCursorAdapter.GroupAdapterListener inputListener) { - super(inputCursor); + public GroupCursorAdapter(Context inputContext, Cursor inputCursor, GroupAdapterListener inputListener) { + super(inputCursor, DBHelper.LoyaltyCardDbGroups.ORDER); setHasStableIds(true); mSettings = new Settings(inputContext); mContext = inputContext; @@ -36,7 +36,7 @@ class GroupCursorAdapter extends BaseCursorAdapter