From 45a5894c95d3687f8359ce32c75100a154cd4f37 Mon Sep 17 00:00:00 2001 From: Laurent Date: Wed, 24 Apr 2019 15:45:27 +0200 Subject: [PATCH] Does not launch comparison report with less than 2 groups --- .../android/ui/fragment/ReportsFragment.kt | 9 +++++++++ app/src/main/res/layout/layout_legend_default.xml | 4 ++-- app/src/main/res/values/strings.xml | 1 + 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportsFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportsFragment.kt index ed50ecb4..8e35f4b4 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportsFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportsFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Toast import androidx.recyclerview.widget.LinearLayoutManager import io.realm.Realm import kotlinx.android.synthetic.main.fragment_stats.* @@ -14,6 +15,7 @@ import net.pokeranalytics.android.R import net.pokeranalytics.android.calculus.Calculator import net.pokeranalytics.android.calculus.Stat import net.pokeranalytics.android.model.Criteria +import net.pokeranalytics.android.model.combined import net.pokeranalytics.android.ui.activity.ReportDetailsActivity import net.pokeranalytics.android.ui.adapter.RowRepresentableAdapter import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate @@ -105,6 +107,11 @@ class ReportsFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSour */ private fun launchComputation(criteria: List, reportName: String) { + if (criteria.combined().size < 2) { + Toast.makeText(context, R.string.less_then_2_values_for_comparison, Toast.LENGTH_LONG).show() + return + } + showLoader() GlobalScope.launch { @@ -114,6 +121,7 @@ class ReportsFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSour val requiredStats: List = listOf(Stat.NET_RESULT) val options = Calculator.Options(evolutionValues = Calculator.Options.EvolutionValues.STANDARD, stats = requiredStats) + val report = Calculator.computeStatsWithComparators(realm, criteria = criteria, options = options) Timber.d("launchComputation: ${System.currentTimeMillis() - startDate.time}ms") @@ -124,6 +132,7 @@ class ReportsFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSour ReportDetailsActivity.newInstance(requireContext(), report, reportName) } } + realm.close() } } diff --git a/app/src/main/res/layout/layout_legend_default.xml b/app/src/main/res/layout/layout_legend_default.xml index e5684cbf..71594785 100644 --- a/app/src/main/res/layout/layout_legend_default.xml +++ b/app/src/main/res/layout/layout_legend_default.xml @@ -11,8 +11,8 @@ android:background="@color/green_header" android:layout_width="0dp" android:layout_height="0dp" - app:layout_constraintBottom_toTopOf="@+id/counter" - android:layout_marginBottom="4dp" + app:layout_constraintBottom_toBottomOf="@+id/stat1Value" + android:layout_marginBottom="0dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 1a1952fd..286f075c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -9,6 +9,7 @@ Variant Line Initial Value + There is less than two values to compare! Please change your habits :)