On 28 February 2010 09:34, Aaron J. Seigo wrote: > On February 27, 2010, Miha Čančula wrote: > > I suggest that the history should be added as just another runner. It > would > > show the last N used things when started, and then display a filtered > list > > when you write something. > > which does not address the issue of the interface by which to show such > history without getting in the way of actual results that match what is > currently being typed. > > Having separate lists for history and search results in the same widget is going to have usage problems, no matter what you do to invoke them. Information retrieval theory shows that the user doesn't care searching through history and searching through the list of pre-stored items, it's all the same. This is why you see unified interfaces popping up everywhere (Lancelot, Firefox Awesome bar, Mac Os X Spotlight, Gnome Do).
Every search function I've seen that does this right follows more or less the same pattern: 1- Down arrow on the empty text field shows either a list of recent searches, or the selected result in recent searches. The first item is selected and the text box is updated with the item content. (If the item contains a description, then the text field contains the command name) 2- Typing begins a search, showing results in the same list as in step 1 but filtered to match the typed characters. Results from history that match the characters are also shown in the list. 3- Down arrow moves to the first element in the list, and the text box is updated with the item content. The focus is ALWAYS on the text field. 4- Even if an item in the list is selected, typing new characters add them to the end of the current text field contents. 5- Tab is a synonym for the down arrow, they work exactly the same in every possible state. This works to avoid ambiguities. (An alternative is not to update the textfield content when pressing up&down, and having Tab to replace the field contents with the command for the current item). 6- Pressing the Up arrow when standing in the first item in the list restores the original characters, exactly how the user typed them (except after step 4, in which the content is the whole command name plus the last typed characters).
_______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel