< Projects‎ | Usability‎ | HIG
Revision as of 13:40, 8 April 2014 by Htietze (Talk | contribs)

Jump to: navigation, search
Under construction.png
Under Construction
This is a new page, currently under construction!


A search function allows to generate a subset out of a big number of items on ground of a user defined pattern. The function is essential to find matching items in case of a extended list or if the position of target(s) is unknown, as well as when bulk operations should be executed to a subset. A search operation interrupts the 'predefined workflow' and bypass core functions to a user-defined data set.

Supplemental to search is the filter function which rather reduces a given number of items than generating an output. Filtering should be always instantaneous.


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



  • 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.


  • 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.


  • Hide input control until users start the search.
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.



  • 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")


  • 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.


  • Run search operation within an extra, modal dialog.

Best Practice

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V.Legal