Skip to content

Commit 28ebbd9

Browse files
Add serializable extensions
1 parent 279c224 commit 28ebbd9

29 files changed

+81
-55
lines changed

app/src/main/java/org/wikipedia/analytics/eventplatform/BreadCrumbLogEvent.kt

+3-1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import kotlinx.serialization.SerialName
1111
import kotlinx.serialization.Serializable
1212
import org.wikipedia.Constants
1313
import org.wikipedia.WikipediaApp
14+
import org.wikipedia.extensions.serializableExtra
1415
import org.wikipedia.settings.SettingsActivity
1516
import org.wikipedia.util.log.L
1617

@@ -56,7 +57,8 @@ class BreadCrumbLogEvent(
5657
}
5758

5859
fun logScreenShown(context: Context, fragment: Fragment? = null) {
59-
val invokeSource = (fragment?.activity?.intent ?: (context as? Activity)?.intent)?.getSerializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE) as? Constants.InvokeSource
60+
val intent = (fragment?.activity?.intent ?: (context as? Activity)?.intent)
61+
val invokeSource = intent?.serializableExtra<Constants.InvokeSource>(Constants.INTENT_EXTRA_INVOKE_SOURCE)
6062
EventPlatformClient.submit(BreadCrumbLogEvent(BreadCrumbViewUtil.getReadableScreenName(context, fragment),
6163
"show" + invokeSource?.let { ".from." + it.value }.orEmpty()))
6264
}

app/src/main/java/org/wikipedia/commons/ImagePreviewViewModel.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import org.wikipedia.Constants
1313
import org.wikipedia.dataclient.ServiceFactory
1414
import org.wikipedia.descriptions.DescriptionEditActivity
1515
import org.wikipedia.extensions.parcelable
16+
import org.wikipedia.extensions.serializable
1617
import org.wikipedia.suggestededits.PageSummaryForEdit
1718
import org.wikipedia.util.Resource
1819

@@ -22,7 +23,7 @@ class ImagePreviewViewModel(bundle: Bundle) : ViewModel() {
2223
_uiState.value = Resource.Error(throwable)
2324
}
2425
var pageSummaryForEdit = bundle.parcelable<PageSummaryForEdit>(ImagePreviewDialog.ARG_SUMMARY)!!
25-
var action = bundle.getSerializable(ImagePreviewDialog.ARG_ACTION) as DescriptionEditActivity.Action?
26+
var action = bundle.serializable<DescriptionEditActivity.Action>(ImagePreviewDialog.ARG_ACTION)
2627

2728
private val _uiState = MutableStateFlow(Resource<FilePage>())
2829
val uiState = _uiState.asStateFlow()

app/src/main/java/org/wikipedia/descriptions/DescriptionEditActivity.kt

+11-12
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import org.wikipedia.Constants.InvokeSource
99
import org.wikipedia.activity.SingleFragmentActivity
1010
import org.wikipedia.commons.ImagePreviewDialog
1111
import org.wikipedia.extensions.parcelableExtra
12+
import org.wikipedia.extensions.serializableExtra
1213
import org.wikipedia.history.HistoryEntry
1314
import org.wikipedia.page.ExclusiveBottomSheetPresenter
1415
import org.wikipedia.page.PageTitle
@@ -24,7 +25,7 @@ class DescriptionEditActivity : SingleFragmentActivity<DescriptionEditFragment>(
2425

2526
override fun onCreate(savedInstanceState: Bundle?) {
2627
super.onCreate(savedInstanceState)
27-
val action = intent.getSerializableExtra(Constants.INTENT_EXTRA_ACTION) as Action
28+
val action = intent.serializableExtra<Action>(Constants.INTENT_EXTRA_ACTION)
2829

2930
if (action == Action.ADD_DESCRIPTION && Prefs.isDescriptionEditTutorialEnabled) {
3031
Prefs.isDescriptionEditTutorialEnabled = false
@@ -33,15 +34,14 @@ class DescriptionEditActivity : SingleFragmentActivity<DescriptionEditFragment>(
3334
}
3435

3536
public override fun createFragment(): DescriptionEditFragment {
36-
val invokeSource = intent.getSerializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource
37-
val action = intent.getSerializableExtra(Constants.INTENT_EXTRA_ACTION) as Action
38-
val title = intent.parcelableExtra<PageTitle>(Constants.ARG_TITLE)!!
39-
return DescriptionEditFragment.newInstance(title,
40-
intent.getStringExtra(EXTRA_HIGHLIGHT_TEXT),
41-
intent.parcelableExtra(EXTRA_SOURCE_SUMMARY),
42-
intent.parcelableExtra(EXTRA_TARGET_SUMMARY),
43-
action,
44-
invokeSource)
37+
return DescriptionEditFragment.newInstance(
38+
intent.parcelableExtra(Constants.ARG_TITLE)!!,
39+
intent.getStringExtra(EXTRA_HIGHLIGHT_TEXT),
40+
intent.parcelableExtra(EXTRA_SOURCE_SUMMARY),
41+
intent.parcelableExtra(EXTRA_TARGET_SUMMARY),
42+
intent.serializableExtra(Constants.INTENT_EXTRA_ACTION)!!,
43+
intent.serializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE)!!
44+
)
4545
}
4646

4747
override fun onBackPressed() {
@@ -67,8 +67,7 @@ class DescriptionEditActivity : SingleFragmentActivity<DescriptionEditFragment>(
6767
} else {
6868
ExclusiveBottomSheetPresenter.show(supportFragmentManager,
6969
LinkPreviewDialog.newInstance(HistoryEntry(summary.pageTitle,
70-
if (intent.hasExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE) && intent.getSerializableExtra
71-
(Constants.INTENT_EXTRA_INVOKE_SOURCE) === InvokeSource.PAGE_ACTIVITY)
70+
if (intent.serializableExtra<InvokeSource>(Constants.INTENT_EXTRA_INVOKE_SOURCE) === InvokeSource.PAGE_ACTIVITY)
7271
HistoryEntry.SOURCE_EDIT_DESCRIPTION else HistoryEntry.SOURCE_SUGGESTED_EDITS)))
7372
}
7473
}

app/src/main/java/org/wikipedia/descriptions/DescriptionEditFragment.kt

+3-2
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ import org.wikipedia.dataclient.okhttp.OkHttpConnectionFactory
4343
import org.wikipedia.dataclient.wikidata.EntityPostResponse
4444
import org.wikipedia.edit.EditTags
4545
import org.wikipedia.extensions.parcelable
46+
import org.wikipedia.extensions.serializable
4647
import org.wikipedia.language.AppLanguageLookUpTable
4748
import org.wikipedia.login.LoginActivity
4849
import org.wikipedia.notifications.AnonymousNotificationHelper
@@ -132,8 +133,8 @@ class DescriptionEditFragment : Fragment() {
132133
super.onCreate(savedInstanceState)
133134
pageTitle = requireArguments().parcelable(Constants.ARG_TITLE)!!
134135
highlightText = requireArguments().getString(ARG_HIGHLIGHT_TEXT)
135-
action = requireArguments().getSerializable(ARG_ACTION) as DescriptionEditActivity.Action
136-
invokeSource = requireArguments().getSerializable(Constants.INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource
136+
action = requireArguments().serializable(ARG_ACTION)!!
137+
invokeSource = requireArguments().serializable(Constants.INTENT_EXTRA_INVOKE_SOURCE)!!
137138
sourceSummary = requireArguments().parcelable(ARG_SOURCE_SUMMARY)
138139
targetSummary = requireArguments().parcelable(ARG_TARGET_SUMMARY)
139140
EditAttemptStepEvent.logInit(pageTitle, EditAttemptStepEvent.INTERFACE_OTHER)

app/src/main/java/org/wikipedia/diff/ArticleEditDetailsActivity.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import org.wikipedia.Constants.InvokeSource
99
import org.wikipedia.activity.BaseActivity
1010
import org.wikipedia.databinding.ActivityArticleEditDetailsBinding
1111
import org.wikipedia.extensions.parcelableExtra
12+
import org.wikipedia.extensions.serializableExtra
1213
import org.wikipedia.page.PageTitle
1314

1415
class ArticleEditDetailsActivity : BaseActivity() {
@@ -25,7 +26,7 @@ class ArticleEditDetailsActivity : BaseActivity() {
2526
intent.getIntExtra(EXTRA_PAGE_ID, -1),
2627
intent.getLongExtra(EXTRA_EDIT_REVISION_FROM, -1),
2728
intent.getLongExtra(EXTRA_EDIT_REVISION_TO, -1),
28-
intent.getSerializableExtra(INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource)
29+
intent.serializableExtra(INTENT_EXTRA_INVOKE_SOURCE)!!)
2930

3031
if (savedInstanceState == null) {
3132
supportFragmentManager.commit { add(binding.fragmentContainer.id, fragment) }

app/src/main/java/org/wikipedia/diff/ArticleEditDetailsViewModel.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,15 @@ import org.wikipedia.dataclient.wikidata.EntityPostResponse
2424
import org.wikipedia.edit.Edit
2525
import org.wikipedia.edit.EditTags
2626
import org.wikipedia.extensions.parcelable
27+
import org.wikipedia.extensions.serializable
2728
import org.wikipedia.page.PageTitle
2829
import org.wikipedia.suggestededits.provider.EditingSuggestionsProvider
2930
import org.wikipedia.util.Resource
3031
import org.wikipedia.util.SingleLiveData
3132
import org.wikipedia.watchlist.WatchlistExpiry
3233

3334
class ArticleEditDetailsViewModel(bundle: Bundle) : ViewModel() {
34-
35-
private val invokeSource = bundle.getSerializable(Constants.INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource
35+
private val invokeSource = bundle.serializable<InvokeSource>(Constants.INTENT_EXTRA_INVOKE_SOURCE)
3636

3737
val watchedStatus = MutableLiveData<Resource<MwQueryPage>>()
3838
val rollbackRights = MutableLiveData<Resource<Boolean>>()

app/src/main/java/org/wikipedia/edit/EditSectionActivity.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ import org.wikipedia.edit.preview.EditPreviewFragment
5252
import org.wikipedia.edit.richtext.SyntaxHighlighter
5353
import org.wikipedia.edit.summaries.EditSummaryFragment
5454
import org.wikipedia.extensions.parcelableExtra
55+
import org.wikipedia.extensions.serializableExtra
5556
import org.wikipedia.history.HistoryEntry
5657
import org.wikipedia.login.LoginActivity
5758
import org.wikipedia.notifications.AnonymousNotificationHelper
@@ -182,7 +183,7 @@ class EditSectionActivity : BaseActivity(), ThemeChooserDialog.Callback, EditPre
182183
sectionID = intent.getIntExtra(EXTRA_SECTION_ID, -1)
183184
sectionAnchor = intent.getStringExtra(EXTRA_SECTION_ANCHOR)
184185
textToHighlight = intent.getStringExtra(EXTRA_HIGHLIGHT_TEXT)
185-
invokeSource = intent.getSerializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE) as Constants.InvokeSource
186+
invokeSource = intent.serializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE)!!
186187

187188
setSupportActionBar(binding.toolbar)
188189
supportActionBar?.title = ""

app/src/main/java/org/wikipedia/edit/insertmedia/InsertMediaViewModel.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ import org.wikipedia.dataclient.Service
1616
import org.wikipedia.dataclient.ServiceFactory
1717
import org.wikipedia.dataclient.WikiSite
1818
import org.wikipedia.extensions.parcelable
19+
import org.wikipedia.extensions.serializable
1920
import org.wikipedia.page.PageTitle
2021
import org.wikipedia.staticdata.FileAliasData
2122
import org.wikipedia.util.L10nUtil
2223
import org.wikipedia.util.StringUtil
2324
import org.wikipedia.util.log.L
2425

2526
class InsertMediaViewModel(bundle: Bundle) : ViewModel() {
26-
27-
val invokeSource = bundle.getSerializable(Constants.INTENT_EXTRA_INVOKE_SOURCE) as Constants.InvokeSource
27+
val invokeSource = bundle.serializable<Constants.InvokeSource>(Constants.INTENT_EXTRA_INVOKE_SOURCE)
2828
val wikiSite = bundle.parcelable<WikiSite>(Constants.ARG_WIKISITE)!!
2929
var searchQuery = StringUtil.removeHTMLTags(StringUtil.removeUnderscores(bundle.getString(InsertMediaActivity.EXTRA_SEARCH_QUERY)!!))
3030
val originalSearchQuery = searchQuery

app/src/main/java/org/wikipedia/edit/templates/TemplatesSearchViewModel.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ import org.wikipedia.dataclient.ServiceFactory
1717
import org.wikipedia.dataclient.WikiSite
1818
import org.wikipedia.dataclient.mwapi.TemplateDataResponse
1919
import org.wikipedia.extensions.parcelable
20+
import org.wikipedia.extensions.serializable
2021
import org.wikipedia.page.Namespace
2122
import org.wikipedia.page.PageTitle
2223
import org.wikipedia.settings.Prefs
2324

2425
class TemplatesSearchViewModel(bundle: Bundle) : ViewModel() {
25-
26-
val invokeSource = bundle.getSerializable(Constants.INTENT_EXTRA_INVOKE_SOURCE) as Constants.InvokeSource
26+
val invokeSource = bundle.serializable<Constants.InvokeSource>(Constants.INTENT_EXTRA_INVOKE_SOURCE)
2727
val wikiSite = bundle.parcelable<WikiSite>(Constants.ARG_WIKISITE)!!
2828
val isFromDiff = bundle.getBoolean(TemplatesSearchActivity.EXTRA_FROM_DIFF, false)
2929
var searchQuery: String? = null

app/src/main/java/org/wikipedia/extensions/Bundle.kt

+5
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package org.wikipedia.extensions
33
import android.os.Bundle
44
import android.os.Parcelable
55
import androidx.core.os.BundleCompat
6+
import java.io.Serializable
67

78
inline fun <reified T : Parcelable> Bundle.parcelable(key: String?): T? {
89
return BundleCompat.getParcelable(this, key, T::class.java)
@@ -11,3 +12,7 @@ inline fun <reified T : Parcelable> Bundle.parcelable(key: String?): T? {
1112
inline fun <reified T : Parcelable> Bundle.parcelableArrayList(key: String?): ArrayList<T>? {
1213
return BundleCompat.getParcelableArrayList(this, key, T::class.java)
1314
}
15+
16+
inline fun <reified T : Serializable> Bundle.serializable(key: String?): T? {
17+
return BundleCompat.getSerializable(this, key, T::class.java)
18+
}

app/src/main/java/org/wikipedia/extensions/Intent.kt

+5
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,12 @@ package org.wikipedia.extensions
33
import android.content.Intent
44
import android.os.Parcelable
55
import androidx.core.content.IntentCompat
6+
import java.io.Serializable
67

78
inline fun <reified T : Parcelable> Intent.parcelableExtra(key: String?): T? {
89
return IntentCompat.getParcelableExtra(this, key, T::class.java)
910
}
11+
12+
inline fun <reified T : Serializable> Intent.serializableExtra(key: String?): T? {
13+
return IntentCompat.getSerializableExtra(this, key, T::class.java)
14+
}

app/src/main/java/org/wikipedia/feed/onthisday/OnThisDayActivity.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,15 @@ import org.wikipedia.Constants.InvokeSource
77
import org.wikipedia.activity.SingleFragmentActivity
88
import org.wikipedia.dataclient.WikiSite
99
import org.wikipedia.extensions.parcelableExtra
10+
import org.wikipedia.extensions.serializableExtra
1011

1112
class OnThisDayActivity : SingleFragmentActivity<OnThisDayFragment>() {
1213

1314
override fun createFragment(): OnThisDayFragment {
1415
return OnThisDayFragment.newInstance(intent.getIntExtra(EXTRA_AGE, 0),
1516
intent.parcelableExtra(Constants.ARG_WIKISITE)!!,
1617
intent.getIntExtra(EXTRA_YEAR, -1),
17-
intent.getSerializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource)
18+
intent.serializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE)!!)
1819
}
1920

2021
companion object {

app/src/main/java/org/wikipedia/feed/onthisday/OnThisDayViewModel.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import org.wikipedia.Constants
1212
import org.wikipedia.dataclient.ServiceFactory
1313
import org.wikipedia.dataclient.WikiSite
1414
import org.wikipedia.extensions.parcelable
15+
import org.wikipedia.extensions.serializable
1516
import org.wikipedia.util.DateUtil
1617
import org.wikipedia.util.Resource
1718
import java.util.Calendar
@@ -25,7 +26,7 @@ class OnThisDayViewModel(bundle: Bundle) : ViewModel() {
2526
val wikiSite = bundle.parcelable<WikiSite>(Constants.ARG_WIKISITE)!!
2627
val age = bundle.getInt(OnThisDayActivity.EXTRA_AGE, 0)
2728
val year = bundle.getInt(OnThisDayActivity.EXTRA_YEAR, 0)
28-
val invokeSource = bundle.getSerializable(Constants.INTENT_EXTRA_INVOKE_SOURCE) as Constants.InvokeSource
29+
val invokeSource = bundle.serializable<Constants.InvokeSource>(Constants.INTENT_EXTRA_INVOKE_SOURCE)
2930
val date = DateUtil.getDefaultDateFor(age)
3031

3132
private val _uiState = MutableStateFlow(Resource<List<OnThisDay.Event>>())

app/src/main/java/org/wikipedia/feed/suggestededits/SuggestedEditsCardItemViewModel.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import org.wikipedia.dataclient.ServiceFactory
1414
import org.wikipedia.dataclient.WikiSite
1515
import org.wikipedia.dataclient.mwapi.MwQueryPage
1616
import org.wikipedia.descriptions.DescriptionEditActivity
17+
import org.wikipedia.extensions.serializable
1718
import org.wikipedia.page.Namespace
1819
import org.wikipedia.page.PageTitle
1920
import org.wikipedia.suggestededits.PageSummaryForEdit
@@ -22,9 +23,8 @@ import org.wikipedia.util.Resource
2223
import org.wikipedia.util.StringUtil
2324

2425
class SuggestedEditsCardItemViewModel(bundle: Bundle) : ViewModel() {
25-
2626
val age = bundle.getInt(SuggestedEditsCardItemFragment.EXTRA_AGE)
27-
var cardActionType = bundle.getSerializable(SuggestedEditsCardItemFragment.EXTRA_ACTION_TYPE) as DescriptionEditActivity.Action
27+
var cardActionType = bundle.serializable<DescriptionEditActivity.Action>(SuggestedEditsCardItemFragment.EXTRA_ACTION_TYPE)
2828
var sourceSummaryForEdit: PageSummaryForEdit? = null
2929
var targetSummaryForEdit: PageSummaryForEdit? = null
3030
var imageTagPage: MwQueryPage? = null

app/src/main/java/org/wikipedia/gallery/GalleryActivity.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ import org.wikipedia.dataclient.Service
3737
import org.wikipedia.dataclient.WikiSite
3838
import org.wikipedia.dataclient.wikidata.Entities
3939
import org.wikipedia.descriptions.DescriptionEditActivity
40+
import org.wikipedia.extensions.serializableExtra
4041
import org.wikipedia.history.HistoryEntry
4142
import org.wikipedia.page.ExclusiveBottomSheetPresenter
4243
import org.wikipedia.page.LinkMovementMethodExt
@@ -81,7 +82,7 @@ class GalleryActivity : BaseActivity(), LinkPreviewDialog.LoadPageCallback, Gall
8182

8283
private val requestAddCaptionLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
8384
if (it.resultCode == RESULT_OK) {
84-
val action = it.data?.getSerializableExtra(Constants.INTENT_EXTRA_ACTION) as DescriptionEditActivity.Action?
85+
val action = it.data?.serializableExtra<DescriptionEditActivity.Action>(Constants.INTENT_EXTRA_ACTION)
8586
SuggestedEditsSnackbars.show(this, action, true, targetLanguageCode, false)
8687
fetchGalleryDescription(currentItem)
8788
setResult(ACTIVITY_RESULT_IMAGE_CAPTION_ADDED)

app/src/main/java/org/wikipedia/page/PageActivity.kt

+2-4
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ import org.wikipedia.edit.EditSectionActivity
5454
import org.wikipedia.events.ArticleSavedOrDeletedEvent
5555
import org.wikipedia.events.ChangeTextSizeEvent
5656
import org.wikipedia.extensions.parcelableExtra
57+
import org.wikipedia.extensions.serializableExtra
5758
import org.wikipedia.gallery.GalleryActivity
5859
import org.wikipedia.history.HistoryEntry
5960
import org.wikipedia.language.LangLinksActivity
@@ -145,11 +146,8 @@ class PageActivity : BaseActivity(), PageFragment.Callback, LinkPreviewDialog.Lo
145146
private val requestSuggestedEditsLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
146147
if (it.resultCode == RESULT_OK || it.resultCode == DescriptionEditSuccessActivity.RESULT_OK_FROM_EDIT_SUCCESS) {
147148
pageFragment.refreshPage()
148-
val data = it.data
149149
val editLanguage = pageFragment.leadImageEditLang.orEmpty().ifEmpty { app.languageState.appLanguageCode }
150-
val action = if (data != null && data.hasExtra(Constants.INTENT_EXTRA_ACTION))
151-
data.getSerializableExtra(Constants.INTENT_EXTRA_ACTION) as DescriptionEditActivity.Action?
152-
else null
150+
val action = it.data?.serializableExtra<DescriptionEditActivity.Action>(Constants.INTENT_EXTRA_ACTION)
153151

154152
SuggestedEditsSnackbars.show(this, action, it.resultCode != DescriptionEditSuccessActivity.RESULT_OK_FROM_EDIT_SUCCESS,
155153
editLanguage, action !== DescriptionEditActivity.Action.ADD_DESCRIPTION && action !== DescriptionEditActivity.Action.TRANSLATE_DESCRIPTION) {

app/src/main/java/org/wikipedia/random/RandomActivity.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import org.wikipedia.Constants.InvokeSource
88
import org.wikipedia.activity.SingleFragmentActivity
99
import org.wikipedia.dataclient.WikiSite
1010
import org.wikipedia.extensions.parcelableExtra
11+
import org.wikipedia.extensions.serializableExtra
1112

1213
class RandomActivity : SingleFragmentActivity<RandomFragment>() {
1314

@@ -28,6 +29,6 @@ class RandomActivity : SingleFragmentActivity<RandomFragment>() {
2829

2930
public override fun createFragment(): RandomFragment {
3031
return RandomFragment.newInstance(intent.parcelableExtra(Constants.ARG_WIKISITE)!!,
31-
intent.getSerializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource)
32+
intent.serializableExtra(Constants.INTENT_EXTRA_INVOKE_SOURCE)!!)
3233
}
3334
}

app/src/main/java/org/wikipedia/readinglist/AddToReadingListDialog.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import org.wikipedia.R
2222
import org.wikipedia.database.AppDatabase
2323
import org.wikipedia.databinding.DialogAddToReadingListBinding
2424
import org.wikipedia.extensions.parcelableArrayList
25+
import org.wikipedia.extensions.serializable
2526
import org.wikipedia.page.ExtendedBottomSheetDialogFragment
2627
import org.wikipedia.page.PageTitle
2728
import org.wikipedia.readinglist.ReadingListTitleDialog.readingListTitleDialog
@@ -49,7 +50,7 @@ open class AddToReadingListDialog : ExtendedBottomSheetDialogFragment() {
4950
override fun onCreate(savedInstanceState: Bundle?) {
5051
super.onCreate(savedInstanceState)
5152
titles = requireArguments().parcelableArrayList(PAGE_TITLE_LIST)!!
52-
invokeSource = requireArguments().getSerializable(Constants.INTENT_EXTRA_INVOKE_SOURCE) as InvokeSource
53+
invokeSource = requireArguments().serializable(Constants.INTENT_EXTRA_INVOKE_SOURCE)!!
5354
showDefaultList = requireArguments().getBoolean(SHOW_DEFAULT_LIST)
5455
adapter = ReadingListAdapter()
5556
}

0 commit comments

Comments
 (0)