Ticket #467 (closed enhancement: fixed)

Opened 5 years ago

Last modified 5 years ago

Add option to enable/disable incremental (key-by-key) search

Reported by: EricShulman Owned by: FND
Priority: major Milestone: 2.4
Component: core Version:
Severity: medium Keywords:
Cc:

Description (last modified by FND) (diff)

The core's search input field currently invokes the search processing as soon as the user stops typing for more than 500ms or they press the ENTER key. When a TW document contains many tiddlers, this incremental key-by-key search can incur considerable overhead, both for searching the store area, and then subsequently displaying the matching tiddlers.

In addition, while incremental searches CAN be a very powerful feature, it can also be very distressing to many users who are very familiar with online search engines, which typically do NOT submit the search until the ENTER key (or a "go" button) is pressed. This allows them to take their time when composing their search term, without concern for how fast they may be typing or if they pause for a moment.

 SearchOptionsPlugin addresses this by adding an option chkIncrementalSearch, which is then used in config.macros.search.onKeyPress() to bypass the automatic triggering of the search.

Currently, the default setting for this option is chkIncrementalSearch == TRUE, so that the standard core key-by-key behavior is triggered unless the plugin-defined feature is explicitly enabled by the user.

If this option is added to the core, it might be advisable to set chkIncrementalSearch == FALSE by default, so that the more typical "type your search term, then press ENTER" behavior is used. However, as this would be a user-level change from the current behavior, I think we should "ask the community" what they prefer. My sense is that, unless there is serious objection, setting chkIncrementalSearch == FALSE by default makes good sense.

Attachments

ticket467.patch Download (1.3 KB) - added by FND 5 years ago.

Change History

Changed 5 years ago by FND

  • priority changed from undefined to major
  • description modified (diff)
  • severity changed from undefined to medium

FWIW, I agree that chkIncrementalSearch should be false by default.

Changed 5 years ago by MartinBudden

  • owner JeremyRuston deleted

Changed 5 years ago by MartinBudden

  • milestone changed from 2.3.1 to 2.5

Changed 5 years ago by FND

Changed 5 years ago by FND

  • owner set to FND
  • status changed from new to assigned
  • milestone changed from 2.5 to 2.4

Changed 5 years ago by JeremyRuston

  • status changed from assigned to closed
  • resolution set to fixed

I've implemented this patch in changeset:4613 with two changes:

- the option is called chkIncrementalSearch for consistency with the other search options - I've kept the default as chkIncrementalSearch = true for consistency with current behaviour, and to avoid making a big user-visible change in a late beta

Note: See TracTickets for help on using tickets.