From 297e9dd756e102c77c14add2e966ac478d91ff7f Mon Sep 17 00:00:00 2001 From: aayush262 Date: Sun, 3 Mar 2024 20:36:24 +0530 Subject: [PATCH] feat(profile page): Better charts view ig --- .../ani/dantotsu/profile/StatsFragment.kt | 11 +- .../main/res/layout/fragment_statistics.xml | 536 ++++++++++++++---- 2 files changed, 421 insertions(+), 126 deletions(-) diff --git a/app/src/main/java/ani/dantotsu/profile/StatsFragment.kt b/app/src/main/java/ani/dantotsu/profile/StatsFragment.kt index 12a2e76b..8bd8b671 100644 --- a/app/src/main/java/ani/dantotsu/profile/StatsFragment.kt +++ b/app/src/main/java/ani/dantotsu/profile/StatsFragment.kt @@ -93,6 +93,8 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P loadStats(type == MediaType.ANIME) } loadStats(type == MediaType.ANIME) + binding.statisticProgressBar.visibility = View.GONE + binding.chartsContainer.visibility = View.VISIBLE } } } @@ -271,7 +273,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val palette = generateColorPalette(primaryColor, names.size) return AAChartModel() .chartType(AAChartType.Pie) - .title("Format") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(true) @@ -302,7 +303,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val palette = generateColorPalette(primaryColor, names.size) return AAChartModel() .chartType(AAChartType.Funnel) - .title("Status") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(true) @@ -333,7 +333,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val palette = generateColorPalette(primaryColor, names.size) return AAChartModel() .chartType(AAChartType.Column) - .title("Score") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(false) @@ -368,7 +367,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val palette = generateColorPalette(primaryColor, names.size) return AAChartModel() .chartType(AAChartType.Pyramid) - .title("Length") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(true) @@ -400,7 +398,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val hexColorsArray: Array = palette.map { String.format("#%06X", 0xFFFFFF and it) }.toTypedArray() return AAChartModel() .chartType(AAChartType.Bubble) - .title("Release Year") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(false) @@ -435,7 +432,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val hexColorsArray: Array = palette.map { String.format("#%06X", 0xFFFFFF and it) }.toTypedArray() return AAChartModel() .chartType(AAChartType.Bar) - .title("Start Year") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(false) @@ -470,7 +466,6 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P val hexColorsArray: Array = palette.map { String.format("#%06X", 0xFFFFFF and it) }.toTypedArray() return Pair(AAChartModel() .chartType(AAChartType.Area) - .title("Genre") .subtitle(getTypeName()) .zoomType(AAChartZoomType.XY) .dataLabelsEnabled(false) @@ -555,7 +550,7 @@ class StatsFragment(private val user: Query.UserProfile, private val activity: P private fun setColors(aaOptions: AAOptions) { val backgroundColor = TypedValue() - activity.theme.resolveAttribute(android.R.attr.windowBackground, backgroundColor, true) + activity.theme.resolveAttribute(com.google.android.material.R.attr.colorSurfaceVariant, backgroundColor, true) val backgroundStyle = AAStyle().color( AAColor.rgbaColor( Color.red(backgroundColor.data), diff --git a/app/src/main/res/layout/fragment_statistics.xml b/app/src/main/res/layout/fragment_statistics.xml index cdcba1fd..df0b2254 100644 --- a/app/src/main/res/layout/fragment_statistics.xml +++ b/app/src/main/res/layout/fragment_statistics.xml @@ -5,152 +5,452 @@ android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" - android:orientation="vertical"> - + android:orientation="vertical" + tools:ignore="HardcodedText,RtlSymmetry"> + android:padding="16dp" + android:baselineAligned="false"> - + + + + + + + + android:ellipsize="end" + android:fontFamily="@font/poppins_bold" + android:freezesText="false" + android:inputType="none" + android:maxLines="1" + android:padding="8dp" + android:text="COUNT" + android:textAllCaps="true" + android:textColor="?android:attr/textColorSecondary" + android:textSize="14sp" + tools:ignore="LabelFor,TextContrastCheck,DuplicateSpeakableTextCheck" /> + - - + - + + + - - + + + + + + + - + android:layout_height="wrap_content" + android:orientation="vertical"> + - + - + + + + android:layout_height="wrap_content" + android:orientation="vertical"> + - + - + + - + + android:layout_height="wrap_content" + android:orientation="vertical"> + - + - + + + + android:layout_height="wrap_content" + android:orientation="vertical"> + - + - + + + + android:layout_height="wrap_content" + android:orientation="vertical"> + - + - + + + + android:layout_height="wrap_content" + android:orientation="vertical"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +