Custom Report: fixed deletion + added hint + show keyboard on save

dev
Laurent 7 years ago
parent 75bcc515bd
commit 83fcd5f6aa
  1. 2
      app/src/main/java/net/pokeranalytics/android/PokerAnalyticsApplication.kt
  2. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportsFragment.kt
  3. 29
      app/src/main/java/net/pokeranalytics/android/ui/fragment/report/AbstractReportFragment.kt

@ -61,7 +61,7 @@ class PokerAnalyticsApplication : Application() {
if (BuildConfig.DEBUG) {
Timber.d("UserPreferences.defaultCurrency: ${UserDefaults.currency.symbol}")
// this.createFakeSessions()
this.createFakeSessions()
}

@ -77,7 +77,7 @@ class ReportsFragment : DeletableItemFragment(), StaticRowRepresentableDataSourc
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == RequestCode.NEW_REPORT.ordinal && resultCode == Activity.RESULT_OK) {
if (requestCode == RequestCode.NEW_REPORT.value && resultCode == Activity.RESULT_OK) {
ReportCreationActivity.options?.let { options ->
this.launchReportWithOptions(options, options.getName(requireContext()))
}

@ -2,10 +2,10 @@ package net.pokeranalytics.android.ui.fragment.report
import android.os.Bundle
import android.view.View
import android.view.WindowManager
import android.widget.EditText
import androidx.appcompat.app.AlertDialog
import kotlinx.android.synthetic.main.fragment_progress_report.*
import net.pokeranalytics.android.R
import net.pokeranalytics.android.calculus.Report
import net.pokeranalytics.android.model.CustomFieldCriteria
import net.pokeranalytics.android.model.LiveData
@ -13,6 +13,7 @@ import net.pokeranalytics.android.model.realm.ReportSetup
import net.pokeranalytics.android.ui.fragment.data.DataManagerFragment
import net.pokeranalytics.android.util.extensions.findById
abstract class AbstractReportFragment : DataManagerFragment() {
private lateinit var _selectedReport: Report
@ -54,20 +55,35 @@ abstract class AbstractReportFragment : DataManagerFragment() {
// Inflate and set the layout for the dialog
// Pass null as the parent view because its going in the dialog layout
val view = inflater.inflate(R.layout.dialog_edit_text, null)
val nameEditText = view.findViewById<EditText>(R.id.reportName)
val view = inflater.inflate(net.pokeranalytics.android.R.layout.dialog_edit_text, null)
val nameEditText = view.findViewById<EditText>(net.pokeranalytics.android.R.id.reportName)
this.primaryKey?.let { id ->
val reportSetup = getRealm().findById<ReportSetup>(id)
reportSetup?.let {
nameEditText.hint = it.name
}
}
builder.setView(view)
// Add action buttons
.setPositiveButton(R.string.save) { dialog, _ ->
.setPositiveButton(net.pokeranalytics.android.R.string.save) { dialog, _ ->
saveReport(nameEditText.text.toString())
dialog.dismiss()
}
.setNegativeButton(R.string.cancel) { dialog, _ ->
.setNegativeButton(net.pokeranalytics.android.R.string.cancel) { dialog, _ ->
dialog.cancel()
}
val dialog = builder.create()
dialog.setOnShowListener {
nameEditText.requestFocus()
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE)
}
dialog.show()
// dialog.window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE)
} ?: throw IllegalStateException("Activity cannot be null")
@ -92,7 +108,8 @@ abstract class AbstractReportFragment : DataManagerFragment() {
}
}
options.filterId?.let { id -> String
options.filterId?.let { id ->
String
rs.filter = realm.findById(id)
}

Loading…
Cancel
Save