forked from home-assistant/android
/
WelcomeFragment.kt
executable file
·59 lines (54 loc) · 1.91 KB
/
WelcomeFragment.kt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
package io.homeassistant.companion.android.onboarding
import android.os.Build
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.compose.ui.platform.ComposeView
import androidx.fragment.app.Fragment
import com.google.android.material.composethemeadapter.MdcTheme
import io.homeassistant.companion.android.R
import io.homeassistant.companion.android.onboarding.discovery.DiscoveryFragment
import io.homeassistant.companion.android.onboarding.manual.ManualSetupFragment
import io.homeassistant.companion.android.onboarding.views.WelcomeView
class WelcomeFragment : Fragment() {
companion object {
fun newInstance(): WelcomeFragment {
return WelcomeFragment()
}
}
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View {
return ComposeView(requireContext()).apply {
setContent {
MdcTheme {
WelcomeView(
onContinue = { welcomeNavigation() }
)
}
}
}
}
private fun welcomeNavigation() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
val discoveryFragment = DiscoveryFragment.newInstance()
discoveryFragment.retainInstance = true
parentFragmentManager
.beginTransaction()
.replace(R.id.content, discoveryFragment)
.addToBackStack("Welcome")
.commit()
} else {
val manualFragment = ManualSetupFragment.newInstance()
manualFragment.retainInstance = true
parentFragmentManager
.beginTransaction()
.replace(R.id.content, manualFragment)
.addToBackStack("Welcome")
.commit()
}
}
}