|
|
|
@ -1,6 +1,7 @@
|
|
|
|
|
package com.example.mathseduc
|
|
|
|
|
|
|
|
|
|
import android.content.Intent
|
|
|
|
|
import android.content.res.Configuration
|
|
|
|
|
import android.os.Bundle
|
|
|
|
|
import android.widget.Toast
|
|
|
|
|
import androidx.activity.ComponentActivity
|
|
|
|
@ -17,23 +18,23 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
|
|
|
|
import androidx.compose.ui.Alignment
|
|
|
|
|
import androidx.compose.ui.Modifier
|
|
|
|
|
import androidx.compose.ui.graphics.Color
|
|
|
|
|
import androidx.compose.ui.platform.LocalConfiguration
|
|
|
|
|
import androidx.compose.ui.platform.LocalContext
|
|
|
|
|
import androidx.compose.ui.res.painterResource
|
|
|
|
|
import androidx.compose.ui.text.input.KeyboardType
|
|
|
|
|
import androidx.compose.ui.text.input.PasswordVisualTransformation
|
|
|
|
|
import androidx.compose.ui.tooling.preview.Preview
|
|
|
|
|
import androidx.compose.ui.unit.dp
|
|
|
|
|
import androidx.core.view.WindowCompat
|
|
|
|
|
import androidx.core.view.WindowInsetsCompat
|
|
|
|
|
import com.example.mathseduc.controllers.ControllerPlayer
|
|
|
|
|
import com.example.mathseduc.ui.theme.MathsEducTheme
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ConnexionPlayerActivity : ComponentActivity() {
|
|
|
|
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
|
|
|
super.onCreate(savedInstanceState)
|
|
|
|
|
setContent {
|
|
|
|
|
MathsEducTheme {
|
|
|
|
|
ConnexionPlayerContent(activity = this@ConnexionPlayerActivity)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -46,9 +47,18 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
var showDialog by rememberSaveable { mutableStateOf(false) }
|
|
|
|
|
|
|
|
|
|
val context = LocalContext.current
|
|
|
|
|
val isPortrait = LocalConfiguration.current.orientation == Configuration.ORIENTATION_PORTRAIT
|
|
|
|
|
|
|
|
|
|
WindowCompat.setDecorFitsSystemWindows(activity.window, false)
|
|
|
|
|
|
|
|
|
|
val windowInsetsController = remember {
|
|
|
|
|
WindowCompat.getInsetsController(activity.window, activity.window.decorView)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Hide the status bar
|
|
|
|
|
windowInsetsController?.hide(WindowInsetsCompat.Type.statusBars())
|
|
|
|
|
|
|
|
|
|
Column(modifier = Modifier.fillMaxSize()) {
|
|
|
|
|
TopAppBar(
|
|
|
|
|
TopAppBar(
|
|
|
|
|
colors = TopAppBarDefaults.topAppBarColors(
|
|
|
|
|
containerColor = Color.Transparent,
|
|
|
|
|
),
|
|
|
|
@ -69,9 +79,8 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
)
|
|
|
|
|
Column(
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.fillMaxWidth()
|
|
|
|
|
.padding(16.dp)
|
|
|
|
|
.weight(1f),
|
|
|
|
|
.fillMaxSize()
|
|
|
|
|
.padding(16.dp,0.dp),
|
|
|
|
|
verticalArrangement = Arrangement.Center,
|
|
|
|
|
horizontalAlignment = Alignment.CenterHorizontally
|
|
|
|
|
) {
|
|
|
|
@ -79,19 +88,19 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
Image(
|
|
|
|
|
painter = painterResource(id = R.drawable.logo),
|
|
|
|
|
contentDescription = null,
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.size(160.dp, 130.dp)
|
|
|
|
|
modifier = Modifier.padding(0.dp, 2.dp, 0.dp)
|
|
|
|
|
.size(if (isPortrait) 120.dp else 90.dp)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
Spacer(modifier = Modifier.height(16.dp))
|
|
|
|
|
Spacer(modifier = Modifier.height(if (isPortrait) 16.dp else 4.dp))
|
|
|
|
|
|
|
|
|
|
OutlinedTextField(
|
|
|
|
|
value = nickname,
|
|
|
|
|
onValueChange = { nickname = it },
|
|
|
|
|
label = { Text("Nickname") },
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.fillMaxWidth()
|
|
|
|
|
.padding(8.dp),
|
|
|
|
|
.fillMaxWidth(if (isPortrait) 1f else 0.5f)
|
|
|
|
|
.padding(if (isPortrait) 8.dp else 8.dp,3.dp),
|
|
|
|
|
colors = OutlinedTextFieldDefaults.colors(
|
|
|
|
|
focusedContainerColor = Color.White,
|
|
|
|
|
unfocusedContainerColor = Color.White,
|
|
|
|
@ -110,7 +119,7 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
keyboardType = KeyboardType.Password
|
|
|
|
|
),
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.fillMaxWidth()
|
|
|
|
|
.fillMaxWidth(if (isPortrait) 1f else 0.5f)
|
|
|
|
|
.padding(8.dp),
|
|
|
|
|
colors = OutlinedTextFieldDefaults.colors(
|
|
|
|
|
focusedContainerColor = Color.White,
|
|
|
|
@ -121,7 +130,7 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
shape = RoundedCornerShape(8.dp)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
Spacer(modifier = Modifier.height(16.dp))
|
|
|
|
|
Spacer(modifier = Modifier.height(if (isPortrait) 16.dp else 7.dp))
|
|
|
|
|
|
|
|
|
|
Button(
|
|
|
|
|
onClick = {
|
|
|
|
@ -136,18 +145,18 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.fillMaxWidth()
|
|
|
|
|
.width(230.dp)
|
|
|
|
|
.height(48.dp)
|
|
|
|
|
) {
|
|
|
|
|
Text("Login")
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Spacer(modifier = Modifier.height(16.dp))
|
|
|
|
|
Spacer(modifier = Modifier.height(if (isPortrait) 16.dp else 10.dp))
|
|
|
|
|
|
|
|
|
|
Button(
|
|
|
|
|
onClick = { showDialog = true },
|
|
|
|
|
modifier = Modifier
|
|
|
|
|
.fillMaxWidth()
|
|
|
|
|
.width(230.dp)
|
|
|
|
|
.height(48.dp),
|
|
|
|
|
colors = ButtonDefaults.buttonColors(
|
|
|
|
|
containerColor = Color(0xFF40E0D0))
|
|
|
|
@ -160,7 +169,7 @@ fun ConnexionPlayerContent(activity: ConnexionPlayerActivity) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Composable
|
|
|
|
|
fun RegisterDialog(onDismiss: () -> Unit) {
|
|
|
|
@ -229,7 +238,5 @@ fun RegisterDialog(onDismiss: () -> Unit) {
|
|
|
|
|
@Composable
|
|
|
|
|
fun ConnexionPlayerPreview() {
|
|
|
|
|
val fakeActivity = ConnexionPlayerActivity()
|
|
|
|
|
MathsEducTheme {
|
|
|
|
|
ConnexionPlayerContent(activity = fakeActivity)
|
|
|
|
|
}
|
|
|
|
|
ConnexionPlayerContent(activity = fakeActivity)
|
|
|
|
|
}
|