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/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/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/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/activity_profile.xml b/app/src/main/res/layout/activity_profile.xml index 13870e1e..5b61ea3d 100644 --- a/app/src/main/res/layout/activity_profile.xml +++ b/app/src/main/res/layout/activity_profile.xml @@ -128,145 +128,149 @@ app:tint="@color/bg_opp" /> - - - + android:layout_marginStart="12dp" + android:layout_marginEnd="12dp" + android:layout_marginTop="210dp" + android:layout_marginBottom="2dp" + android:backgroundTint="?attr/colorSurfaceVariant" + android:baselineAligned="false" + 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"> + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + + + + + + + + + + + diff --git a/app/src/main/res/layout/item_activity.xml b/app/src/main/res/layout/item_activity.xml index 03b96d30..e45d45ca 100644 --- a/app/src/main/res/layout/item_activity.xml +++ b/app/src/main/res/layout/item_activity.xml @@ -109,11 +109,11 @@ android:layout_height="wrap_content" android:layout_marginTop="8dp"> - @@ -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" /> @@ -193,7 +193,7 @@ android:textStyle="bold" tools:ignore="HardcodedText" /> - + - + android:scaleX="0.80" + android:scaleY="0.80" + app:useMaterialThemeColors="true"/> @@ -373,3 +375,4 @@ + diff --git a/app/src/main/res/layout/item_follower.xml b/app/src/main/res/layout/item_follower.xml index 2908ff31..2339b8ce 100644 --- a/app/src/main/res/layout/item_follower.xml +++ b/app/src/main/res/layout/item_follower.xml @@ -7,21 +7,21 @@ android:layout_marginTop="16dp" android:orientation="horizontal"> - + 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 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