diff --git a/android/DartsScorecard/app/src/debug/res/values/keys.xml b/android/DartsScorecard/app/src/debug/res/values/keys.xml
index c6dd737e..ef628e72 100644
--- a/android/DartsScorecard/app/src/debug/res/values/keys.xml
+++ b/android/DartsScorecard/app/src/debug/res/values/keys.xml
@@ -5,4 +5,5 @@
ca-app-pub-3940256099942544/6300978111
ca-app-pub-3940256099942544/6300978111
ca-app-pub-3940256099942544/1033173712
+ ca-app-pub-3940256099942544/1033173712
\ No newline at end of file
diff --git a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01Animator.kt b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01Animator.kt
index 9f219535..3e6c5d61 100644
--- a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01Animator.kt
+++ b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01Animator.kt
@@ -5,11 +5,13 @@ import android.support.v4.view.ViewPager
import android.view.View
import android.view.ViewPropertyAnimator
import android.view.ViewTreeObserver
+import com.google.android.gms.ads.AdView
import kotlinx.android.synthetic.main.activity_play_01.view.*
import kotlinx.android.synthetic.main.play_01_score.view.*
import nl.entreco.dartsscorecard.base.widget.MaxHeightRecyclerView
import nl.entreco.dartsscorecard.databinding.ActivityPlay01Binding
import nl.entreco.dartsscorecard.play.live.LiveStatSlideAnimator
+import nl.entreco.dartsscorecard.play.live.LiveStatViewModel
import kotlin.math.max
import kotlin.math.sqrt
diff --git a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01ViewModel.kt b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01ViewModel.kt
index 1ca701b8..b0cbd24b 100644
--- a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01ViewModel.kt
+++ b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/Play01ViewModel.kt
@@ -88,6 +88,7 @@ class Play01ViewModel @Inject constructor(private val playGameUsecase: Play01Use
private fun onGameOk(request: Play01Request, response: Play01Response?,
revancheResponse: RevancheResponse?) {
this.request = request
+ this.masterCaller.play(MasterCallerRequest(start = true))
this.game = response?.game ?: revancheResponse!!.game
this.teams = response?.teams ?: revancheResponse!!.teams
val teamIds = response?.teamIds ?: revancheResponse!!.teamIds
diff --git a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/live/LiveStatViewModel.kt b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/live/LiveStatViewModel.kt
index 069d9d99..be789781 100644
--- a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/live/LiveStatViewModel.kt
+++ b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/live/LiveStatViewModel.kt
@@ -2,6 +2,7 @@ package nl.entreco.dartsscorecard.play.live
import android.databinding.ObservableArrayMap
import android.databinding.ObservableInt
+import nl.entreco.dartsscorecard.ad.AdViewModel
import nl.entreco.dartsscorecard.archive.ArchiveServiceLauncher
import nl.entreco.dartsscorecard.base.BaseViewModel
import nl.entreco.dartsscorecard.play.score.GameLoadedNotifier
diff --git a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/ScoreViewModel.kt b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/ScoreViewModel.kt
index 49ea66f1..952a9a1c 100644
--- a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/ScoreViewModel.kt
+++ b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/ScoreViewModel.kt
@@ -1,8 +1,10 @@
package nl.entreco.dartsscorecard.play.score
import android.databinding.ObservableArrayList
+import android.databinding.ObservableBoolean
import android.databinding.ObservableField
import android.databinding.ObservableInt
+import nl.entreco.dartsscorecard.ad.AdViewModel
import nl.entreco.dartsscorecard.base.BaseViewModel
import nl.entreco.domain.model.Next
import nl.entreco.domain.model.Score
@@ -23,7 +25,9 @@ class ScoreViewModel @Inject constructor(
private val fetchMatchDescriptionUsecase: FetchMatchDescriptionUsecase) : BaseViewModel(), GameLoadedNotifier, ScoreListener, PlayerListener {
val description = ObservableField("")
+ val firstTo = ObservableInt(0)
val numSets = ObservableInt(0)
+ val showSets = ObservableBoolean(true)
val teams = ObservableArrayList()
val currentTeam = ObservableInt()
val scores = ObservableArrayList()
@@ -38,6 +42,8 @@ class ScoreViewModel @Inject constructor(
this.teams.clear()
this.teams.addAll(teams)
this.numSets.set(info.numSets)
+ this.showSets.set(info.numSets > 1)
+ this.firstTo.set(if(info.numSets > 1) info.numSets else info.numLegs)
this.fetchMatchDescriptionUsecase.go({ response -> description.set(response.description.description) }, { /* TODO: Set default value */})
}
diff --git a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/TeamScoreViewModel.kt b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/TeamScoreViewModel.kt
index 82300e23..dbfdf904 100644
--- a/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/TeamScoreViewModel.kt
+++ b/android/DartsScorecard/app/src/main/java/nl/entreco/dartsscorecard/play/score/TeamScoreViewModel.kt
@@ -25,6 +25,7 @@ class TeamScoreViewModel(val team: Team, startScore: Score,
starter: Boolean) : BaseViewModel(), TeamScoreListener {
val finish = ObservableField("")
+ val showSets = ObservableBoolean(startScore.settings.numSets > 1)
val nineDarter = ObservableBoolean(false)
val started = ObservableBoolean(starter)
val scored = ObservableInt(0)
diff --git a/android/DartsScorecard/app/src/main/res/layout/include_main_ad.xml b/android/DartsScorecard/app/src/main/res/layout/include_main_ad.xml
new file mode 100644
index 00000000..67991920
--- /dev/null
+++ b/android/DartsScorecard/app/src/main/res/layout/include_main_ad.xml
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/DartsScorecard/app/src/main/res/layout/include_setup_ad.xml b/android/DartsScorecard/app/src/main/res/layout/include_setup_ad.xml
index 1d6ea385..6c51fcb7 100644
--- a/android/DartsScorecard/app/src/main/res/layout/include_setup_ad.xml
+++ b/android/DartsScorecard/app/src/main/res/layout/include_setup_ad.xml
@@ -6,7 +6,6 @@
tools:showIn="@layout/activity_setup_01">
-
diff --git a/android/DartsScorecard/app/src/main/res/layout/play_01_main.xml b/android/DartsScorecard/app/src/main/res/layout/play_01_main.xml
index 9f1e103c..c7895961 100644
--- a/android/DartsScorecard/app/src/main/res/layout/play_01_main.xml
+++ b/android/DartsScorecard/app/src/main/res/layout/play_01_main.xml
@@ -112,6 +112,15 @@
android:text="@string/version"
android:textColor="#aaffffff" />
+
+
+
+
+
+
+
+
+
diff --git a/android/DartsScorecard/app/src/main/res/layout/play_01_score.xml b/android/DartsScorecard/app/src/main/res/layout/play_01_score.xml
index 8eae53f5..e50adb92 100644
--- a/android/DartsScorecard/app/src/main/res/layout/play_01_score.xml
+++ b/android/DartsScorecard/app/src/main/res/layout/play_01_score.xml
@@ -35,7 +35,7 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="@dimen/score_name_w"
- android:text="@{@string/first_to(viewModel.numSets)}" />
+ android:text="@{@string/first_to(viewModel.firstTo)}" />
+ android:text="@string/set"
+ app:showIf="@{viewModel.showSets}" />
+
\ No newline at end of file
diff --git a/android/DartsScorecard/app/src/main/res/layout/team_score_view.xml b/android/DartsScorecard/app/src/main/res/layout/team_score_view.xml
index 8c61419c..85d33b69 100644
--- a/android/DartsScorecard/app/src/main/res/layout/team_score_view.xml
+++ b/android/DartsScorecard/app/src/main/res/layout/team_score_view.xml
@@ -62,6 +62,7 @@
android:layout_height="match_parent"
android:layout_weight="@dimen/score_leg_w"
app:score="@{viewModel.score.set}"
+ app:showIf="@{viewModel.showSets}"
tools:text="1" />
ca-app-pub-3793327349392749/2238054293
ca-app-pub-3793327349392749/3337437992
ca-app-pub-3793327349392749/9019610403
+ ca-app-pub-3793327349392749/2121840152
\ No newline at end of file
diff --git a/android/DartsScorecard/app/src/test/java/nl/entreco/dartsscorecard/play/Play01ViewModelMasterCallerTest.kt b/android/DartsScorecard/app/src/test/java/nl/entreco/dartsscorecard/play/Play01ViewModelMasterCallerTest.kt
index de04eb7f..f81511d2 100644
--- a/android/DartsScorecard/app/src/test/java/nl/entreco/dartsscorecard/play/Play01ViewModelMasterCallerTest.kt
+++ b/android/DartsScorecard/app/src/test/java/nl/entreco/dartsscorecard/play/Play01ViewModelMasterCallerTest.kt
@@ -2,10 +2,7 @@ package nl.entreco.dartsscorecard.play
import android.view.Menu
import android.view.MenuItem
-import com.nhaarman.mockito_kotlin.any
-import com.nhaarman.mockito_kotlin.argumentCaptor
-import com.nhaarman.mockito_kotlin.verify
-import com.nhaarman.mockito_kotlin.whenever
+import com.nhaarman.mockito_kotlin.*
import nl.entreco.dartsscorecard.R
import nl.entreco.dartsscorecard.ad.AdViewModel
import nl.entreco.dartsscorecard.base.DialogHelper
@@ -113,6 +110,8 @@ class Play01ViewModelMasterCallerTest {
whenever(mockGame.next).thenReturn(Next(State.NORMAL, Team(arrayOf(player)), 0, player, score))
verify(mockPlayGameUsecase).loadGameAndStart(any(), doneCaptor.capture(), any())
doneCaptor.firstValue.invoke(Play01Response(mockGame, ScoreSettings(501, 1, 1, 0), emptyArray(), "1"))
+ verify(mockMasterCaller).play(any())
+ reset(mockMasterCaller)
}
private fun whenSubmittingTurn(turn: Turn) {
diff --git a/android/DartsScorecard/scripts/dependencies.gradle b/android/DartsScorecard/scripts/dependencies.gradle
index 03946967..4b951909 100644
--- a/android/DartsScorecard/scripts/dependencies.gradle
+++ b/android/DartsScorecard/scripts/dependencies.gradle
@@ -35,7 +35,7 @@ ext.versionName = { ->
ext {
kotlinVersion = '1.2.61'
- gradleVersion = '3.2.0-beta05'
+ gradleVersion = '3.2.1'
gmsVersion = '4.0.1'
dexCountVersion = '0.8.2'
detektVersion = '1.0.0.RC7'