Remove other useless lazy wrapping.

This commit is contained in:
Benoit Marty 2023-11-02 16:28:50 +01:00
parent aeb4c6eba0
commit c3cf49a5e4
4 changed files with 25 additions and 32 deletions

View file

@ -27,20 +27,18 @@ import io.element.android.libraries.usersearch.api.UserRepository
import javax.inject.Inject import javax.inject.Inject
class AddPeoplePresenter @Inject constructor( class AddPeoplePresenter @Inject constructor(
private val userListPresenterFactory: UserListPresenter.Factory, userListPresenterFactory: UserListPresenter.Factory,
private val userRepository: UserRepository, userRepository: UserRepository,
private val dataStore: CreateRoomDataStore, dataStore: CreateRoomDataStore,
) : Presenter<UserListState> { ) : Presenter<UserListState> {
private val userListPresenter by lazy { private val userListPresenter = userListPresenterFactory.create(
userListPresenterFactory.create( UserListPresenterArgs(
UserListPresenterArgs( selectionMode = SelectionMode.Multiple,
selectionMode = SelectionMode.Multiple, ),
), userRepository,
userRepository, dataStore.selectedUserListDataStore,
dataStore.selectedUserListDataStore, )
)
}
@Composable @Composable
override fun present(): UserListState { override fun present(): UserListState {

View file

@ -40,23 +40,21 @@ import kotlinx.coroutines.launch
import javax.inject.Inject import javax.inject.Inject
class CreateRoomRootPresenter @Inject constructor( class CreateRoomRootPresenter @Inject constructor(
private val presenterFactory: UserListPresenter.Factory, presenterFactory: UserListPresenter.Factory,
private val userRepository: UserRepository, userRepository: UserRepository,
private val userListDataStore: UserListDataStore, userListDataStore: UserListDataStore,
private val matrixClient: MatrixClient, private val matrixClient: MatrixClient,
private val analyticsService: AnalyticsService, private val analyticsService: AnalyticsService,
private val buildMeta: BuildMeta, private val buildMeta: BuildMeta,
) : Presenter<CreateRoomRootState> { ) : Presenter<CreateRoomRootState> {
private val presenter by lazy { private val presenter = presenterFactory.create(
presenterFactory.create( UserListPresenterArgs(
UserListPresenterArgs( selectionMode = SelectionMode.Single,
selectionMode = SelectionMode.Single, ),
), userRepository,
userRepository, userListDataStore,
userListDataStore, )
)
}
@Composable @Composable
override fun present(): CreateRoomRootState { override fun present(): CreateRoomRootState {

View file

@ -32,18 +32,16 @@ import io.element.android.libraries.di.AppScope
class NotificationsOptInNode @AssistedInject constructor( class NotificationsOptInNode @AssistedInject constructor(
@Assisted buildContext: BuildContext, @Assisted buildContext: BuildContext,
@Assisted plugins: List<Plugin>, @Assisted plugins: List<Plugin>,
private val presenterFactory: NotificationsOptInPresenter.Factory, presenterFactory: NotificationsOptInPresenter.Factory,
) : Node(buildContext, plugins = plugins) { ) : Node(buildContext, plugins = plugins) {
interface Callback: NodeInputs { interface Callback : NodeInputs {
fun onNotificationsOptInFinished() fun onNotificationsOptInFinished()
} }
private val callback = inputs<Callback>() private val callback = inputs<Callback>()
private val presenter: NotificationsOptInPresenter by lazy { private val presenter: NotificationsOptInPresenter = presenterFactory.create(callback)
presenterFactory.create(callback)
}
@Composable @Composable
override fun View(modifier: Modifier) { override fun View(modifier: Modifier) {

View file

@ -34,7 +34,7 @@ import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
class NotificationsOptInPresenter @AssistedInject constructor( class NotificationsOptInPresenter @AssistedInject constructor(
private val permissionsPresenterFactory: PermissionsPresenter.Factory, permissionsPresenterFactory: PermissionsPresenter.Factory,
@Assisted private val callback: NotificationsOptInNode.Callback, @Assisted private val callback: NotificationsOptInNode.Callback,
private val appCoroutineScope: CoroutineScope, private val appCoroutineScope: CoroutineScope,
private val permissionStateProvider: PermissionStateProvider, private val permissionStateProvider: PermissionStateProvider,
@ -46,14 +46,13 @@ class NotificationsOptInPresenter @AssistedInject constructor(
fun create(callback: NotificationsOptInNode.Callback): NotificationsOptInPresenter fun create(callback: NotificationsOptInNode.Callback): NotificationsOptInPresenter
} }
private val postNotificationPermissionsPresenter by lazy { private val postNotificationPermissionsPresenter: PermissionsPresenter =
// Ask for POST_NOTIFICATION PERMISSION on Android 13+ // Ask for POST_NOTIFICATION PERMISSION on Android 13+
if (buildVersionSdkIntProvider.isAtLeast(Build.VERSION_CODES.TIRAMISU)) { if (buildVersionSdkIntProvider.isAtLeast(Build.VERSION_CODES.TIRAMISU)) {
permissionsPresenterFactory.create(Manifest.permission.POST_NOTIFICATIONS) permissionsPresenterFactory.create(Manifest.permission.POST_NOTIFICATIONS)
} else { } else {
NoopPermissionsPresenter() NoopPermissionsPresenter()
} }
}
@Composable @Composable
override fun present(): NotificationsOptInState { override fun present(): NotificationsOptInState {