typeahead find UI has insufficient feedback, is generally incomprehensible

VERIFIED INVALID

Status

SeaMonkey
Find In Page
VERIFIED INVALID
16 years ago
10 years ago

People

(Reporter: Jamie Zawinski, Assigned: Aaron Leventhal)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

16 years ago
Can you please get typeahead-find to be rewritten by someone who has used emacs?
 Or any other application that has incremental search?  Because the way it works
now is just awful.  And it's *uniquely* awful, since nothing else I've ever seen
works this way.  It *could* be a lot more convenient than the regular Find
dialog, but it's not, because it's so confusing.

Let's start from the top.

  - I want to search for the word "xinerama" in a document that does not
    contain that word (but does contain the characters "xin".)

  - I type "/" to start searching.

  - there is ABSOLUTELY NO FEEDBACK that I am in search-mode now!
    If you're going to change the interpretation of the keys I type,
    you need to flag it somehow!  At least print "Search:" in the
    message area or something.

  - I type "xinerama".  I touch type, so I type it fast.  I am looking at
    the scrolling document as I type this, because I'm looking for the 
    text I'm on the hunt for: I am *not* looking down at the message area.

    In half a second, I'm done typing the word, and I see that I'm not looking
    at a match, so then I look down at the bottom of the screen, where it says
    "Type ahead find stopped."

    Uh, what happened?  Why did it stop?  I have no idea.

  - So I type again, slowly this time, so I can try and diagnose what goofy
    behavior I'm seeing:

    I type:     message area shows:
     /             (nothing)
     x             Text found: x
     i             Text found: xi
     n             Text found: xin
     e             Text not found: xine
     r             Text not found: xinr
     a             Text not found: xina
     m             Type ahead find stopped.
     a             Type ahead find stopped.

WTF?  So in the half second it takes me to type the word "xinerama" I was
expected to notice that before the second-to-last character, the search stopped?

Without any feedback?

While letting me continue to type random uninterpreted characters at the window?

This is a simply horrible UI!  It's mind-blowingly wrongheaded.


Here's how it should work:

  - Typing / enters search mode.

    Starts searching from the point of the selection (if there is
    one) or from the topmost line visible in the window.  Searches
    wrap around.

    Displays a message to the effect that search mode is in effect.

    Hey, maybe it even pops up a window instead of using the
    message area, since there is *no other time* when one types
    into the message area.

  - any character: gets added to the search string.
    If the search string doesn't match, just keep adding characters to
    the (unmatched) search string, and leave the cursor at the point
    of the last match.

  - Backspace: removes a character from the search string.  If this
    causes an earlier match to match again, back up to that point.

  - CR or LF: search again, that is, search for the next match of the
    current search string.

  - ESC: exit search mode.

Any other behavior goes against god and man.


BTW, it's kind of goofy that the feature is called "typeahead find" by
the program, but the bug component is called "keyboard: find as you type."
I almost missed it.
(Reporter)

Comment 1

16 years ago
I should have said, for the purposes of what Backspace does, Return should be
considered part of the search string.  So if I search for "foo", then hit return
three times to go to the fourth match of "foo", hitting backspace should take me
back to the third match, then the second, and first, and only when I'm back at
the  first match should Backspace turn "foo" into "fo".

Comment 2

16 years ago
Hear, hear! I've added my vote to get this bug fixed.
there is ABSOLUTELY NO FEEDBACK that I am in search-mode now!
If you're going to change the interpretation of the keys I type,
you need to flag it somehow!  At least print "Search:" in the
message area or something.
  Verified working with ad-hoc testing.

Starts searching from the point of the selection (if there is
one) or from the topmost line visible in the window.  Searches
wrap around.
  Verified working on QA test I, functional test suite. 

Displays a message to the effect that search mode is in effect.
  Verified working with ad-hoc QA testing.

Backspace: removes a character from the search string.  If this
causes an earlier match to match again, back up to that point.
  Verified working on QA test H, functional test suite.

ESC: exit search mode.
  Verified working with ad-hoc QA testing.

BTW, it's kind of goofy that the feature is called "typeahead find" by
the program, but the bug component is called "keyboard: find as you type."
I almost missed it.
  Verified working, the new name is Find As You Type, as specified in docs and
various bugs

So, the only two bugs we have here are these:

- any character: gets added to the search string.
If the search string doesn't match, just keep adding characters to
the (unmatched) search string, and leave the cursor at the point
of the last match.

- CR or LF: search again, that is, search for the next match of the
current search string.

My gut says the last would be wontfix... but we can propose it anyways.

Anyhow. Spun off bugs 193926 for the search string issue. Bug 193928 is for the
CR/LF issue. One valid RFE, one RFE that will probably be wontfix, six
invalid/fixed bugs in one bug report.

-->INVALID.

Moving reporter, CC list members, and voters to other bugs.
Status: NEW → RESOLVED
Last Resolved: 16 years ago
Resolution: --- → INVALID
v
Status: RESOLVED → VERIFIED
Product: Core → SeaMonkey
You need to log in before you can comment on or make changes to this bug.