mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-28 21:33:53 +01:00
Use new result API (#5875)
* remove unused result expectancy for settings screen launch Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * initial refactor to new result api, wip Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * refactor camera launcher Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * revert callback for video handling Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * invoke callbacks when cancelled Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * handle gallery picker result based on preference Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * remove old method of refactoring for file picker Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * remove legacy result handling callback Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * request code used for handling result was never used for launching an activity, hence removed Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * extract voice result handling into function Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * refactor test Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * remove unused tests Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * cleanup Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * fix-docs Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> * add space after , Signed-off-by: parneet-guraya <gurayaparneet@gmail.com> --------- Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
This commit is contained in:
parent
f1205c19be
commit
1e7aabad16
26 changed files with 407 additions and 487 deletions
|
|
@ -6,6 +6,8 @@ import android.os.Bundle
|
|||
import android.os.Parcelable
|
||||
import android.speech.RecognizerIntent
|
||||
import android.view.View
|
||||
import androidx.activity.result.ActivityResult
|
||||
import androidx.activity.result.contract.ActivityResultContracts
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import fr.free.nrw.commons.CommonsApplication
|
||||
|
|
@ -70,10 +72,14 @@ class DescriptionEditActivity :
|
|||
|
||||
private lateinit var binding: ActivityDescriptionEditBinding
|
||||
|
||||
private val requestCodeForVoiceInput = 1213
|
||||
|
||||
private var descriptionAndCaptions: ArrayList<UploadMediaDetail>? = null
|
||||
|
||||
private val voiceInputResultLauncher = registerForActivityResult(
|
||||
ActivityResultContracts.StartActivityForResult()
|
||||
) { result: ActivityResult ->
|
||||
onVoiceInput(result)
|
||||
}
|
||||
|
||||
@Inject lateinit var descriptionEditHelper: DescriptionEditHelper
|
||||
|
||||
@Inject lateinit var sessionManager: SessionManager
|
||||
|
|
@ -115,6 +121,7 @@ class DescriptionEditActivity :
|
|||
savedLanguageValue,
|
||||
descriptionAndCaptions,
|
||||
recentLanguagesDao,
|
||||
voiceInputResultLauncher
|
||||
)
|
||||
uploadMediaDetailAdapter.setCallback { titleStringID: Int, messageStringId: Int ->
|
||||
showInfoAlert(
|
||||
|
|
@ -149,6 +156,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
|
||||
*/
|
||||
|
|
@ -292,22 +308,6 @@ class DescriptionEditActivity :
|
|||
progressDialog!!.show()
|
||||
}
|
||||
|
||||
override fun onActivityResult(
|
||||
requestCode: Int,
|
||||
resultCode: Int,
|
||||
data: Intent?,
|
||||
) {
|
||||
super.onActivityResult(requestCode, resultCode, data)
|
||||
if (requestCode == requestCodeForVoiceInput) {
|
||||
if (resultCode == RESULT_OK && data != null) {
|
||||
val result = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS)
|
||||
uploadMediaDetailAdapter.handleSpeechResult(result!![0])
|
||||
} else {
|
||||
Timber.e("Error %s", resultCode)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onSaveInstanceState(outState: Bundle) {
|
||||
super.onSaveInstanceState(outState)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue