From e1b50c86f34f0796253dfa1498ebfa85a965fcb3 Mon Sep 17 00:00:00 2001
From: Sadwhy <99601717+Sadwhy@users.noreply.github.com>
Date: Thu, 21 Mar 2024 12:11:16 +0600
Subject: [PATCH 1/5] feet(watch): Fixed one inconsistent switch (#273)
* feet(watch): Fixed one inconsistent switch
---
app/src/main/res/layout/item_anime_watch.xml | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/app/src/main/res/layout/item_anime_watch.xml b/app/src/main/res/layout/item_anime_watch.xml
index ae95f1d7..9fc4224a 100644
--- a/app/src/main/res/layout/item_anime_watch.xml
+++ b/app/src/main/res/layout/item_anime_watch.xml
@@ -154,7 +154,7 @@
android:orientation="horizontal"
android:visibility="gone">
-
+ android:scaleX="0.80"
+ android:scaleY="0.80"
+ app:useMaterialThemeColors="true"/>
@@ -373,3 +375,4 @@
+
From 3016792f95525872517b6b7352610bc48cb2b866 Mon Sep 17 00:00:00 2001
From: aayush262
Date: Fri, 22 Mar 2024 11:24:36 +0530
Subject: [PATCH 2/5] fix(activity): blur banner
---
app/src/main/java/ani/dantotsu/profile/ProfileFragment.kt | 2 --
app/src/main/res/layout/item_activity.xml | 4 ++--
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/app/src/main/java/ani/dantotsu/profile/ProfileFragment.kt b/app/src/main/java/ani/dantotsu/profile/ProfileFragment.kt
index 980c70c5..e361199d 100644
--- a/app/src/main/java/ani/dantotsu/profile/ProfileFragment.kt
+++ b/app/src/main/java/ani/dantotsu/profile/ProfileFragment.kt
@@ -143,8 +143,6 @@ class ProfileFragment : Fragment() {
super.onResume()
if (this::binding.isInitialized) {
binding.root.requestLayout()
- setFavPeople()
- model.refresh()
}
}
diff --git a/app/src/main/res/layout/item_activity.xml b/app/src/main/res/layout/item_activity.xml
index 03b96d30..816c1732 100644
--- a/app/src/main/res/layout/item_activity.xml
+++ b/app/src/main/res/layout/item_activity.xml
@@ -113,7 +113,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="start|center_vertical"
- android:backgroundTint="?attr/colorSurface"
+ app:cardBackgroundColor="@color/nav_bg"
app:cardCornerRadius="24dp"
app:strokeColor="@color/transparent">
@@ -150,7 +150,7 @@
android:layout_height="160dp"
android:layout_gravity="center"
android:scaleType="centerCrop"
- app:srcCompat="@drawable/ic_round_add_circle_24"
+ tools:srcCompat="@tools:sample/backgrounds/scenic"
tools:ignore="ContentDescription,ImageContrastCheck"
tools:tint="@color/transparent" />
From 02efc01a10b2218d11fbd83be68fff4701331d37 Mon Sep 17 00:00:00 2001
From: aayush262
Date: Fri, 22 Mar 2024 12:50:04 +0530
Subject: [PATCH 3/5] feat(profile): round chips
---
app/src/main/res/layout/activity_profile.xml | 94 +++++++++-----------
1 file changed, 43 insertions(+), 51 deletions(-)
diff --git a/app/src/main/res/layout/activity_profile.xml b/app/src/main/res/layout/activity_profile.xml
index 13870e1e..068e1e41 100644
--- a/app/src/main/res/layout/activity_profile.xml
+++ b/app/src/main/res/layout/activity_profile.xml
@@ -128,145 +128,137 @@
app:tint="@color/bg_opp" />
+
-
-
-
+ android:layout_marginStart="8dp"
+ android:backgroundTint="?attr/colorSurfaceVariant"
+ app:cardCornerRadius="16dp">
+ android:textColor="?attr/colorPrimary"
+ tools:text="1" />
+
-
-
-
-
+ android:layout_marginStart="8dp"
+ android:backgroundTint="?attr/colorSurfaceVariant"
+ app:cardCornerRadius="16dp">
+ android:textColor="?attr/colorPrimary"
+ tools:text="2" />
-
+
-
-
+ android:layout_marginStart="8dp"
+ android:backgroundTint="?attr/colorSurfaceVariant"
+ app:cardCornerRadius="16dp">
+ android:textColor="?attr/colorPrimary"
+ tools:text="3" />
-
+
-
-
-
+ android:layout_marginStart="8dp"
+ android:backgroundTint="?attr/colorSurfaceVariant"
+ app:cardCornerRadius="16dp">
+ android:textColor="?attr/colorPrimary"
+ tools:text="4" />
-
+
-
-
Date: Fri, 22 Mar 2024 20:38:34 +0530
Subject: [PATCH 4/5] feat: something
---
.../download/anime/OfflineAnimeAdapter.kt | 2 +-
.../download/manga/OfflineMangaAdapter.kt | 2 +-
app/src/main/res/layout/item_activity.xml | 4 ++--
app/src/main/res/layout/item_follower.xml | 21 +++++++++----------
app/src/main/res/layout/item_notification.xml | 4 ++--
5 files changed, 16 insertions(+), 17 deletions(-)
diff --git a/app/src/main/java/ani/dantotsu/download/anime/OfflineAnimeAdapter.kt b/app/src/main/java/ani/dantotsu/download/anime/OfflineAnimeAdapter.kt
index ef0c4148..63cc384a 100644
--- a/app/src/main/java/ani/dantotsu/download/anime/OfflineAnimeAdapter.kt
+++ b/app/src/main/java/ani/dantotsu/download/anime/OfflineAnimeAdapter.kt
@@ -62,7 +62,7 @@ class OfflineAnimeAdapter(
val bannerView = view.findViewById(R.id.itemCompactBanner) // for large view
val episodes = view.findViewById(R.id.itemTotal)
episodes.text = " Episodes"
- bannerView.setImageURI(item.banner)
+ bannerView.setImageURI(item.banner ?: item.image)
totalepisodes.text = item.totalEpisodeList
} else if (style == 1) {
val watchedEpisodes =
diff --git a/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaAdapter.kt b/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaAdapter.kt
index 4ef12c03..0bc9ef08 100644
--- a/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaAdapter.kt
+++ b/app/src/main/java/ani/dantotsu/download/manga/OfflineMangaAdapter.kt
@@ -61,7 +61,7 @@ class OfflineMangaAdapter(
val bannerView = view.findViewById(R.id.itemCompactBanner) // for large view
val chapters = view.findViewById(R.id.itemTotal)
chapters.text = " Chapters"
- bannerView.setImageURI(item.banner)
+ bannerView.setImageURI(item.banner ?: item.image)
totalChapter.text = item.totalChapter
} else if (style == 1) {
val readChapter =
diff --git a/app/src/main/res/layout/item_activity.xml b/app/src/main/res/layout/item_activity.xml
index 816c1732..e45d45ca 100644
--- a/app/src/main/res/layout/item_activity.xml
+++ b/app/src/main/res/layout/item_activity.xml
@@ -109,7 +109,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="8dp">
-
-
+
-
+ app:cardCornerRadius="24dp"
+ app:strokeColor="@color/transparent">
+ tools:ignore="ContentDescription"
+ tools:srcCompat="@tools:sample/backgrounds/scenic" />
+ app:cardCornerRadius="64dp"
+ app:strokeColor="@color/transparent">
-
+ android:textSize="18sp" />
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_notification.xml b/app/src/main/res/layout/item_notification.xml
index 77868138..b20359ef 100644
--- a/app/src/main/res/layout/item_notification.xml
+++ b/app/src/main/res/layout/item_notification.xml
@@ -8,7 +8,7 @@
android:layout_margin="8dp"
android:orientation="horizontal">
-
-
+
\ No newline at end of file
From d1e03b8237a9c389fb144e209c8bb1a29ed67f82 Mon Sep 17 00:00:00 2001
From: aayush262
Date: Fri, 22 Mar 2024 23:44:51 +0530
Subject: [PATCH 5/5] feat(media): fav and popularity count
---
.../connections/anilist/AnilistQueries.kt | 5 +-
app/src/main/java/ani/dantotsu/media/Media.kt | 4 +-
.../ani/dantotsu/media/MediaInfoFragment.kt | 2 +
app/src/main/res/layout/activity_profile.xml | 224 +++++++++---------
.../main/res/layout/fragment_media_info.xml | 39 +++
app/src/main/res/values/strings.xml | 2 +
6 files changed, 167 insertions(+), 109 deletions(-)
diff --git a/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt b/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt
index c9ff694d..c83fd07f 100644
--- a/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt
+++ b/app/src/main/java/ani/dantotsu/connections/anilist/AnilistQueries.kt
@@ -72,7 +72,7 @@ class AnilistQueries {
media.cameFromContinue = false
val query =
- """{Media(id:${media.id}){id mediaListEntry{id status score(format:POINT_100)progress private notes repeat customLists updatedAt startedAt{year month day}completedAt{year month day}}isFavourite siteUrl idMal nextAiringEpisode{episode airingAt}source countryOfOrigin format duration season seasonYear startDate{year month day}endDate{year month day}genres studios(isMain:true){nodes{id name siteUrl}}description trailer{site id}synonyms tags{name rank isMediaSpoiler}characters(sort:[ROLE,FAVOURITES_DESC],perPage:25,page:1){edges{role node{id image{medium}name{userPreferred}isFavourite}}}relations{edges{relationType(version:2)node{id idMal mediaListEntry{progress private score(format:POINT_100)status}episodes chapters nextAiringEpisode{episode}popularity meanScore isAdult isFavourite format title{english romaji userPreferred}type status(version:2)bannerImage coverImage{large}}}}staffPreview:staff(perPage:8,sort:[RELEVANCE,ID]){edges{role node{id image{large medium}name{userPreferred}}}}recommendations(sort:RATING_DESC){nodes{mediaRecommendation{id idMal mediaListEntry{progress private score(format:POINT_100)status}episodes chapters nextAiringEpisode{episode}meanScore isAdult isFavourite format title{english romaji userPreferred}type status(version:2)bannerImage coverImage{large}}}}externalLinks{url site}}}"""
+ """{Media(id:${media.id}){id favourites popularity mediaListEntry{id status score(format:POINT_100)progress private notes repeat customLists updatedAt startedAt{year month day}completedAt{year month day}}isFavourite siteUrl idMal nextAiringEpisode{episode airingAt}source countryOfOrigin format duration season seasonYear startDate{year month day}endDate{year month day}genres studios(isMain:true){nodes{id name siteUrl}}description trailer{site id}synonyms tags{name rank isMediaSpoiler}characters(sort:[ROLE,FAVOURITES_DESC],perPage:25,page:1){edges{role node{id image{medium}name{userPreferred}isFavourite}}}relations{edges{relationType(version:2)node{id idMal mediaListEntry{progress private score(format:POINT_100)status}episodes chapters nextAiringEpisode{episode}popularity meanScore isAdult isFavourite format title{english romaji userPreferred}type status(version:2)bannerImage coverImage{large}}}}staffPreview:staff(perPage:8,sort:[RELEVANCE,ID]){edges{role node{id image{large medium}name{userPreferred}}}}recommendations(sort:RATING_DESC){nodes{mediaRecommendation{id idMal mediaListEntry{progress private score(format:POINT_100)status}episodes chapters nextAiringEpisode{episode}meanScore isAdult isFavourite format title{english romaji userPreferred}type status(version:2)bannerImage coverImage{large}}}}externalLinks{url site}}}"""
runBlocking {
val anilist = async {
var response = executeQuery(query, force = true, show = true)
@@ -83,7 +83,8 @@ class AnilistQueries {
media.source = fetchedMedia.source?.toString()
media.countryOfOrigin = fetchedMedia.countryOfOrigin
media.format = fetchedMedia.format?.toString()
-
+ media.favourites = fetchedMedia.favourites
+ media.popularity = fetchedMedia.popularity
media.startDate = fetchedMedia.startDate
media.endDate = fetchedMedia.endDate
diff --git a/app/src/main/java/ani/dantotsu/media/Media.kt b/app/src/main/java/ani/dantotsu/media/Media.kt
index d26a5048..c0196218 100644
--- a/app/src/main/java/ani/dantotsu/media/Media.kt
+++ b/app/src/main/java/ani/dantotsu/media/Media.kt
@@ -25,7 +25,7 @@ data class Media(
var cover: String? = null,
var banner: String? = null,
var relation: String? = null,
- var popularity: Int? = null,
+ var favourites: Int? = null,
var isAdult: Boolean,
var isFav: Boolean = false,
@@ -56,6 +56,7 @@ data class Media(
var trailer: String? = null,
var startDate: FuzzyDate? = null,
var endDate: FuzzyDate? = null,
+ var popularity: Int? = null,
var characters: ArrayList? = null,
var staff: ArrayList? = null,
@@ -95,6 +96,7 @@ data class Media(
meanScore = apiMedia.meanScore,
startDate = apiMedia.startDate,
endDate = apiMedia.endDate,
+ favourites = apiMedia.favourites,
anime = if (apiMedia.type == MediaType.ANIME) Anime(
totalEpisodes = apiMedia.episodes,
nextAiringEpisode = apiMedia.nextAiringEpisode?.episode?.minus(1)
diff --git a/app/src/main/java/ani/dantotsu/media/MediaInfoFragment.kt b/app/src/main/java/ani/dantotsu/media/MediaInfoFragment.kt
index 06fb3aa9..1cec1eb6 100644
--- a/app/src/main/java/ani/dantotsu/media/MediaInfoFragment.kt
+++ b/app/src/main/java/ani/dantotsu/media/MediaInfoFragment.kt
@@ -97,6 +97,8 @@ class MediaInfoFragment : Fragment() {
binding.mediaInfoSource.text = media.source
binding.mediaInfoStart.text = media.startDate?.toString() ?: "??"
binding.mediaInfoEnd.text = media.endDate?.toString() ?: "??"
+ binding.mediaInfoPopularity.text = media.popularity.toString()
+ binding.mediaInfoFavorites.text = media.favourites.toString()
if (media.anime != null) {
val episodeDuration = media.anime.episodeDuration
diff --git a/app/src/main/res/layout/activity_profile.xml b/app/src/main/res/layout/activity_profile.xml
index 068e1e41..5b61ea3d 100644
--- a/app/src/main/res/layout/activity_profile.xml
+++ b/app/src/main/res/layout/activity_profile.xml
@@ -129,133 +129,145 @@
-
+ app:cardCornerRadius="16dp">
-
+ android:orientation="horizontal"
+ tools:ignore="HardcodedText">
-
+ android:layout_marginTop="8dp"
+ android:layout_marginBottom="8dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ android:orientation="vertical">
-
+
+
+
+
+
+
+
+
-
+ android:layout_marginTop="8dp"
+ android:layout_marginBottom="8dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ android:orientation="vertical">
+
-
+
-
+
+
+
+
+ android:layout_marginTop="8dp"
+ android:layout_marginBottom="8dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ android:orientation="vertical">
-
+
+
+
+
+
+
+
+
+ android:layout_marginTop="8dp"
+ android:layout_marginBottom="8dp"
+ android:layout_weight="1"
+ android:gravity="center"
+ android:orientation="vertical">
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
diff --git a/app/src/main/res/layout/fragment_media_info.xml b/app/src/main/res/layout/fragment_media_info.xml
index 0cc14a6a..29ae8ff9 100644
--- a/app/src/main/res/layout/fragment_media_info.xml
+++ b/app/src/main/res/layout/fragment_media_info.xml
@@ -303,7 +303,46 @@
android:fontFamily="@font/poppins_bold"
android:textAlignment="textEnd" />
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index a974ff47..9b0ec0f3 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -124,6 +124,8 @@
Characters
Relations
Staff
+ Favourites
+ Popularity
Roles
Details