Skip to content

Add settings search#5100

Merged
Gabriel Dufresne (GabrielDuf) merged 2 commits into
mainfrom
feature/settings-search
Jul 15, 2026
Merged

Add settings search#5100
Gabriel Dufresne (GabrielDuf) merged 2 commits into
mainfrom
feature/settings-search

Conversation

@GabrielDuf

Copy link
Copy Markdown
Contributor

This pull request introduces a comprehensive, user-friendly search system for the settings interface, allowing users to quickly find and navigate to specific settings or package manager preferences. The main changes include a hand-authored, locale-aware search index, logic for scoring and ranking search results, and UI updates to display and interact with suggestions. Additionally, it implements logic to scroll to and briefly highlight the relevant setting when a suggestion is selected.

Settings Search Infrastructure

  • Added a new static class SettingsSearchIndex that provides a hand-authored, multilingual-aware search index for settings and package manager preferences, including logic for tokenizing, normalizing, and ranking search queries against indexed entries.
  • Introduced the SettingsSearchResult data structure to represent a single search result, including fields for the display title, page, manager, and anchor target.

ViewModel and UI Integration

  • Updated MainWindowViewModel to maintain and update a collection of SettingsSuggestions, handle opening/closing of suggestions, and implement keyboard navigation and selection logic for suggestions. Selecting a suggestion navigates to the correct settings page or manager and, if applicable, scrolls to and highlights the specific control.
  • Ensured that suggestions are closed when navigating to a new page to keep the UI consistent.
  • Modified the OpenSettingsPage method to accept an optional anchor parameter, allowing navigation to and highlighting of a specific control within a settings page.

Highlighting and Navigation

  • Added the SettingsAnchor static class, which provides logic to scroll a named control into view and briefly highlight it with an animated border, improving user orientation when navigating to a search result.

@GabrielDuf
Gabriel Dufresne (GabrielDuf) merged commit fab6481 into main Jul 15, 2026
8 of 9 checks passed
@GabrielDuf
Gabriel Dufresne (GabrielDuf) deleted the feature/settings-search branch July 15, 2026 17:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants