diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b593e589..acf5f807 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -44,6 +44,11 @@
android:launchMode="singleTop"
android:screenOrientation="portrait" />
+
+
>()
+
+ override fun getItem(position: Int): PokerAnalyticsFragment {
+ return when (position) {
+ 0 -> GraphFragment()
+ 1 -> GraphFragment()
+ 2 -> CalendarFragment.newInstance()
+ else -> HistoryFragment.newInstance()
+ }
+ }
+
+ override fun getCount(): Int {
+ return 3
+ }
+
+ override fun getPageTitle(position: Int): CharSequence? {
+ return when(position) {
+ 0 -> context.getString(R.string.bar)
+ 1 -> context.getString(R.string.line)
+ 2-> context.getString(R.string.table)
+ else -> super.getPageTitle(position)
+ }
+ }
+
+ override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) {
+ super.destroyItem(container, position, `object`)
+ weakReferences.remove(position)
+ }
+
+ override fun instantiateItem(container: ViewGroup, position: Int): Any {
+ val fragment = super.instantiateItem(container, position) as PokerAnalyticsFragment
+ weakReferences.put(position, WeakReference(fragment))
+ return fragment
+ }
+
+ override fun getItemPosition(obj: Any): Int {
+ return when (obj) {
+ //CLEAN
+ /*
+ HistoryFragment::class.java -> 0
+ StatsFragment::class.java -> 1
+ SettingsFragment::class.java -> 2
+ */
+ HistoryFragment::class.java -> 0
+ StatsFragment::class.java -> 1
+ CalendarFragment::class.java -> 2
+ ReportsFragment::class.java -> 3
+ MoreFragment::class.java -> 4
+ else -> -1
+ }
+ }
+
+ /**
+ * Return the fragment at the position key
+ */
+ fun getFragment(key: Int): PokerAnalyticsFragment? {
+ if (weakReferences.get(key) != null) {
+ return weakReferences.get(key).get()
+ }
+ return null
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/java/net/pokeranalytics/android/ui/fragment/ComparisonChartFragment.kt b/app/src/main/java/net/pokeranalytics/android/ui/fragment/ComparisonChartFragment.kt
new file mode 100644
index 00000000..17508584
--- /dev/null
+++ b/app/src/main/java/net/pokeranalytics/android/ui/fragment/ComparisonChartFragment.kt
@@ -0,0 +1,100 @@
+package net.pokeranalytics.android.ui.fragment
+
+import android.os.Bundle
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import kotlinx.android.synthetic.main.fragment_comparison_chart.*
+import net.pokeranalytics.android.R
+import net.pokeranalytics.android.ui.activity.BankrollActivity
+import net.pokeranalytics.android.ui.activity.SettingsActivity
+import net.pokeranalytics.android.ui.activity.components.PokerAnalyticsActivity
+import net.pokeranalytics.android.ui.adapter.ComparisonChartPagerAdapter
+import net.pokeranalytics.android.ui.adapter.RowRepresentableDelegate
+import net.pokeranalytics.android.ui.adapter.StaticRowRepresentableDataSource
+import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment
+import net.pokeranalytics.android.ui.view.RowRepresentable
+import net.pokeranalytics.android.ui.view.rowrepresentable.MoreTabRow
+
+class ComparisonChartFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSource, RowRepresentableDelegate {
+
+ companion object {
+
+ /**
+ * Create new instance
+ */
+ fun newInstance(): ComparisonChartFragment {
+ val fragment = ComparisonChartFragment()
+ val bundle = Bundle()
+ fragment.arguments = bundle
+ return fragment
+ }
+
+ val rowRepresentation: List by lazy {
+ val rows = ArrayList()
+ rows.addAll(MoreTabRow.values())
+ rows
+ }
+
+ }
+
+ private lateinit var parentActivity: PokerAnalyticsActivity
+ private lateinit var viewPagerAdapter: ComparisonChartPagerAdapter
+
+
+ // Life Cycle
+
+ override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
+ return inflater.inflate(R.layout.fragment_comparison_chart, container, false)
+ }
+
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+ super.onViewCreated(view, savedInstanceState)
+ initData()
+ initUI()
+ }
+
+ // Rows
+ override fun adapterRows(): List? {
+ return rowRepresentation
+ }
+
+ override fun onRowSelected(position: Int, row: RowRepresentable, fromAction: Boolean) {
+ super.onRowSelected(position, row, fromAction)
+ when(row) {
+ MoreTabRow.BANKROLL -> BankrollActivity.newInstance(requireContext())
+ MoreTabRow.SETTINGS -> SettingsActivity.newInstance(requireContext())
+ }
+ }
+
+ // Business
+
+ /**
+ * Init data
+ */
+ private fun initData() {
+ }
+
+ /**
+ * Init UI
+ */
+ private fun initUI() {
+
+ parentActivity = activity as PokerAnalyticsActivity
+
+ toolbar.title = ""
+
+ parentActivity.setSupportActionBar(toolbar)
+ parentActivity.supportActionBar?.setDisplayHomeAsUpEnabled(true)
+ setHasOptionsMenu(true)
+
+ toolbar.title = "Comparison chart"
+
+ viewPagerAdapter = ComparisonChartPagerAdapter(requireContext(), parentActivity.supportFragmentManager)
+ viewPager.adapter = viewPagerAdapter
+
+ tabs.setupWithViewPager(viewPager)
+
+ }
+
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_comparison_chart.xml b/app/src/main/res/layout/activity_comparison_chart.xml
new file mode 100644
index 00000000..9ef4638e
--- /dev/null
+++ b/app/src/main/res/layout/activity_comparison_chart.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_comparison_chart.xml b/app/src/main/res/layout/fragment_comparison_chart.xml
new file mode 100644
index 00000000..e24de7cb
--- /dev/null
+++ b/app/src/main/res/layout/fragment_comparison_chart.xml
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file