diff --git a/CHANGELOG.md b/CHANGELOG.md index 6fd325813..575aa6a32 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Wikimedia Commons for Android +## v6.0.2 + +### What's changed +* Addressed a bug that prevented the keyboard from appearing in various text fields, such as on the upload wizard +* Links in the "File usages" list are now clickable and will take you to the correct page. +* Titles for file usages are now clearer and easier to understand +* Bug fixes and stability improvements + ## v6.0.1 ### What's changed diff --git a/app/build.gradle.kts b/app/build.gradle.kts index ddbbb4984..7a6a2bcf4 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -24,8 +24,8 @@ android { applicationId = "fr.free.nrw.commons" minSdk = 21 targetSdk = 35 - versionCode = 1057 - versionName = "6.0.1" + versionCode = 1058 + versionName = "6.0.2" setProperty("archivesBaseName", "app-commons-v$versionName-" + getBranchName()) testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d56a874b5..e8215bd90 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -101,7 +101,6 @@ android:name=".upload.UploadActivity" android:configChanges="orientation|screenSize|keyboard" android:exported="true" - android:hardwareAccelerated="false" android:icon="@mipmap/ic_launcher" android:windowSoftInputMode="adjustResize"> diff --git a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.kt b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.kt index e20a75c0f..dc1e86137 100644 --- a/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/media/MediaDetailFragment.kt @@ -541,6 +541,7 @@ class MediaDetailFragment : CommonsDaggerSupportFragment(), CategoryEditHelper.C } ) binding.progressBarEdit.visibility = View.GONE + binding.descriptionEdit.visibility = View.VISIBLE } override fun onConfigurationChanged(newConfig: Configuration) { diff --git a/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt b/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt index 74597bc14..c2bed5fff 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/UploadActivity.kt @@ -13,6 +13,7 @@ import android.os.Build.VERSION_CODES import android.os.Bundle import android.provider.Settings import android.view.View +import android.view.inputmethod.InputMethodManager import android.widget.CheckBox import androidx.activity.OnBackPressedCallback import androidx.appcompat.app.AlertDialog @@ -805,6 +806,19 @@ class UploadActivity : BaseActivity(), UploadContract.View, UploadBaseFragment.C override fun onNextButtonClicked(index: Int) { if (index < fragments!!.size - 1) { + // Hide the keyboard before navigating to Media License screen + val isUploadCategoriesFragment = fragments!!.getOrNull(index)?.let { + it is UploadCategoriesFragment + } ?: false + if (isUploadCategoriesFragment) { + val inputMethodManager = getSystemService(INPUT_METHOD_SERVICE) as InputMethodManager + currentFocus?.let { focusedView -> + inputMethodManager.hideSoftInputFromWindow( + focusedView.windowToken, + InputMethodManager.HIDE_NOT_ALWAYS + ) + } + } binding.vpUpload.setCurrentItem(index + 1, false) fragments!![index + 1].onBecameVisible() (binding.rvThumbnails.layoutManager as LinearLayoutManager) diff --git a/app/src/main/java/fr/free/nrw/commons/upload/categories/UploadCategoriesFragment.kt b/app/src/main/java/fr/free/nrw/commons/upload/categories/UploadCategoriesFragment.kt index 262013045..798ab74fe 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/categories/UploadCategoriesFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/categories/UploadCategoriesFragment.kt @@ -26,6 +26,7 @@ import fr.free.nrw.commons.media.MediaDetailFragment import fr.free.nrw.commons.upload.UploadActivity import fr.free.nrw.commons.upload.UploadBaseFragment import fr.free.nrw.commons.utils.DialogUtil.showAlertDialog +import fr.free.nrw.commons.utils.handleKeyboardInsets import fr.free.nrw.commons.wikidata.WikidataConstants.SELECTED_NEARBY_PLACE_CATEGORY import io.reactivex.Notification import io.reactivex.android.schedulers.AndroidSchedulers @@ -69,6 +70,7 @@ class UploadCategoriesFragment : UploadBaseFragment(), CategoriesContract.View { savedInstanceState: Bundle? ): View? { binding = UploadCategoriesFragmentBinding.inflate(inflater, container, false) + binding!!.llContainerButtons.handleKeyboardInsets() return binding!!.root } diff --git a/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsFragment.kt b/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsFragment.kt index 39bcabb46..484750410 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsFragment.kt +++ b/app/src/main/java/fr/free/nrw/commons/upload/depicts/DepictsFragment.kt @@ -27,6 +27,7 @@ import fr.free.nrw.commons.upload.UploadActivity import fr.free.nrw.commons.upload.UploadBaseFragment import fr.free.nrw.commons.upload.structure.depictions.DepictedItem import fr.free.nrw.commons.utils.DialogUtil.showAlertDialog +import fr.free.nrw.commons.utils.handleKeyboardInsets import fr.free.nrw.commons.wikidata.WikidataConstants.SELECTED_NEARBY_PLACE import io.reactivex.Notification import io.reactivex.android.schedulers.AndroidSchedulers @@ -69,6 +70,7 @@ class DepictsFragment : UploadBaseFragment(), DepictsContract.View { savedInstanceState: Bundle? ): View { _binding = UploadDepictsFragmentBinding.inflate(inflater, container, false) + _binding!!.navigationButtonsContainer.handleKeyboardInsets() return binding.root } diff --git a/app/src/main/res/layout/upload_categories_fragment.xml b/app/src/main/res/layout/upload_categories_fragment.xml index fb70f39a1..6ded4af87 100644 --- a/app/src/main/res/layout/upload_categories_fragment.xml +++ b/app/src/main/res/layout/upload_categories_fragment.xml @@ -5,13 +5,13 @@ android:id="@+id/rl_container_categories" android:layout_width="match_parent" android:layout_height="match_parent" - android:padding="@dimen/standard_gap" android:background="?attr/mainBackground" > diff --git a/app/src/main/res/layout/upload_depicts_fragment.xml b/app/src/main/res/layout/upload_depicts_fragment.xml index 9fa621396..a1b85666c 100644 --- a/app/src/main/res/layout/upload_depicts_fragment.xml +++ b/app/src/main/res/layout/upload_depicts_fragment.xml @@ -124,38 +124,35 @@ + android:id="@+id/button_divider" + android:layout_width="match_parent" + android:layout_height="1dp" + android:layout_above="@+id/navigation_buttons_container" + android:background="@color/divider_grey" /> -