From 8b75c41143529cee9301c88760b955169cbc209b Mon Sep 17 00:00:00 2001 From: Josephine Lim Date: Fri, 29 Apr 2022 21:50:20 +1000 Subject: [PATCH 1/8] Fix string for custom selector --- app/src/main/res/values/strings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index cc032ef40..a251d21ed 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -674,7 +674,7 @@ Upload your first media by tapping on the add button. Done Back Welcome to Custom Picture Selector - This picker shows differently pictures that are already to Commons. + This picker shows you which pictures you have already uploaded to Commons. Unlike the picture on the left, the picture on the right has the Commons logo indicating it is already uploaded. \n Touch and hold for image preview. Awesome This image has already been uploaded to Commons. From 9880d7ea7e5e8ad2057a38e2eaf3461d61ca73eb Mon Sep 17 00:00:00 2001 From: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com> Date: Mon, 2 May 2022 11:12:08 +0530 Subject: [PATCH 2/8] Fix bug #4950 back arrow still present on top-level activity (#4952) --- .../nrw/commons/contributions/ContributionsFragment.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java index 25d6e7d33..45ae66e4a 100644 --- a/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/contributions/ContributionsFragment.java @@ -662,7 +662,7 @@ public class ContributionsFragment } public boolean backButtonClicked() { - if (null != mediaDetailPagerFragment && mediaDetailPagerFragment.isVisible()) { + if (mediaDetailPagerFragment != null && mediaDetailPagerFragment.isVisible()) { if (store.getBoolean("displayNearbyCardView", true) && !isUserProfile) { if (nearbyNotificationCardView.cardViewVisibilityState == NearbyNotificationCardView.CardViewVisibilityState.READY) { nearbyNotificationCardView.setVisibility(View.VISIBLE); @@ -679,9 +679,10 @@ public class ContributionsFragment }else { fetchCampaigns(); } - if(getActivity() instanceof MainActivity) { + if (getActivity() instanceof MainActivity) { // Fragment is associated with MainActivity - ((MainActivity)getActivity()).showTabs(); + ((BaseActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(false); + ((MainActivity) getActivity()).showTabs(); } return true; } From 4edabede8856b8882294fbfc3d24f1029fd5739d Mon Sep 17 00:00:00 2001 From: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com> Date: Wed, 18 May 2022 22:17:10 +0530 Subject: [PATCH 3/8] Fix bug #4949 by correctly setting previous db version number (#4956) * Fix bug #4949 by correctly setting previous db version number * Fix failing tests --- .../bookmarks/items/BookmarkItemsDao.java | 12 +-- .../bookmarks/items/BookmarkItemsDaoTest.kt | 75 +++++++++++++++++++ 2 files changed, 79 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDao.java b/app/src/main/java/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDao.java index 08e54a114..70c370836 100644 --- a/app/src/main/java/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDao.java +++ b/app/src/main/java/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDao.java @@ -309,22 +309,18 @@ public class BookmarkItemsDao { if (from == to) { return; } - if (from < 7) { + if (from < 18) { + // doesn't exist yet from++; onUpdate(db, from, to); return; } - if (from == 7) { + if (from == 18) { + // table added in version 19 onCreate(db); from++; onUpdate(db, from, to); - return; - } - - if (from == 8) { - from++; - onUpdate(db, from, to); } } } diff --git a/app/src/test/kotlin/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDaoTest.kt b/app/src/test/kotlin/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDaoTest.kt index 73504acdc..92778dea7 100644 --- a/app/src/test/kotlin/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDaoTest.kt +++ b/app/src/test/kotlin/fr/free/nrw/commons/bookmarks/items/BookmarkItemsDaoTest.kt @@ -271,9 +271,84 @@ class BookmarkItemsDaoTest { @Test fun migrateTableVersionFrom_v7_to_v8() { onUpdate(database, 7, 8) + // Table didn't change in version 8 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v8_to_v9() { + onUpdate(database, 8, 9) + // Table didn't change in version 9 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v9_to_v10() { + onUpdate(database, 9, 10) + // Table didn't change in version 10 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v10_to_v11() { + onUpdate(database, 10, 11) + // Table didn't change in version 11 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v11_to_v12() { + onUpdate(database, 11, 12) + // Table didn't change in version 12 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v12_to_v13() { + onUpdate(database, 12, 13) + // Table didn't change in version 13 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v13_to_v14() { + onUpdate(database, 13, 14) + // Table didn't change in version 14 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v14_to_v15() { + onUpdate(database, 14, 15) + // Table didn't change in version 15 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v15_to_v16() { + onUpdate(database, 15, 16) + // Table didn't change in version 16 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v16_to_v17() { + onUpdate(database, 16, 17) + // Table didn't change in version 17 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v18_to_v19() { + onUpdate(database, 18, 19) verify(database).execSQL(CREATE_TABLE_STATEMENT) } + @Test + fun migrateTableVersionFrom_v19_to_v19() { + onUpdate(database, 19, 19) + verifyZeroInteractions(database) + } private fun createCursor(rowCount: Int) = MatrixCursor(columns, rowCount).apply { From f4414b1c314d801db21dd9a1b9d6163d2cc83242 Mon Sep 17 00:00:00 2001 From: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com> Date: Fri, 20 May 2022 13:39:45 +0530 Subject: [PATCH 4/8] Fix bug #4959 by correctly setting previous db version number and updating the current db version (#4960) --- .../free/nrw/commons/data/DBOpenHelper.java | 4 +- .../recentlanguages/RecentLanguagesDao.java | 12 +-- .../RecentLanguagesDaoUnitTest.kt | 89 ++++++++++++++++++- 3 files changed, 90 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/data/DBOpenHelper.java b/app/src/main/java/fr/free/nrw/commons/data/DBOpenHelper.java index 207101638..7ee417fbc 100644 --- a/app/src/main/java/fr/free/nrw/commons/data/DBOpenHelper.java +++ b/app/src/main/java/fr/free/nrw/commons/data/DBOpenHelper.java @@ -4,9 +4,7 @@ import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; - import fr.free.nrw.commons.bookmarks.items.BookmarkItemsDao; -import fr.free.nrw.commons.bookmarks.items.BookmarkItemsDao.Table; import fr.free.nrw.commons.bookmarks.locations.BookmarkLocationsDao; import fr.free.nrw.commons.bookmarks.pictures.BookmarkPicturesDao; import fr.free.nrw.commons.category.CategoryDao; @@ -16,7 +14,7 @@ import fr.free.nrw.commons.recentlanguages.RecentLanguagesDao; public class DBOpenHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "commons.db"; - private static final int DATABASE_VERSION = 19; + private static final int DATABASE_VERSION = 20; public static final String CONTRIBUTIONS_TABLE = "contributions"; private final String DROP_TABLE_STATEMENT="DROP TABLE IF EXISTS %s"; diff --git a/app/src/main/java/fr/free/nrw/commons/recentlanguages/RecentLanguagesDao.java b/app/src/main/java/fr/free/nrw/commons/recentlanguages/RecentLanguagesDao.java index 1af1b50e6..c4a4bf518 100644 --- a/app/src/main/java/fr/free/nrw/commons/recentlanguages/RecentLanguagesDao.java +++ b/app/src/main/java/fr/free/nrw/commons/recentlanguages/RecentLanguagesDao.java @@ -185,23 +185,17 @@ public class RecentLanguagesDao { if (from == to) { return; } - if (from < 6) { + if (from < 19) { // doesn't exist yet from++; onUpdate(db, from, to); return; } - if (from == 6) { - // table added in version 7 + if (from == 19) { + // table added in version 20 onCreate(db); from++; onUpdate(db, from, to); - return; - } - if (from == 7) { - from++; - onUpdate(db, from, to); - return; } } } diff --git a/app/src/test/kotlin/fr/free/nrw/commons/recentlanguages/RecentLanguagesDaoUnitTest.kt b/app/src/test/kotlin/fr/free/nrw/commons/recentlanguages/RecentLanguagesDaoUnitTest.kt index 122f2e49c..abe8708bf 100644 --- a/app/src/test/kotlin/fr/free/nrw/commons/recentlanguages/RecentLanguagesDaoUnitTest.kt +++ b/app/src/test/kotlin/fr/free/nrw/commons/recentlanguages/RecentLanguagesDaoUnitTest.kt @@ -177,20 +177,103 @@ class RecentLanguagesDaoUnitTest { @Test fun migrateTableVersionFrom_v5_to_v6() { onUpdate(database, 5, 6) - // Table didnt exist before v7 + // Table didnt exist in version 6 verifyZeroInteractions(database) } @Test fun migrateTableVersionFrom_v6_to_v7() { onUpdate(database, 6, 7) - verify(database).execSQL(CREATE_TABLE_STATEMENT) + // Table didnt exist in version 7 + verifyZeroInteractions(database) } @Test fun migrateTableVersionFrom_v7_to_v8() { onUpdate(database, 7, 8) - // Table didnt change in version 8 + // Table didnt exist in version 8 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v8_to_v9() { + onUpdate(database, 8, 9) + // Table didnt exist in version 9 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v9_to_v10() { + onUpdate(database, 9, 10) + // Table didnt exist in version 10 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v10_to_v11() { + onUpdate(database, 10, 11) + // Table didnt exist in version 11 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v11_to_v12() { + onUpdate(database, 11, 12) + // Table didnt exist in version 12 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v12_to_v13() { + onUpdate(database, 12, 13) + // Table didnt exist in version 13 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v13_to_v14() { + onUpdate(database, 13, 14) + // Table didnt exist in version 14 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v14_to_v15() { + onUpdate(database, 14, 15) + // Table didnt exist in version 15 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v15_to_v16() { + onUpdate(database, 15, 16) + // Table didnt exist in version 16 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v16_to_v17() { + onUpdate(database, 16, 17) + // Table didnt exist in version 17 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v18_to_v19() { + onUpdate(database, 18, 19) + // Table didnt exist in version 18 + verifyZeroInteractions(database) + } + + @Test + fun migrateTableVersionFrom_v19_to_v20() { + onUpdate(database, 19, 20) + verify(database).execSQL(CREATE_TABLE_STATEMENT) + } + + @Test + fun migrateTableVersionFrom_v20_to_v20() { + onUpdate(database, 20, 20) verifyZeroInteractions(database) } From 9654a8ea34917d1ad52323fd890337f9a041a17a Mon Sep 17 00:00:00 2001 From: Madhur Gupta <30932899+madhurgupta10@users.noreply.github.com> Date: Fri, 20 May 2022 19:09:21 +0530 Subject: [PATCH 5/8] Fix bug #4957 (#4961) --- .../fr/free/nrw/commons/description/DescriptionEditActivity.kt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/src/main/java/fr/free/nrw/commons/description/DescriptionEditActivity.kt b/app/src/main/java/fr/free/nrw/commons/description/DescriptionEditActivity.kt index 04c90e492..8d7795f5e 100644 --- a/app/src/main/java/fr/free/nrw/commons/description/DescriptionEditActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/description/DescriptionEditActivity.kt @@ -154,8 +154,7 @@ class DescriptionEditActivity : BaseActivity(), UploadMediaDetailAdapter.EventLi buffer.append("}}, ") } } - buffer.deleteCharAt(buffer.length - 1) - buffer.deleteCharAt(buffer.length - 1) + buffer.replace(", $".toRegex(), "") buffer.append(descriptionEnd) } val returningIntent = Intent() From 05895c5d9e533a1a5b97e4b53c760dba6d998003 Mon Sep 17 00:00:00 2001 From: Nicolas Raoul Date: Thu, 26 May 2022 00:00:15 +0900 Subject: [PATCH 6/8] Update library to new version that handles older Java VMs Fixes #4972 I believe. --- app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle b/app/build.gradle index daff00e52..4b71fb21c 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -152,7 +152,7 @@ dependencies { implementation 'com.github.bumptech.glide:glide:4.12.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0' - implementation("io.github.coordinates2country:coordinates2country-android:1.2") { exclude group: 'com.google.android', module: 'android' } + implementation("io.github.coordinates2country:coordinates2country-android:1.3") { exclude group: 'com.google.android', module: 'android' } } task disableAnimations(type: Exec) { From 50b3d2c5fb104057157c00aa21ed7bf8a7aa16aa Mon Sep 17 00:00:00 2001 From: Josephine Lim Date: Sat, 28 May 2022 17:08:26 +1000 Subject: [PATCH 7/8] Versioning for v4.0.0 --- app/build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 4b71fb21c..d94dbb9dd 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -173,8 +173,8 @@ android { defaultConfig { //applicationId 'fr.free.nrw.commons' - versionCode 1025 - versionName '3.1.1' + versionCode 1026 + versionName '4.0.0' setProperty("archivesBaseName", "app-commons-v$versionName-" + getBranchName()) minSdkVersion 19 From e27f5d445866a9894b42021f58f7f9525b160209 Mon Sep 17 00:00:00 2001 From: Josephine Lim Date: Sat, 28 May 2022 17:21:46 +1000 Subject: [PATCH 8/8] Changelog for v4.0.0 --- CHANGELOG.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 405b7d9de..612011688 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Wikimedia Commons for Android +## v4.0.0 +- Added map showing nearby Commons pictures +- Added custom SPARQL queries +- Added user profiles +- Added custom picture selector +- Various bugfixes +- Updated target SDK to 30 + ## v3.1.1 - Optimized Nearby query - Added Sweden's property for WLM 2021