Repository navigation
feat(toolbar): move a donut profile up or down the list (#522) - #668
Merged
Merged
Conversation
Filee opens the first profile in the list that has a file's extension, and a new profile goes in after the built-in ones, so a profile with .jpg never won over Images. The profile list in Settings → Donut toolbar now has Move up / Move down arrows under it, and Alt+↑ / Alt+↓ in the list do the same. A profile trades places only with one of its own kind (normal or mixed), since a normal profile always wins over a mixed one anyway; with a search typed, it passes the profile the list shows, not a hidden one. The order is the order of profiles.json, so nothing new is saved and no settings schema change is needed. "Reset to default" keeps the profile's place. The remark under the extension chips now says to move the profile above the other one, and turns into "this profile comes first" after the move. A caption under the list explains that the higher profile opens. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
What does this change?
Closes #522.
Filee opens the first profile in the list that has a file's extension, and new profiles are added after the built-in ones, so a profile with
.jpgcould never win over Images. Settings → Donut toolbar now has Move up / Move down arrows under the profile list. The list order still decides which profile wins.Icon.ArrowUp/Icon.ArrowDown,Button.icon), each with a tooltip and an automation name. Alt+↑ / Alt+↓ in the list do the same thing, and focus stays in the list. A disabled arrow is dimmed instead of showing a grey box.ProfileSelectoranyway, and normal profiles stay above the mixed ones. Among mixed profiles the order matters too: the first match wins, and so does the catch-all.jpg, then one step up puts your profile right above Images). Hidden profiles keep their order.profiles.json, which was already saved as a list. No settings schema migration. NoCurrentSchemaVersionbump, so nothing collides with feat(presets): Edit pictures, size, format and turn chosen each time (#584) #617 (49).toolbar.ext_claimed_first) now ends with "Move this profile above “Images” to open them here." After the move it becomes the existing "This profile comes first in the list…" message, because the editor is rebuilt after each move. The German string also said "Dieses Profil steht weiter oben", which pointed at the wrong profile. It now names the other one.toolbar.profile_up,toolbar.profile_downandtoolbar.profile_order_hintare in all 17 language files, andtoolbar.ext_claimed_firstis updated in all 17.The ordering logic lives in Core (
Filee.Core.Profiles.ProfileOrder:Neighbor/Move). The page view model mirrors the store's list.Type of change
How was it tested?
dotnet format --verify-no-changesdotnet test: all ofFilee.Core.Tests(639 passed, 3 skipped), plus the toolbar, extension-editing, localization, automation-name and merge-order tests inFilee.App.Tests(242 passed)ProfileOrderTests: a new profile moved above Images opens.jpg. A profile only trades places with its own kind. Profiles of the other kind or hidden by a search keep their place. The catch-all follows the mixed order. The order survives save and load, and reset keeps it.ToolbarPageTests: commands, CanExecute at the edges, moving while searching, the remark switching, the store and the list staying in step, the saved order; arrow buttons (names and tooltips), Alt+↑ / Alt+↓ from a focused list item, focus kept.Toolbar_profile_order_renders: en, de, ar, light and dark, before and after the move)Screenshots (UI changes)
Rendered by
RenderTests.Toolbar_profile_order_rendersintotests/Filee.App.Tests/bin/<config>/net10.0/screenshots/toolbar-profile-order-{before,after}-{en,de,ar}[-dark].png.Checklist
src/Filee.App/Assets/i18n/*.jsonfilesTHIRD-PARTY-NOTICES.md(none)🤖 Generated with Claude Code