Fix : profile social few fixes#432
Open
NITHINSPACETIME wants to merge 3 commits intoRyanYuuki:mainfrom
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR expands the AniList-facing profile/social experience by adding a dedicated AniList settings editor, tightening some social interactions around login state, and shifting AniList parsing/query behavior toward userPreferred titles and names.
Changes:
- Add a new AniList settings screen, model, and GraphQL fetch/update flow, plus entry points from account management and profile actions.
- Improve profile/social UX with login guards for likes/messages/replies, clearer profile-load messaging, and a long-press list-editor shortcut on activity cards.
- Update AniList queries and parsers to request/prefer
userPreferredtitles/names across media, profile, and homepage data.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
lib/widgets/non_widgets/activity_card.dart |
Adds login guard for likes and a long-press list editor on list activities. |
lib/screens/settings/sub_settings/settings_anilist_api.dart |
New full-screen AniList settings editor UI and save flow. |
lib/screens/settings/sub_settings/settings_accounts.dart |
Adds an AniList Settings entry in the AniList account management sheet. |
lib/screens/settings/search/settings_search_metadata.dart |
Adds search metadata/icon for the new AniList Settings entry. |
lib/screens/profile/widgets/user_profile_header.dart |
Adjusts profile avatar sizing/alignment in the user header. |
lib/screens/profile/widgets/user_profile_app_bar.dart |
Adjusts compact profile avatar sizing/alignment. |
lib/screens/profile/widgets/profile_header.dart |
Adds AniList Settings action to own-profile menus and tweaks avatar alignment. |
lib/screens/profile/user_profile_page.dart |
Improves null-profile messaging and guards message composition behind login. |
lib/screens/profile/activity_details_page.dart |
Guards reply posting and reply likes behind login. |
lib/models/Media/relation.dart |
Prefers userPreferred title when building relation models. |
lib/models/Media/media.dart |
Prefers userPreferred titles across multiple media constructors. |
lib/models/Anilist/anilist_user_settings.dart |
Introduces AniList settings and metadata model serialization. |
lib/models/Anilist/anilist_profile.dart |
Prefers userPreferred names/titles in favorites and stats models. |
lib/models/Anilist/anilist_media_user.dart |
Prefers userPreferred title in tracked media parsing. |
lib/controllers/services/anilist/anilist_queries.dart |
Requests userPreferred in detail-related GraphQL queries. |
lib/controllers/services/anilist/anilist_data.dart |
Requests userPreferred in homepage/manga queries and adds optional auth headers. |
lib/controllers/services/anilist/anilist_auth.dart |
Adds AniList settings fetch/update/cache support and broadens userPreferred query usage. |
Comments suppressed due to low confidence (1)
lib/controllers/services/anilist/anilist_auth.dart:42
- These caches are never cleared on logout, but
SettingsAnilistApireads them immediately before refetching. After signing out and into a different AniList account, the settings screen will briefly show the previous account's bio/preferences and can keep doing so permanently if the refresh fails.
AnilistUserSettings? cachedSettings;
AnilistSettingsMetadata? cachedMetadata;
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+59
to
+67
| final isManga = activity.type == 'MANGA_LIST'; | ||
| final service = Get.find<ServiceHandler>().onlineService; | ||
| final media = Media( | ||
| id: activity.mediaId.toString(), | ||
| title: activity.mediaTitle ?? 'Unknown', | ||
| poster: activity.mediaCoverUrl ?? '', | ||
| cover: activity.mediaBannerUrl, | ||
| mediaType: isManga ? ItemType.manga : ItemType.anime, | ||
| serviceType: Get.find<ServiceHandler>().serviceType.value, |
| if (mounted) setState(() {}); | ||
| }, | ||
| onDelete: (s) async { | ||
| final listId = service.currentMedia.value.mediaListId ?? media.id; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
fixed the issue (shebby mentiond) and avatar cut off fixed ( ig)