diff --git a/app/build.gradle b/app/build.gradle index 4d84b548..ad79a52f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -78,7 +78,7 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" // Android - implementation 'androidx.appcompat:appcompat:1.0.2' + implementation 'androidx.appcompat:appcompat:1.1.0-rc01' implementation 'androidx.core:core-ktx:1.2.0-alpha02' implementation 'com.google.android.material:material:1.0.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' diff --git a/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt b/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt index f72d90b2..c76ec849 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/activity/components/PokerAnalyticsActivity.kt @@ -73,7 +73,7 @@ open class PokerAnalyticsActivity : AppCompatActivity() { } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { + override fun onOptionsItemSelected(item: MenuItem): Boolean { item?.let { if (it.itemId == android.R.id.home) { onBackPressed() diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/BankrollDetailsFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/BankrollDetailsFragment.kt index bdae834e..9e3df5f8 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/BankrollDetailsFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/BankrollDetailsFragment.kt @@ -72,9 +72,9 @@ class BankrollDetailsFragment : RealmFragment(), StaticRowRepresentableDataSourc } } - override fun onCreateOptionsMenu(menu: Menu?, inflater: MenuInflater?) { - menu?.clear() - inflater?.inflate(R.menu.toolbar_comparison_chart, menu) // TODO R.menu.toolbar_comparison_chart? + override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { + menu.clear() + inflater.inflate(R.menu.toolbar_comparison_chart, menu) // TODO R.menu.toolbar_comparison_chart? this.bankrollDetailsMenu = menu updateMenuUI() super.onCreateOptionsMenu(menu, inflater) @@ -197,8 +197,8 @@ class BankrollDetailsFragment : RealmFragment(), StaticRowRepresentableDataSourc } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - when (item?.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.settings -> editBankroll() } return true diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/FeedFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/FeedFragment.kt index ac716528..1011d7d9 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/FeedFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/FeedFragment.kt @@ -4,7 +4,6 @@ import android.app.Activity.RESULT_OK import android.content.Intent import android.os.Bundle import android.view.* -import android.widget.Toast import androidx.core.app.ActivityOptionsCompat import androidx.core.view.isVisible import androidx.interpolator.view.animation.FastOutSlowInInterpolator @@ -92,18 +91,15 @@ class FeedFragment : FilterableFragment(), RowRepresentableDelegate { return inflater.inflate(R.layout.fragment_feed, container, false) } - override fun onCreateContextMenu(menu: ContextMenu?, v: View?, menuInfo: ContextMenu.ContextMenuInfo?) { + override fun onCreateContextMenu(menu: ContextMenu, v: View, menuInfo: ContextMenu.ContextMenuInfo?) { super.onCreateContextMenu(menu, v, menuInfo) - - if (v?.id == R.id.menuRecyclerView) { + if (v.id == R.id.menuRecyclerView) { activity?.menuInflater?.inflate(R.menu.menu_session, menu) } - } - override fun onContextItemSelected(item: MenuItem?): Boolean { - - when (item?.itemId) { + override fun onContextItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.duplicate -> { val info = item.menuInfo as ContextMenuRecyclerView.RecyclerViewContextMenuInfo val sessionId = this.feedSessionAdapter.sessionIdForPosition(info.position) @@ -336,6 +332,8 @@ class FeedFragment : FilterableFragment(), RowRepresentableDelegate { * Show end of beta message * Keep for possible future uses */ + //TODO: Delete + /* private fun showEndOfBetaMessage() { Toast.makeText( context, @@ -343,6 +341,7 @@ class FeedFragment : FilterableFragment(), RowRepresentableDelegate { Toast.LENGTH_LONG ).show() } + */ // Filter Handler diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/FiltersFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/FiltersFragment.kt index c04d3e02..0928c6bc 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/FiltersFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/FiltersFragment.kt @@ -104,9 +104,9 @@ open class FiltersFragment : RealmFragment(), StaticRowRepresentableDataSource, } } - override fun onCreateOptionsMenu(menu: Menu?, inflater: MenuInflater?) { - menu?.clear() - inflater?.inflate(R.menu.toolbar_editable_data, menu) + override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { + menu.clear() + inflater.inflate(R.menu.toolbar_editable_data, menu) this.filterMenu = menu updateMenuUI() super.onCreateOptionsMenu(menu, inflater) @@ -120,8 +120,8 @@ open class FiltersFragment : RealmFragment(), StaticRowRepresentableDataSource, } } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - when (item!!.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.save -> validateUpdates() } return true diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportCreationFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportCreationFragment.kt index 0584020b..12c179d6 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportCreationFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/ReportCreationFragment.kt @@ -60,16 +60,16 @@ class ReportCreationFragment : RealmFragment(), RowRepresentableDataSource, RowR } } - override fun onCreateOptionsMenu(menu: Menu?, inflater: MenuInflater?) { + override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { super.onCreateOptionsMenu(menu, inflater) - menu?.clear() - inflater?.inflate(R.menu.toolbar_report_creation, menu) - menu?.findItem(R.id.add)?.isVisible = false + menu.clear() + inflater.inflate(R.menu.toolbar_report_creation, menu) + menu.findItem(R.id.add)?.isVisible = false reportCreationMenu = menu } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - when (item?.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.add -> { if (this.assistant.step == Assistant.Step.FILTER) { FiltersActivity.newInstanceForResult( @@ -174,7 +174,7 @@ class ReportCreationFragment : RealmFragment(), RowRepresentableDataSource, RowR 0 -> RowViewType.HEADER_TITLE.ordinal else -> { val row = this.currentRows[position] - when (row) { + when (this.currentRows[position]) { is SeparatorRow -> row.viewType else -> RowViewType.TITLE_CHECK.ordinal } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt index c159efe1..187ea41a 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/SessionFragment.kt @@ -133,16 +133,16 @@ class SessionFragment : RealmFragment(), RowRepresentableDelegate { handler.removeCallbacksAndMessages(null) } - override fun onCreateOptionsMenu(menu: Menu?, inflater: MenuInflater?) { - menu?.clear() - inflater?.inflate(R.menu.toolbar_session, menu) + override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { + menu.clear() + inflater.inflate(R.menu.toolbar_session, menu) this.sessionMenu = menu updateMenuUI() super.onCreateOptionsMenu(menu, inflater) } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - when (item!!.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.stop -> stopSession() R.id.newCustomField -> addNewCustomField() R.id.restart -> restartTimer() @@ -212,8 +212,7 @@ class SessionFragment : RealmFragment(), RowRepresentableDelegate { val animationDuration = if (firstDisplay) 0L else 300L - val state = currentSession.getState() - when (state) { + when (currentSession.getState()) { SessionState.PENDING, SessionState.PLANNED -> { sessionMenu?.findItem(R.id.restart)?.isVisible = false floatingActionButton.setImageResource(R.drawable.ic_outline_play) diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/FilterableFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/FilterableFragment.kt index fb6dd3a8..44d5a320 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/FilterableFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/FilterableFragment.kt @@ -18,7 +18,6 @@ import net.pokeranalytics.android.ui.interfaces.FilterHandler import net.pokeranalytics.android.ui.interfaces.FilterHandler.Companion.INTENT_FILTER_UPDATE_FILTER_UI import net.pokeranalytics.android.ui.interfaces.FilterableType import net.pokeranalytics.android.util.Preferences -import timber.log.Timber /** @@ -70,7 +69,7 @@ open class FilterableFragment : RealmFragment(), FilterHandler { return super.onCreateView(inflater, container, savedInstanceState) } - override fun onCreateOptionsMenu(menu: Menu?, inflater: MenuInflater?) { + override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { super.onCreateOptionsMenu(menu, inflater) view?.findViewById(R.id.toolbar)?.let { toolbar -> toolbar.menu.removeItem(R.id.menu_item_filter) @@ -80,8 +79,8 @@ open class FilterableFragment : RealmFragment(), FilterHandler { } } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - when (item?.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.menu_item_filter -> { manageFilters(this) } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/LoaderDialogFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/LoaderDialogFragment.kt index 82de63d6..4914cc05 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/LoaderDialogFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/LoaderDialogFragment.kt @@ -46,7 +46,7 @@ class LoaderDialogFragment: DialogFragment() { override fun onStart() { super.onStart() - val window = dialog.window + val window = dialog?.window window?.setBackgroundDrawableResource(android.R.color.transparent) } diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/input/InputFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/input/InputFragment.kt index 788e0b14..386544ff 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/input/InputFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/input/InputFragment.kt @@ -32,7 +32,7 @@ import java.util.* open class InputFragment(val row: RowRepresentable) : BottomSheetDialogFragment() { -// lateinit var row: RowRepresentable + // lateinit var row: RowRepresentable lateinit var delegate: RowEditableDelegate var currentCurrency: Currency? = null var valueHasPlaceholder: Boolean = false @@ -45,27 +45,29 @@ open class InputFragment(val row: RowRepresentable) : BottomSheetDialogFragment( const val REQUEST_CODE_ADD_NEW_OBJECT = 100 - fun buildAndShow( - row: RowRepresentable, - delegate: RowEditableDelegate, - dataSource: RowEditableDataSource?, - isDeletable: Boolean? = false, - valueHasPlaceholder: Boolean? = null - ) { - if (delegate !is Fragment) throw PokerAnalyticsException.InputFragmentException - if (dataSource?.descriptorType == RowEditableDescriptorType.DATE) { - DateTimePickerManager.buildAndShow(row, delegate, dataSource.descriptors.first()) - } else { - val bottomSheetFragment = row.inputFragmentType.newInstance(row) - bottomSheetFragment.show(delegate.fragmentManager, "bottomSheet") - bottomSheetFragment.delegate = delegate - bottomSheetFragment.rowEditableDescriptors = dataSource?.descriptors - bottomSheetFragment.isClearable = row.valueCanBeClearedWhenEditing - bottomSheetFragment.isDeletable = isDeletable ?: true - bottomSheetFragment.valueHasPlaceholder = valueHasPlaceholder ?: true - bottomSheetFragment.currentCurrency = dataSource?.currency - } - } + fun buildAndShow( + row: RowRepresentable, + delegate: RowEditableDelegate, + dataSource: RowEditableDataSource?, + isDeletable: Boolean? = false, + valueHasPlaceholder: Boolean? = null + ) { + if (delegate !is Fragment) throw PokerAnalyticsException.InputFragmentException + if (dataSource?.descriptorType == RowEditableDescriptorType.DATE) { + DateTimePickerManager.buildAndShow(row, delegate, dataSource.descriptors.first()) + } else { + delegate.fragmentManager?.let { fragmentManager -> + val bottomSheetFragment = row.inputFragmentType.newInstance(row) + bottomSheetFragment.show(fragmentManager, "bottomSheet") + bottomSheetFragment.delegate = delegate + bottomSheetFragment.rowEditableDescriptors = dataSource?.descriptors + bottomSheetFragment.isClearable = row.valueCanBeClearedWhenEditing + bottomSheetFragment.isDeletable = isDeletable ?: true + bottomSheetFragment.valueHasPlaceholder = valueHasPlaceholder ?: true + bottomSheetFragment.currentCurrency = dataSource?.currency + } + } + } } override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { @@ -97,9 +99,9 @@ open class InputFragment(val row: RowRepresentable) : BottomSheetDialogFragment( } @SuppressLint("RestrictedApi") - override fun setupDialog(dialog: Dialog?, style: Int) { + override fun setupDialog(dialog: Dialog, style: Int) { super.setupDialog(dialog, style) - dialog?.window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE) + dialog.window?.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE) } /** diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/data/DataManagerFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/data/DataManagerFragment.kt index 1234528b..e2564779 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/data/DataManagerFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/data/DataManagerFragment.kt @@ -46,9 +46,9 @@ open class DataManagerFragment : RealmFragment() { loadItem() } - override fun onCreateOptionsMenu(menu: Menu?, inflater: MenuInflater?) { - menu?.clear() - inflater?.inflate(R.menu.toolbar_editable_data, menu) + override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) { + menu.clear() + inflater.inflate(R.menu.toolbar_editable_data, menu) this.editableMenu = menu updateMenuUI() super.onCreateOptionsMenu(menu, inflater) @@ -62,8 +62,8 @@ open class DataManagerFragment : RealmFragment() { editableMenu?.findItem(R.id.save)?.isVisible = this.saveButtonShouldAppear } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - when (item!!.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + when (item.itemId) { R.id.save -> saveData() R.id.delete -> deleteData() }