Hi,
This is the "issueformation" (combination of the words "issue" and "transformation") of the PR #6484:
Rationale
Suppose one wishes to find multiple texts from different applications. Currently, in order to find new text in any application that supports cursor manager, users must enter the new text. In case users may wish to find something they've searched before, a search history in the form of a combo box should be provided.
Steps to reproduce:
- Open multiple document windows (web browsers, PDF documents, several Word documents and such), all with browse mode turned on.
- While using one of them, press Control+NVDA+F to open Find dialog.
- Search for some text and press Enter.
- Reopen Find dialog (instead of using find next/previous command) and search for another text.
- Repeat step 4.
Actual behavior:
Users must enter new text again.
Expected behavior:
Users can choose items from search history.
System configuration:
NVDA Installed/portable/running from source:
Installed
NVDA version:
Alpha/future version
Windows version:
Windows 10 Version 1803
Name and version of other software in use when reproducing the issue:
N/A
Other information about your system:
N/A
Other questions:
Does the issue still occur after restarting your PC?
Yes
Have you tried any other versions of NVDA?
Yes (perpetual as this is a new feature)
Technical details
One way to implement this is via wx.ComboBox and hosting search history (a list/priority queue) inside Cursor Manager class (the base class, that is). When Find dialog opens, present this combo box with entries coming from search history list, with find next (NvDA+F3)/previous (NVDA+Shift+F3) searching the topmost item.
Special corner case: what if users type something that NVDA knows is already part of search history (the whole text, that is)? If so, bump this text to the top if it isn't.
Another case: suppose there is already an entry in search history and the user types the same entry that only differs in case. If so, the best path might be to compare the texts regardless of case, or if case sensitivity is turned on, just prepend the new variant.
For a code example, see StationPlaylist Studio add-on.
Thanks.
Hi,
This is the "issueformation" (combination of the words "issue" and "transformation") of the PR #6484:
Rationale
Suppose one wishes to find multiple texts from different applications. Currently, in order to find new text in any application that supports cursor manager, users must enter the new text. In case users may wish to find something they've searched before, a search history in the form of a combo box should be provided.
Steps to reproduce:
Actual behavior:
Users must enter new text again.
Expected behavior:
Users can choose items from search history.
System configuration:
NVDA Installed/portable/running from source:
Installed
NVDA version:
Alpha/future version
Windows version:
Windows 10 Version 1803
Name and version of other software in use when reproducing the issue:
N/A
Other information about your system:
N/A
Other questions:
Does the issue still occur after restarting your PC?
Yes
Have you tried any other versions of NVDA?
Yes (perpetual as this is a new feature)
Technical details
One way to implement this is via wx.ComboBox and hosting search history (a list/priority queue) inside Cursor Manager class (the base class, that is). When Find dialog opens, present this combo box with entries coming from search history list, with find next (NvDA+F3)/previous (NVDA+Shift+F3) searching the topmost item.
Special corner case: what if users type something that NVDA knows is already part of search history (the whole text, that is)? If so, bump this text to the top if it isn't.
Another case: suppose there is already an entry in search history and the user types the same entry that only differs in case. If so, the best path might be to compare the texts regardless of case, or if case sensitivity is turned on, just prepend the new variant.
For a code example, see StationPlaylist Studio add-on.
Thanks.