Closed
Bug 215024
Opened 21 years ago
Closed 13 years ago
Conflict between FAYT (Find As You Type) and javascript (key events)
Categories
(SeaMonkey :: Find In Page, defect)
SeaMonkey
Find In Page
Tracking
(Not tracked)
RESOLVED
DUPLICATE
of bug 276295
People
(Reporter: vincent-moz, Unassigned)
References
(Depends on 1 open bug, )
Details
(Keywords: helpwanted)
User-Agent: Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.5b) Gecko/20030803
Build Identifier: Mozilla/5.0 (X11; U; Linux ppc; en-US; rv:1.5b) Gecko/20030803
Characters typed during a type ahead find are also seen as key events by
javascript; this may lead to unwanted behavior.
Reproducible: Always
Steps to Reproduce:
1. Open the above URL.
2. Type "/r" (to search for a word containing a "r").
Actual Results:
As soon as "r" is typed, the web page
http://citeseer.nj.nec.com/nrelated/1719612/353735 is opened, because the
original web page has a JS function that opens web pages on some key presses
(this is what I guess after looking at the source).
Expected Results:
As typing "r" occurred in a FAYT context, this event shouldn't have been passed
to javascript code, i.e. Mozilla should behave as if there were no JS.
Comment 1•21 years ago
|
||
Confirming on 2003080304 WinXP.
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Linux → All
Hardware: Macintosh → All
Comment 2•21 years ago
|
||
You have to call event.preventDefault() on key events you don't want FAYT to get.
See the testcase attachment in bug 167921
*** This bug has been marked as a duplicate of 167921 ***
Status: NEW → RESOLVED
Closed: 21 years ago
Resolution: --- → DUPLICATE
Reporter | ||
Comment 3•21 years ago
|
||
Reopening: I want the opposite. I complain because a web page is stealing
keypresses for FAYT. Mozilla shouldn't allow this.
Status: RESOLVED → REOPENED
Resolution: DUPLICATE → ---
Comment 4•20 years ago
|
||
(In reply to comment #3)
> Reopening: I want the opposite. I complain because a web page is stealing
> keypresses for FAYT. Mozilla shouldn't allow this.
Yes it should. Web apps need to be able to decide what happens to their
keystrokes. We're just following the DOM by support event.preventDefault().
Reclosing.
Status: REOPENED → RESOLVED
Closed: 21 years ago → 20 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 5•20 years ago
|
||
No, look at what Mozilla does. When the user types '/', FAYT operation is
entered. If the user types '/a', Mozilla searches for 'a' (the first 'a' is
selected). Here, nothing else occurs. If the user types '/r', the first 'r' is
selected, but the 'r' is also used by Javascript. Using the 'r' for two
different operations at the same time is definitely a bug.
If the user wants the web application to process the 'r', he can just type 'r',
not '/r'. (Now, there should be an option to prevent web applications from
getting key events, and also a way to indicate that the default key events may
no longer be taken into account, i.e. the user needs to know what will happen
when he does something, but this is another problem.)
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Comment 6•20 years ago
|
||
Perhaps the fix is something like:
Don't let the web page see keysrokes once find as you type has been started. If
they want to use preventDefault() to keep Find As You Type from starting in the
first place, that's okay. But if thy're going to let / or ' or anything else
start FAYT, then FAYT would keep going.
This might be hard to fix -- we have to see the key events before they do, once
FAYT has begun. However, we only want to look at the keypress after they do if
we're determining whether we should start FAYT.
Reporter | ||
Comment 7•20 years ago
|
||
I agree, and yes, this would need to interpret key presses at two different
places, depending on the context. BTW, an improvement of the event processing
could have other benefits (I've noticed some race conditions in the focus
change, particularly annoying when the machine is very loaded).
Comment 8•20 years ago
|
||
I would approve of a fix that did what comment 6 said, as long as we were very
careful about regressions. FAYT is fairly stable these days.
Keywords: helpwanted
Comment 9•20 years ago
|
||
Still seeing this in 20041013, on a similar citeseer page. Strangely, CTRL-F
works fine, even though it brings up the same search bar working in almost the
same way in this version of Firefox.
Comment 10•19 years ago
|
||
User comment: I'd like this to be an option. It would be great if I could disable FAYT for gmail (so that 'C' does compose new mail etc). But I can see that in other cases, FAYT should take precedence.
Reporter | ||
Comment 11•19 years ago
|
||
Steve, for what you want, you can already disable FAYT when you start typing; then it will start only after some hotkey. See
http://www.mozilla.org/access/type-ahead/
http://kb.mozillazine.org/Accessibility.typeaheadfind
Comment 12•19 years ago
|
||
i'm not actually volunteering, but i agree w/ the reporter, and pages that do this (gmail) bother me. my choices are either turning off their feature (as i did for gmail) or not using the pages.
(i might actually do this, i need to talk to people and figure out how it might be done.)
bz: should this be as simple as changing the order of event dispatch so that taf is earlier (i.e. before content)?
QA Contact: bugzilla → timeless
Comment 13•19 years ago
|
||
taf should generally be after content. As in, content should be able to prevent taf.
Assignee | ||
Updated•16 years ago
|
Product: Core → SeaMonkey
Updated•16 years ago
|
Assignee: aaronleventhal → nobody
QA Contact: timeless → keyboard.fayt
Updated•15 years ago
|
Status: REOPENED → NEW
Comment 14•13 years ago
|
||
Possible duplicate of/related to Bug 276295.
Comment 15•13 years ago
|
||
> Possible duplicate of/related to Bug 276295.
Probably. Thanks for the heads up.
Status: NEW → RESOLVED
Closed: 20 years ago → 13 years ago
Depends on: 276295
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•