From f91710f9f95610220da95f35bbb988fffb5c3052 Mon Sep 17 00:00:00 2001 From: Aurelien Hubert Date: Fri, 19 Apr 2019 14:34:54 +0200 Subject: [PATCH 1/2] Delete unsued resources --- .../drawable-v24/ic_launcher_foreground.xml | 34 --------- .../res/drawable/ic_launcher_background.xml | 74 ------------------- 2 files changed, 108 deletions(-) delete mode 100644 app/src/main/res/drawable-v24/ic_launcher_foreground.xml delete mode 100644 app/src/main/res/drawable/ic_launcher_background.xml diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml deleted file mode 100644 index 6348baae..00000000 --- a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml deleted file mode 100644 index a0ad202f..00000000 --- a/app/src/main/res/drawable/ic_launcher_background.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From d8b59f6d3958cea76e43c12abb4f286e618e9df4 Mon Sep 17 00:00:00 2001 From: Aurelien Hubert Date: Fri, 19 Apr 2019 14:35:00 +0200 Subject: [PATCH 2/2] Add loader fragment --- .../android/ui/fragment/ReportsFragment.kt | 4 +-- .../components/LoaderDialogFragment.kt | 27 ++++++++++++++++++- .../components/PokerAnalyticsFragment.kt | 19 +++++++++++++ .../res/drawable/rectangle_rounded_dark.xml | 16 +++++++++++ app/src/main/res/layout/fragment_loader.xml | 21 ++++++++++----- 5 files changed, 78 insertions(+), 9 deletions(-) create mode 100644 app/src/main/res/drawable/rectangle_rounded_dark.xml 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 aee99f2c..de07535b 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 @@ -105,8 +105,7 @@ class ReportsFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSour */ private fun launchComputation(comparators: List, reportName: String) { - //val loader = LoaderDialogFragment.newInstance() - //loader.show(activity?.supportFragmentManager, "loader") + showLoader() GlobalScope.launch { @@ -121,6 +120,7 @@ class ReportsFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSour launch(Dispatchers.Main) { if (!isDetached) { + hideLoader() ReportDetailsActivity.newInstance(requireContext(), report, reportName) } } 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 59f45ca7..82de63d6 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 @@ -5,24 +5,49 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.fragment.app.DialogFragment +import kotlinx.android.synthetic.main.fragment_loader.* import net.pokeranalytics.android.R + class LoaderDialogFragment: DialogFragment() { companion object { + + const val ARGUMENT_MESSAGE_RES_ID = "ARGUMENT_MESSAGE_RES_ID" + /** * Create new instance */ - fun newInstance(): LoaderDialogFragment { + fun newInstance(resId: Int? = null, isCancelable: Boolean = false): LoaderDialogFragment { val fragment = LoaderDialogFragment() + fragment.isCancelable = isCancelable val bundle = Bundle() + resId?.let { + bundle.putInt(ARGUMENT_MESSAGE_RES_ID, resId) + } fragment.arguments = bundle return fragment } + } override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { return inflater.inflate(R.layout.fragment_loader, container, false) } + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + arguments?.let {bundle -> + if (bundle.containsKey(ARGUMENT_MESSAGE_RES_ID)) { + loadingMessage.text = getString(bundle.getInt(ARGUMENT_MESSAGE_RES_ID)) + } + } + } + + override fun onStart() { + super.onStart() + val window = dialog.window + window?.setBackgroundDrawableResource(android.R.color.transparent) + } + } \ No newline at end of file diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/PokerAnalyticsFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/PokerAnalyticsFragment.kt index e69ce9f6..11ebca17 100644 --- a/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/PokerAnalyticsFragment.kt +++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/components/PokerAnalyticsFragment.kt @@ -7,6 +7,7 @@ import io.realm.Realm open class PokerAnalyticsFragment: Fragment() { private var realm: Realm? = null + private var loaderDialogFragment: LoaderDialogFragment? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -36,4 +37,22 @@ open class PokerAnalyticsFragment: Fragment() { */ open fun onBackPressed(){} + /** + * Show the loader + */ + fun showLoader(resId: Int? = null, cancelable: Boolean? = false) { + loaderDialogFragment = LoaderDialogFragment.newInstance(resId, false) + activity?.let { + loaderDialogFragment?.show(it.supportFragmentManager, "loader") + } + } + + /** + * Hide the loader + */ + fun hideLoader() { + loaderDialogFragment?.dismiss() + loaderDialogFragment = null + } + } \ No newline at end of file diff --git a/app/src/main/res/drawable/rectangle_rounded_dark.xml b/app/src/main/res/drawable/rectangle_rounded_dark.xml new file mode 100644 index 00000000..7812ee4b --- /dev/null +++ b/app/src/main/res/drawable/rectangle_rounded_dark.xml @@ -0,0 +1,16 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_loader.xml b/app/src/main/res/layout/fragment_loader.xml index c2371f04..f4249f8b 100644 --- a/app/src/main/res/layout/fragment_loader.xml +++ b/app/src/main/res/layout/fragment_loader.xml @@ -2,10 +2,20 @@ + android:background="@android:color/transparent" + android:elevation="4dp"> + +