@@ -22,10 +22,12 @@ import io.zenandroid.onlinego.data.model.local.GameNotificationWithDetails
2222import io.zenandroid.onlinego.data.model.local.HistoricGamesMetadata
2323import io.zenandroid.onlinego.data.model.local.InitialState
2424import io.zenandroid.onlinego.data.model.local.Message
25+ import io.zenandroid.onlinego.data.model.local.PauseControl
2526import io.zenandroid.onlinego.data.model.local.Player
2627import io.zenandroid.onlinego.data.model.local.Score
2728import io.zenandroid.onlinego.data.model.ogs.JosekiPosition
2829import io.zenandroid.onlinego.data.model.ogs.Phase
30+ import io.zenandroid.onlinego.data.ogs.Pause
2931import kotlinx.coroutines.flow.Flow
3032
3133private const val MAX_ALLOWED_SQL_PARAMS = 999
@@ -223,12 +225,15 @@ abstract class GameDao {
223225 open fun updateClock (
224226 id : Long ,
225227 playerToMoveId : Long? ,
226- clock : Clock ? ) {
228+ clock : Clock ? ,
229+ pause : Pause ? ) {
227230 getGame(id).blockingGet().let {
228231 update(it.copy(
229232 undoRequested = if (it.playerToMoveId != playerToMoveId) null else it.undoRequested,
230233 playerToMoveId = playerToMoveId,
231234 clock = clock,
235+ pauseControl = (it.pauseControl ? : PauseControl ())
236+ .copy(pausedByThirdParty = pause?.paused),
232237 pausedSince = when (clock?.newPausedState) {
233238 true -> clock.newPausedSince
234239 false -> null
@@ -429,4 +434,4 @@ abstract class GameDao {
429434 updateChatMetadata(ChatMetadata (0 , messages.last().chatId))
430435 }
431436 }
432- }
437+ }
0 commit comments