Best way to implement a search feature inside the settings #436

Open
opened 2026-04-05 18:52:35 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @gorbit99 on 4/3/2025

A fairly common problem during tech support is telling someone to set some server setting to a specific value, for example to turn on OSC, set the OSC ip, enable foot mounting reset, etc etc. However some of these might not be easy to find among the sea of other settings there, especially if languages are involved. I think the best way to solve this would be a search bar constantly present at the top of the setttings menus. With this the user could look up these settings without having to scroll through the options.

The main thing I want to discuss is the exact look and feel and the implementation of this. I have two main directions I can imagine this going in.

  1. If the user enters a search term in the search bar, all of the sections will be filtered to that. Sections that don't have any settings in them matching the criteria simply disappear. Also all the options are shown on the same page, so the user doesn't need to go between them. A mockup of this idea can be seen below:

Image

Pro:

  • Doesn't need a lot of new styling, only filtering mechanisms added.
  • The search page could be a whole new component with all of the filtering logic delegated to the individual settings pages
    Con:
  • Takes the user out of the flow of the page and it might be difficult to put them back where they were if they cancel the search
  1. If the user enters a search term, a dropdown appears with options listed in the format of
Page > Section > Name of the setting

Clicking on a result would take the user to the appropriate, scroll to the option and momentarily highlight it.
A potential mockup of this version can be seen below:

Image

Pro:

  • Teaches the user where to look next time they want to modify this setting
  • Easy to cancel without figuring out where the user was before
  • Can be implemented as an additional component without modifying the rest of the settings (though see cons below)
    Con:
  • The settings can't be used as is, they probably need to be represented in a different manner or the information needs to be duplicated into a different format.
  • Descriptions might not be searchable without making it unclear why a certain option appears in the list
  • Design needs to be figured out from the ground up

Of course if there are other ideas, I'd be glad to hear them.

*Originally created by @gorbit99 on 4/3/2025* A fairly common problem during tech support is telling someone to set some server setting to a specific value, for example to turn on OSC, set the OSC ip, enable foot mounting reset, etc etc. However some of these might not be easy to find among the sea of other settings there, especially if languages are involved. I think the best way to solve this would be a search bar constantly present at the top of the setttings menus. With this the user could look up these settings without having to scroll through the options. The main thing I want to discuss is the exact look and feel and the implementation of this. I have two main directions I can imagine this going in. 1. If the user enters a search term in the search bar, all of the sections will be filtered to that. Sections that don't have any settings in them matching the criteria simply disappear. Also all the options are shown on the same page, so the user doesn't need to go between them. A mockup of this idea can be seen below: ![Image](https://github.com/user-attachments/assets/f40c15a0-1ff8-4798-a906-bde7ee0854f8) Pro: - Doesn't need a lot of new styling, only filtering mechanisms added. - The search page could be a whole new component with all of the filtering logic delegated to the individual settings pages Con: - Takes the user out of the flow of the page and it might be difficult to put them back where they were if they cancel the search 2. If the user enters a search term, a dropdown appears with options listed in the format of ``` Page > Section > Name of the setting ``` Clicking on a result would take the user to the appropriate, scroll to the option and momentarily highlight it. A potential mockup of this version can be seen below: ![Image](https://github.com/user-attachments/assets/68374f80-2e89-48f7-a7c5-8bebbab558ab) Pro: - Teaches the user where to look next time they want to modify this setting - Easy to cancel without figuring out where the user was before - Can be implemented as an additional component without modifying the rest of the settings (though see cons below) Con: - The settings can't be used as is, they probably need to be represented in a different manner or the information needs to be duplicated into a different format. - Descriptions might not be searchable without making it unclear why a certain option appears in the list - Design needs to be figured out from the ground up Of course if there are other ideas, I'd be glad to hear them.
MrUnknownDE added the Type: DiscussionArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUIArea: GUI labels 2026-04-05 18:52:50 +02:00
Sign in to join this conversation.
No Label Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Area: GUI Type: Discussion
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SlimeVR-Server#436