-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add New Tab Menu Customization to Settings UI #18015
base: main
Are you sure you want to change the base?
Conversation
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TBH nothing in this PR was a problem for me, although there are some nits. I'm mostly curious how it'll feel in practice (once it's in Canary). 🙂
src/cascadia/TerminalSettingsEditor/Resources/en-US/Resources.resw
Outdated
Show resolved
Hide resolved
This comment was marked as resolved.
This comment was marked as resolved.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Played around with the branch, it's super cool! Mostly just nits but a couple blockers particularly around the repeated revoking/setting up of the same event handler
Feedback from Bug Bash (11/19)
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks and feels great! Excited for this
/azp run |
Azure Pipelines successfully started running 1 pipeline(s). |
Summary of the Pull Request
Adds customization for the New Tab Menu to the settings UI.
FolderEntry
FolderEntry
exposesEntries()
(used by the new tab menu to figure out what to actually render) andRawEntries()
(the actual JSON data deserialized into settings model objects). I went ahead and exposedRawEntries()
since we'll need to apply changes to it to then serialize.NewTabMenuViewModel
is the main view model that interacts with the page. It maintains the current view of items and applies changes to the settings model.NewTabMenuEntryViewModel
and all of the other_EntryViewModel
classes are wrappers for the settings model NTM entries.FolderTreeViewEntry
encapsulatesFolderEntryViewModel
. It allows us to construct aTreeView
of just folders.FontIconGlyph
to make this look nice!Verification
Follow-ups