Projects/Usability/HIG/SearchPattern

From KDE TechBase
< Projects‎ | Usability‎ | HIG
 
Under Construction
This is a new page, currently under construction!


Purpose

A search function allows to generate a subset out of a big number of items on ground of a user defined pattern. It usually can be applied to various sources and has several options for fine-tuning.

Supplemental to search is the filter function reduces the number of items. This operation works on the current list only and does not generate a new output. Filtering should be always instantaneous and must not interrupt the workflow.

Similar to filtering the operation might be used to highlight information. This preselection is a common feature in text processing and used to locate a particular piece of information without concealing the surrounding.

Guidelines

  • Provide filter function to shown content by default. Apply search using an extra dialog.

Filter


Input

  • Perform filter operations always instantaneously.
  • Make the operation as simple as possible. For instance, do not apply multi-dimensional filtering or do not use logical operators for input.
  • Run operation case insensitive, unless it is important.
  • Make input control large enough to show at least 20 characters.

Output

  • Make the filter result persistent until it is cleared explicitly. Users must not need to research after selecting or referencing an item.
  • Provide auto complete feature to the input based on previous operations.
  • Highlight matching results and jump to the first occurrence.

Appearance

  • Hide input control until users start the search.
Note
I'd prefer to show it always but actually that's not the current behaviour in general.
  • Hide the input control in case the filter is not the primary function of the app, but show a small button which indicates clearly the availability of the function.
  • Active the control and focus it on ctrl+F or when user clicks the icon.
  • Place the input control at the bottom of the content area.

Search


Input

  • Do not inherit artificial intelligence from users. Search operations have always be clear and comprehensible to users.
  • Show hints on how to use the search effectively.
  • Do fuzzy search by default, if applicable. That means extend the results by adding a wildcard to the item.
  • Run a combined AND search when two words have been entered unless the term is quoted (e.g. Hello World vs "Hello World")

Output

  • Show the search pattern at the header of the result list (e.g. "Search results for: <Hello World>")
  • Follow the guidelines on delayed operations if the search takes longer.
  • Provide paging/scrolling of results.

Appearance

  • Run search operation within an extra, modal dialog.

Best Practice