Skip to content

Commit f0d78e9

Browse files
committed
Fix deprecation warnings
1 parent e5a2d02 commit f0d78e9

File tree

4 files changed

+25
-3
lines changed

4 files changed

+25
-3
lines changed

app/src/main/kotlin/me/tylerbwong/stack/ui/profile/ProfilePageFragment.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import me.tylerbwong.stack.ui.BaseFragment
1414
import me.tylerbwong.stack.ui.home.HomeItemDiffCallback
1515
import me.tylerbwong.stack.ui.profile.ProfileActivity.Companion.USER_ID
1616
import me.tylerbwong.stack.ui.utils.ViewHolderItemDecoration
17+
import me.tylerbwong.stack.ui.utils.serializable
1718
import me.tylerbwong.stack.ui.utils.showSnackbar
1819

1920
@AndroidEntryPoint
@@ -27,8 +28,8 @@ class ProfilePageFragment : BaseFragment<ProfilePageFragmentBinding>(
2728
override fun onCreate(savedInstanceState: Bundle?) {
2829
super.onCreate(savedInstanceState)
2930
viewModel.userId = arguments?.getInt(USER_ID)
30-
viewModel.currentPage =
31-
arguments?.getSerializable(PAGE_EXTRA) as ProfileViewModel.ProfilePage
31+
viewModel.currentPage = arguments?.serializable(PAGE_EXTRA)
32+
?: ProfileViewModel.ProfilePage.QUESTIONS
3233
}
3334

3435
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {

app/src/main/kotlin/me/tylerbwong/stack/ui/questions/QuestionsActivity.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import me.tylerbwong.stack.api.model.WEEK
2323
import me.tylerbwong.stack.databinding.ActivityQuestionsBinding
2424
import me.tylerbwong.stack.ui.BaseActivity
2525
import me.tylerbwong.stack.ui.utils.ViewHolderItemDecoration
26+
import me.tylerbwong.stack.ui.utils.serializable
2627
import me.tylerbwong.stack.ui.utils.showSnackbar
2728

2829
@AndroidEntryPoint
@@ -45,7 +46,7 @@ class QuestionsActivity : BaseActivity<ActivityQuestionsBinding>(
4546
finish()
4647
}
4748

48-
val page = intent.getSerializableExtra(PAGE_EXTRA) as QuestionPage
49+
val page = intent.serializable<QuestionPage>(PAGE_EXTRA) ?: QuestionPage.LINKED
4950

5051
setUpPageForKey(page, key)
5152

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package me.tylerbwong.stack.ui.utils
2+
3+
import android.os.Build
4+
import android.os.Bundle
5+
import java.io.Serializable
6+
7+
inline fun <reified T : Serializable> Bundle.serializable(key: String): T? = when {
8+
Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU -> getSerializable(key, T::class.java)
9+
else -> @Suppress("DEPRECATION") getSerializable(key) as? T
10+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package me.tylerbwong.stack.ui.utils
2+
3+
import android.content.Intent
4+
import android.os.Build
5+
import java.io.Serializable
6+
7+
inline fun <reified T : Serializable> Intent.serializable(key: String): T? = when {
8+
Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU -> getSerializableExtra(key, T::class.java)
9+
else -> @Suppress("DEPRECATION") getSerializableExtra(key) as? T
10+
}

0 commit comments

Comments
 (0)