UI: User Profiles Pt. 1 + Misc.

This MR updates the visual elements in Options → User Profiles, fixes some issues, and includes some miscellaneous improvements.

USER PROFILES:

  • Implemented Fractured Locales (UserProfiles.json)
    • This isn't a full implementation—only single-use locales have been copied, while multi-use (same locale in multiple places) ones remain in Roots.json. I'll fully implement them in Part 2.
  • User Selector View
    • Renamed: "User Profiles Manager" → "User Profiles", "Recover Lost Accounts" → "Lost Profiles", and "Manage Saves" → "Saves".
    • Fixed: Long profile names causing highlight issues on certain avatars.
    • Fixed: New Profile Panel appearing smaller past 2nd row.
      • In addition, all profiles are now visible with auto-resized window size—no vertical scrollbar appears unless the window fills the entire screen.
  • User Editor View
    • Added: "The actions is not reversible" note when deleting a profile.
    • Reworded: "Choose a Nickname" → "Choose a Profile Name".
    • (NEW!) Removed: Change Profile Image Window
      • Completely removed "Change Image" button, Change Profile Image window, and related sequence.
      • Replaced with edit icon on image (options: Import ImageSelect Firmware Avatar)
    • Renamed: "Import Image File" → "Import Image".
    • Added: Dialog window title when user imports an image.
    • Fixed: Profile name error persisting after attempting to save a new profile with an empty name, navigating back, then editing an existing profile.
      • Added image error handling (replaces removed "Change Profile Image" window).
  • User Editor View → Select Firmware Avatar
    • Changed: Window title to fit new changes.
    • Fixed: Avatar selection indicator wasn't appearing 50% of the time.
  • User Profiles → Saves
    • Replaced: "Search" label with a watermark.
    • Changed: Window title from "Manage Saves for {Profile} (UserID}" → "{Profile}'s Saves".
      • User IDs aren't useful for most users, as they can only be copied when editing a profile.
  • User Profiles → Lost Profiles
    • Fixed: "No Profiles To Recover" text appearing when there is a profile to recover.
    • Fixed: Recover button not recovering a profile.
    • Fixed: Window title not properly updating when navigating back after pressing Recover.
  • ProfileSelectorDialog
    • The same code as UserSelectorView, except without the buttons.

GENERAL/MISCELLANEOUS:

  • Renamed: “Change Language” → "Language" in Options → Change Language.
  • Improved: "Toggle Favorite".
    • Now shows “Add to Favorites” or “Remove from Favorites”, fixing issues in non-English languages.
  • Fixed: Wording/Capitalisation in “Purge PPTC Cache” and “Purge Shader Cache” messages.
  • Added: A period in Create/Edit Custom Configuration tooltip and a missing word in English locale of "Classic Interface" tooltip.

Here are some images:

BEFORE (LATEST CANARY):

Screenshot 2026-01-08 at 13.24.36.png

Screenshot 2026-01-08 at 13.25.03.png

Screenshot 2026-01-08 at 13.25.17.png

AFTER (THIS MR):

Screenshot 2026-01-08 at 13.25.36.png

Screenshot 2026-01-08 at 13.25.47.png

Screenshot 2026-01-08 at 13.25.58.png

This is if you have at least 3 full lines of profiles. In reference to the entire screen, it's not that big and looks much more neat, as users can directly select a profile without scrolling and figuring out where it is (I have an idea on how to compress "empty" profile lines – those with only the add new profile panel - but that is something for part 2).

Screenshot 2026-01-08 at 13.40.56.png

A HUUUUGEEEE, HUUUUGEEEE thank you to @babib3l, @piplup, and @VewDev for testing and discovering important issues!

Edited by Neo

Merge request reports

Loading