Closed
Bug 18006
Opened 25 years ago
Closed
[M11 BLOCKER] [DOGFOOD] Can't set focus in empty GFX textareas
Categories
(Core :: DOM: Editor, defect, P1)
Core
DOM: Editor
Tracking
()
VERIFIED
FIXED
M11
People
(Reporter: kinmoz, Assigned: kinmoz)
References
Details
(Whiteboard: verify 11/8 build)
If I save the following HTML into a local file, then type in the URL to load it, I can't set focus inside the textarea. Any text I type goes into the URL bar. <html> <body> <form> <textarea rows=10 cols=20></textarea> </form> </body> </html> The wierd thing is that I can set the focus in textareas with content or blank textareas that have the attribute "wrap=hard" set.
with code pulled yesterday morning, I do not see this problem at all on WinNT with a debug build. If it's legit, then it's something that was introduced yesterday. Hyatt, Saari, did you guys know about anything that changed since early yesterday morning that might effect focus in this case?
Comment 2•25 years ago
|
||
To my knowledge, nothing changed that would have caused this. FYI, the only thing I've seen like this in my focus testing is the native Windows OS window for sidebar not accepting focus.
kipp@netscape.com checked in a change to the method nsContainerFrame::GetFrameForPointUsing() that corrects the algorithm used for selecting a frame that contains a point to fix bug #1413. mozilla/layout/html/base/src/nsContainerFrame.cpp revision 1.68 Before kipp's change, the call to GetFrameForPoint() in PresShell::HandleEvent() would always return the RootFrame's child AreaFrame which had a content node associated with it, so PresShell::HandleEvent() was able to call the content node's HandleDOMEvent() method. After kipp's change, GetFrameForPoint() returns the RootFrame, which has no content node associated with it when the content area is larger than the viewable area. This prevents us from calling HandleDOMEvent(), so the editor can't process the key. Kipp's change is okay, it just exposes the fact that our applications are not using the EventStateManager FocusedContent tracking mechanism. It looks like the EventStateManager's FocusedContent member is always NULL. This forces nsPresShell::HandleEvent() to send all events including KeyEvents, through the code that selects the frame to handle an event based on the Event's point. The point in a KeyEvent structure is meaningless, in fact it is always (0,0). Kipp has given me permission to back out his change for M11 so that we can get it out the door. After M11 branches, I will check his fix back in so that we can fix the problem properly.
I think you can get focus in the text field, but you have to click at the extreme left edge of the text control. That implies to me that the embedded webshell has been sized wrong, maybe 0 or 1 pixel wide, something dumb like that. I'll look into it. I think that clears saari/hyatt and any focus issues.
ah, just saw kin's note. sounds like he has a handle on it, assigning it to him. thanks, kin! you might want to change the summary to more accurately reflect what's going on here.
Updated•25 years ago
|
Severity: major → blocker
Priority: P2 → P1
Summary: [DOGFOOD] Can't set focus in empty GFX textareas → [M11 BLOCKER] [DOGFOOD] Can't set focus in empty GFX textareas
Comment 7•25 years ago
|
||
I thought I had marked this one already -- setting as M11 blocker
well, you couldn't type a comment into the Additional Comments: field of bugzilla, because that's an empty textarea. You couldn't post to mozillazine or any other site that supported chat/feedback/talkback forms.
Comment 10•25 years ago
|
||
you can't easily select any text entry field -- for example, access bugzilla and try typing in some text.
Whiteboard: Waiting for code review approval from kipp@netscape.com
Assignee | ||
Comment 11•25 years ago
|
||
I checked in a change to mozilla/layout/html/base/src/nsContainerFrame.cpp revision 1.69 that backs out Kipp's fix for bug #1413 temporarily. I reenable his fix after M11 branches and either reopen this bug, or file a new one, with dependencies on a third bug that makes reference to the fact that the event manager is not tracking focus content changes in the editor or textareas.
Whiteboard: Waiting for code review approval from kipp@netscape.com
Assignee | ||
Comment 12•25 years ago
|
||
Cleared comment in whiteboard status field.
Comment 13•25 years ago
|
||
All you have to do to verify this bug is to load the following HTML: <html> <body> <form> <textarea rows=10 cols=20></textarea> </form> </body> </html> You won't be able to click in the textarea and type if the bug is still there.
Comment 14•25 years ago
|
||
linking to PDT+ tracking bug 12658
Comment 15•25 years ago
|
||
verified in 11/8 build.
Assignee | ||
Comment 16•25 years ago
|
||
This bug needs to be re-verified. Fix checked into tip: mozilla/layout/html/base/src/nsContainerFrame.cpp revision: 1.73 Modified Kipp's fix for #1413 so that nsContainerFrame::GetFrameForPointUsing() looks through any outside children even if it finds a normal child containing aPoint. r=joki@netscape.com
Comment hidden (collapsed) |
You need to log in
before you can comment on or make changes to this bug.
Description
•