Migrate Login to new architecture and make some adjustments
This commit is contained in:
parent
f4ac368d07
commit
9ed208950e
25 changed files with 385 additions and 304 deletions
|
|
@ -29,8 +29,6 @@ import androidx.compose.ui.text.font.FontWeight
|
|||
import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import com.airbnb.mvrx.compose.collectAsState
|
||||
import com.airbnb.mvrx.compose.mavericksViewModel
|
||||
import com.google.accompanist.pager.ExperimentalPagerApi
|
||||
import com.google.accompanist.pager.HorizontalPager
|
||||
import com.google.accompanist.pager.HorizontalPagerIndicator
|
||||
|
|
@ -39,25 +37,9 @@ import io.element.android.x.designsystem.components.VectorButton
|
|||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@Composable
|
||||
fun OnBoardingScreen(
|
||||
viewModel: OnBoardingViewModel = mavericksViewModel(),
|
||||
onSignUp: () -> Unit = { },
|
||||
onSignIn: () -> Unit = { },
|
||||
) {
|
||||
val state: OnBoardingViewState by viewModel.collectAsState()
|
||||
OnBoardingContent(
|
||||
state,
|
||||
onPageChanged = viewModel::onPageChanged,
|
||||
onSignUp = onSignUp,
|
||||
onSignIn = onSignIn,
|
||||
)
|
||||
}
|
||||
|
||||
@OptIn(ExperimentalPagerApi::class)
|
||||
@Composable
|
||||
fun OnBoardingContent(
|
||||
state: OnBoardingViewState,
|
||||
fun OnBoardingScreen(
|
||||
modifier: Modifier = Modifier,
|
||||
onPageChanged: (Int) -> Unit = {},
|
||||
onSignUp: () -> Unit = {},
|
||||
|
|
|
|||
|
|
@ -1,15 +0,0 @@
|
|||
package io.element.android.x.features.onboarding
|
||||
|
||||
import com.airbnb.mvrx.MavericksViewModel
|
||||
|
||||
class OnBoardingViewModel(initialState: OnBoardingViewState) :
|
||||
MavericksViewModel<OnBoardingViewState>(initialState) {
|
||||
|
||||
fun onPageChanged(page: Int) {
|
||||
setState {
|
||||
copy(
|
||||
currentPage = page,
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
package io.element.android.x.features.onboarding
|
||||
|
||||
import com.airbnb.mvrx.MavericksState
|
||||
|
||||
data class OnBoardingViewState(
|
||||
val currentPage: Int = 0,
|
||||
) : MavericksState
|
||||
|
|
@ -6,6 +6,7 @@ import io.element.android.x.element.resources.R as ElementR
|
|||
class SplashCarouselStateFactory {
|
||||
fun create(): SplashCarouselState {
|
||||
val lightTheme = true
|
||||
|
||||
fun background(@DrawableRes lightDrawable: Int) =
|
||||
if (lightTheme) lightDrawable else R.drawable.bg_color_background
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue