diff --git a/app/src/main/java/net/pokeranalytics/android/PokerAnalyticsApplication.kt b/app/src/main/java/net/pokeranalytics/android/PokerAnalyticsApplication.kt index da13bd7e..8ec3a204 100644 --- a/app/src/main/java/net/pokeranalytics/android/PokerAnalyticsApplication.kt +++ b/app/src/main/java/net/pokeranalytics/android/PokerAnalyticsApplication.kt @@ -61,7 +61,7 @@ class PokerAnalyticsApplication : Application() { if (BuildConfig.DEBUG) { Timber.d("UserPreferences.defaultCurrency: ${UserDefaults.currency.symbol}") - this.createFakeSessions() +// this.createFakeSessions() } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/activity/ReportCreationActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/activity/ReportCreationActivity.kt index 3dce1fd9..064fdf36 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/activity/ReportCreationActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/activity/ReportCreationActivity.kt @@ -17,7 +17,7 @@ class ReportCreationActivity : PokerAnalyticsActivity() { fun newInstanceForResult(fragment: Fragment, context: Context) { val intent = Intent(context, ReportCreationActivity::class.java) - fragment.startActivityForResult(intent, RequestCode.NEW_REPORT.ordinal) + fragment.startActivityForResult(intent, RequestCode.NEW_REPORT.value) } } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/report/AbstractReportFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/report/AbstractReportFragment.kt index 12359f05..4a66a83c 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/report/AbstractReportFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/report/AbstractReportFragment.kt @@ -78,7 +78,7 @@ abstract class AbstractReportFragment : DataManagerFragment() { val dialog = builder.create() dialog.setOnShowListener { nameEditText.requestFocus() - dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE) + dialog.getWindow()?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE) } dialog.show() @@ -94,30 +94,34 @@ abstract class AbstractReportFragment : DataManagerFragment() { getRealm().executeTransaction { realm -> val rs = this.item as ReportSetup - - val options = this._selectedReport.options - rs.name = name - rs.display = options.display.ordinal - options.stats.forEach { - rs.statIds.add(it.uniqueIdentifier) - } - options.criterias.forEach { criteria -> - when (criteria) { - is CustomFieldCriteria -> rs.criteriaCustomFieldIds.add(criteria.customFieldId) - else -> rs.criteriaIds.add(criteria.uniqueIdentifier) + val firstSave = (this.primaryKey == null) + if (firstSave) { + val options = this._selectedReport.options + rs.name = name + rs.display = options.display.ordinal + options.stats.forEach { + rs.statIds.add(it.uniqueIdentifier) + } + options.criterias.forEach { criteria -> + when (criteria) { + is CustomFieldCriteria -> rs.criteriaCustomFieldIds.add(criteria.customFieldId) + else -> rs.criteriaIds.add(criteria.uniqueIdentifier) + } } - } - options.filterId?.let { id -> - String - rs.filter = realm.findById(id) + options.filterId?.let { id -> + rs.filter = realm.findById(id) + } + realm.copyToRealmOrUpdate(rs) + } else { + rs.name = name + realm.insertOrUpdate(rs) } - this.item = rs + this.primaryKey = rs.id this.deleteButtonShouldAppear = true toolbar.title = name - realm.copyToRealmOrUpdate(rs) } }