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 cb1fa5d4e..d0c00313d 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 @@ -79,12 +79,7 @@ class DescriptionEditActivity : private val voiceInputResultLauncher = registerForActivityResult( ActivityResultContracts.StartActivityForResult() ) { result: ActivityResult -> - if (result.resultCode == RESULT_OK && result.data != null) { - val resultData = result.data!!.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS) - uploadMediaDetailAdapter.handleSpeechResult(resultData!![0]) - } else { - Timber.e("Error %s", result.resultCode) - } + onVoiceInput(result) } @Inject lateinit var descriptionEditHelper: DescriptionEditHelper @@ -163,6 +158,15 @@ class DescriptionEditActivity : override fun onPrimaryCaptionTextChange(isNotEmpty: Boolean) {} + private fun onVoiceInput(result: ActivityResult) { + if (result.resultCode == RESULT_OK && result.data != null) { + val resultData = result.data!!.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS) + uploadMediaDetailAdapter.handleSpeechResult(resultData!![0]) + } else { + Timber.e("Error %s", result.resultCode) + } + } + /** * Adds new language item to RecyclerView */ diff --git a/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java b/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java index 1d276b781..9045a1f8e 100644 --- a/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java +++ b/app/src/main/java/fr/free/nrw/commons/upload/mediaDetails/UploadMediaDetailFragment.java @@ -79,13 +79,7 @@ public class UploadMediaDetailFragment extends UploadBaseFragment implements private final ActivityResultLauncher voiceInputResultLauncher = registerForActivityResult( new StartActivityForResult(), result -> { - if (result.getResultCode() == RESULT_OK && result.getData() != null) { - ArrayList resultData = result.getData().getStringArrayListExtra( - RecognizerIntent.EXTRA_RESULTS); - uploadMediaDetailAdapter.handleSpeechResult(resultData.get(0)); - }else { - Timber.e("Error %s", result.getResultCode()); - } + onVoiceInput(result); } ); @@ -701,6 +695,16 @@ public class UploadMediaDetailFragment extends UploadBaseFragment implements } } + private void onVoiceInput(ActivityResult result) { + if (result.getResultCode() == RESULT_OK && result.getData() != null) { + ArrayList resultData = result.getData().getStringArrayListExtra( + RecognizerIntent.EXTRA_RESULTS); + uploadMediaDetailAdapter.handleSpeechResult(resultData.get(0)); + }else { + Timber.e("Error %s", result.getResultCode()); + } + } + private void onEditActivityResult(ActivityResult result){ //TODO[Parry] Doubtful how it works, understand it.... if (result.getResultCode() == RESULT_OK) {