Skip to content

Conversation

@supersaiyansubtlety
Copy link
Member

@supersaiyansubtlety supersaiyansubtlety commented Nov 16, 2025

Adds a "Search menus" menu under the "Help" menu.

Tasks

  • make all current menus searchable (except Help and contents)
  • implement search aliases (search "debug" to find the Dev menu)
  • make all (most ?) current menu items searchable
  • contains string search
  • display search alias next to result
  • make clicking on a search result effectively click the corresponding element
  • hot keys
  • make selecting a search result also select the corresponding element (if swing allows it)
    swing does not allow it; instead, hold shift to select the searched item

Yes, the abstraction behind tries is a 'bit' overkill.
Yes, the generics in CompositeStringMultiTrie* got a little out of hand.
Yes, it was fun to write.

@supersaiyansubtlety supersaiyansubtlety self-assigned this Nov 16, 2025
@supersaiyansubtlety supersaiyansubtlety added enhancement New feature or request user interface affects the enigma ui labels Nov 16, 2025
@supersaiyansubtlety supersaiyansubtlety marked this pull request as ready for review November 23, 2025 22:42
@supersaiyansubtlety supersaiyansubtlety removed the wip in progress label Nov 23, 2025
@supersaiyansubtlety
Copy link
Member Author

ready!

scale SearchMenusMenu.field's font
select SearchMenusMenu.field when focusing it
only re-show popup when shrinking
stop scaling field font (menu item fonts are automatically scaled)
give SearchableElement#streamSearchAliases a default implementation
make hint dismiss buttons slightly smaller
adjust hint padding
…er because setting it from a HeirarchyListener was buggy (when restoring after viewing, couldn't select with arrow keys; field got duplicated in path)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request user interface affects the enigma ui

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant