Request review on victory dialog closed. Reformat code.
All checks were successful
Build Android / build (push) Successful in 9m12s

closes: #51
This commit is contained in:
2023-09-23 13:41:26 +02:00
parent c968d2ee91
commit 44246e329e
5 changed files with 23 additions and 27 deletions

View File

@@ -43,9 +43,7 @@ import androidx.navigation.compose.rememberNavController
import com.google.accompanist.systemuicontroller.rememberSystemUiController import com.google.accompanist.systemuicontroller.rememberSystemUiController
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import me.zobrist.tichucounter.data.entity.Game
import me.zobrist.tichucounter.domain.DrawerItem import me.zobrist.tichucounter.domain.DrawerItem
import me.zobrist.tichucounter.domain.KeepScreenOn import me.zobrist.tichucounter.domain.KeepScreenOn
import me.zobrist.tichucounter.domain.Language import me.zobrist.tichucounter.domain.Language
@@ -88,7 +86,7 @@ class MainActivity : AppCompatActivity() {
private val settingsViewModel: SettingsViewModel by viewModels() private val settingsViewModel: SettingsViewModel by viewModels()
private val mainViewModel: MainViewModel by viewModels() private val mainViewModel: MainViewModel by viewModels()
private var newGame: Game? = null private var requestReview: Boolean = false
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
@@ -115,13 +113,14 @@ class MainActivity : AppCompatActivity() {
} }
lifecycleScope.launch { lifecycleScope.launch {
repository.getNewGameStarted().collect{ settingsAdapter.gameFinished.collect {
if(newGame == null) if (!requestReview) {
{ requestReview = true
newGame = it
return@collect return@collect
} }
reviewService.request() if (it) {
reviewService.request()
}
} }
} }

View File

@@ -14,7 +14,6 @@ import me.zobrist.tichucounter.data.GameWithScores
import me.zobrist.tichucounter.data.RoundDao import me.zobrist.tichucounter.data.RoundDao
import me.zobrist.tichucounter.data.entity.Game import me.zobrist.tichucounter.data.entity.Game
import me.zobrist.tichucounter.data.entity.Round import me.zobrist.tichucounter.data.entity.Round
import me.zobrist.tichucounter.domain.KeepScreenOn
import java.util.Date import java.util.Date
import javax.inject.Inject import javax.inject.Inject
@@ -23,7 +22,8 @@ class GameRepository @Inject constructor(
private val roundDao: RoundDao private val roundDao: RoundDao
) { ) {
private var activeGame: Game = Game(true, "TeamA", "TeamB", Date(), Date()) var activeGame: Game = Game(true, "TeamA", "TeamB", Date(), Date())
private set
private val newGameFlow = MutableStateFlow(Game()) private val newGameFlow = MutableStateFlow(Game())
@@ -43,7 +43,7 @@ class GameRepository @Inject constructor(
withContext(Dispatchers.IO) { withContext(Dispatchers.IO) {
val id = gameDao.insert(Game(true, activeGame.nameA, activeGame.nameB, Date(), Date())) val id = gameDao.insert(Game(true, activeGame.nameA, activeGame.nameB, Date(), Date()))
setActive(id) setActive(id)
newGameFlow.value= gameDao.getGameById(id) newGameFlow.value = gameDao.getGameById(id)
} }
} }
@@ -140,8 +140,7 @@ class GameRepository @Inject constructor(
return gameDao.getDistinctTeamNames() return gameDao.getDistinctTeamNames()
} }
fun getNewGameStarted(): Flow<Game> fun getNewGameStarted(): Flow<Game> {
{
return newGameFlow return newGameFlow
} }
} }

View File

@@ -7,7 +7,6 @@ import androidx.compose.runtime.setValue
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import me.zobrist.tichucounter.data.entity.Game import me.zobrist.tichucounter.data.entity.Game
import me.zobrist.tichucounter.data.entity.Round import me.zobrist.tichucounter.data.entity.Round
@@ -52,8 +51,7 @@ class MainViewModel @Inject constructor(
viewModelScope.launch { viewModelScope.launch {
gameRepository.getNewGameStarted().collect { gameRepository.getNewGameStarted().collect {
if(newGame == null) if (newGame == null) {
{
newGame = it newGame = it
return@collect return@collect
} }

View File

@@ -6,12 +6,10 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue import androidx.compose.runtime.setValue
import androidx.compose.ui.focus.FocusRequester import androidx.compose.ui.focus.FocusRequester
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.asLiveData
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.Job import kotlinx.coroutines.Job
import kotlinx.coroutines.delay import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import me.zobrist.tichucounter.data.entity.Game import me.zobrist.tichucounter.data.entity.Game
import me.zobrist.tichucounter.data.entity.Round import me.zobrist.tichucounter.data.entity.Round
@@ -186,8 +184,7 @@ class CounterViewModel @Inject constructor(
buildTeamNameSuggestions() buildTeamNameSuggestions()
if (it.game.uid != lastGame?.uid) { if (it.game.uid != lastGame?.uid) {
if(lastGame != null) if (lastGame != null) {
{
settings.gameFinished.value = false settings.gameFinished.value = false
} }
lastGame = it.game lastGame = it.game
@@ -211,8 +208,7 @@ class CounterViewModel @Inject constructor(
} }
viewModelScope.launch { viewModelScope.launch {
settings.victoryPoints.collect { settings.victoryPoints.collect {
if(lastVictoryPoints == null) if (lastVictoryPoints == null) {
{
lastVictoryPoints = it lastVictoryPoints = it
return@collect return@collect
} }

View File

@@ -48,7 +48,6 @@ import androidx.compose.ui.Alignment.Companion.CenterVertically
import androidx.compose.ui.Alignment.Companion.TopEnd import androidx.compose.ui.Alignment.Companion.TopEnd
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.scale import androidx.compose.ui.draw.scale
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalDensity import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.text.style.TextOverflow
@@ -168,7 +167,9 @@ fun HistoryList(
if (it.game.active) { if (it.game.active) {
HistoryListItem( HistoryListItem(
it, it,
Modifier.animateItemPlacement().padding(2.dp) Modifier
.animateItemPlacement()
.padding(2.dp)
) )
} else { } else {
DismissibleHistoryListItem( DismissibleHistoryListItem(
@@ -268,7 +269,7 @@ fun DismissibleHistoryListItem(
Box( Box(
Modifier Modifier
.fillMaxSize() .fillMaxSize()
.padding(top=2.dp, bottom = 2.dp) .padding(top = 2.dp, bottom = 2.dp)
.background(color) .background(color)
.padding(horizontal = 10.dp), .padding(horizontal = 10.dp),
contentAlignment = alignment contentAlignment = alignment
@@ -278,13 +279,16 @@ fun DismissibleHistoryListItem(
horizontalAlignment = Alignment.CenterHorizontally horizontalAlignment = Alignment.CenterHorizontally
) { ) {
Icon( Icon(
icon, contentDescription = null, modifier = Modifier.scale(scale), tint = textColor icon,
contentDescription = null,
modifier = Modifier.scale(scale),
tint = textColor
) )
Text(text = text, color = textColor) Text(text = text, color = textColor)
} }
} }
}, dismissContent = { }, dismissContent = {
HistoryListItem(game = game, modifier= Modifier.padding(2.dp)) HistoryListItem(game = game, modifier = Modifier.padding(2.dp))
}) })
} }