Introduce mavericks-compose and room list module - WIP

This commit is contained in:
Benoit Marty
2022-10-11 16:18:42 +02:00
parent 98eeb08772
commit 8ce670995a
18 changed files with 328 additions and 43 deletions

View File

@@ -1,6 +1,7 @@
package io.element.android.x
import android.app.Application
import com.airbnb.mvrx.Mavericks
import io.element.android.x.sdk.matrix.MatrixInstance
class ElementXApplication : Application() {
@@ -8,5 +9,6 @@ class ElementXApplication : Application() {
override fun onCreate() {
super.onCreate()
MatrixInstance.init(this)
Mavericks.initialize(this)
}
}

View File

@@ -3,14 +3,30 @@ package io.element.android.x
import android.content.Intent
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.result.contract.ActivityResultContracts
import io.element.android.x.ui.screen.login.LoginActivity
import io.element.android.x.ui.screen.login.RoomListActivity
class MainActivity : ComponentActivity() {
private val launcher =
registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
if (it.resultCode == RESULT_OK) {
// Launch the room Activity and finish
startRoomActivityAndFinish()
} else {
finish()
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Just start the LoginActivity for now.
// TODO if a session exist, start the room list
startActivity(Intent(this, LoginActivity::class.java))
launcher.launch(Intent(this, LoginActivity::class.java))
}
private fun startRoomActivityAndFinish() {
startActivity(Intent(this, RoomListActivity::class.java))
finish()
}
}