Closed
Bug 15170
Opened 26 years ago
Closed 26 years ago
[GFX]Clicking on different field names doesn't change entries
Categories
(Core :: Layout: Form Controls, defect, P3)
Core
Layout: Form Controls
Tracking
()
VERIFIED
FIXED
M11
People
(Reporter: paulmac, Assigned: pollmann)
Details
Attachments
(2 files)
312 bytes,
text/html
|
Details | |
2.99 KB,
patch
|
Details | Diff | Splinter Review |
In Wallet Contents, clicking on the different Field Names doesn't change the
Entries for Field field.
I just went to the amazon sample page, filled in a bunch of stuff, captured the
form then went to Wallet Contents. Only home.city entry, sunnyvale for :-) is
shown, no matter what Field Name I click on.
Updated•26 years ago
|
Status: NEW → ASSIGNED
Target Milestone: M10
Comment 1•26 years ago
|
||
DAMMMM!!! This was working. Somebody changed something in the infrastructure.
I'll generate a simply test case.
Marking this as M10 because this sounds like a serious regression, not just for
wallet but probably for other things as well.
Comment 2•26 years ago
|
||
OK, I have a simple test case that demonstrates this. The following content
displays two select lists containing two values in each. The first list has a
size of 2 so both values are always displayed. The second has no size so it
drops down each time it is selected. Clicking on values in the second list
cause the ONCHANGE hander to be executed which is the correct behavior (message
gets printed on the console). However the ONCHANGE handler does not get
executed when clicking on values in the first list.
<HTML>
<HEAD>
<SCRIPT>
function Changed() {
dump("Got a change\n");
}
</SCRIPT>
<BODY>
<FORM>
<TABLE>
<TR>
<TD>
<SELECT size='2' ONCHANGE=top.Changed();>
<option>first</option>
<option>second</option>
</SELECT>
<SELECT ONCHANGE=top.Changed();>
<option>first</option>
<option>second</option>
</SELECT>
</TD>
</TR>
</TABLE>
</FORM>
<BODY>
</HTML>
Updated•26 years ago
|
Assignee: morse → harishd
Status: ASSIGNED → NEW
Eric, could you take a look at this. The content model looks correct.
html refcount=3<
head refcount=2<
Text refcount=2<\n >
script refcount=3<
Text refcount=2<\r\n function Changed() {\r\n dump("Got a change\n
");\r\n }\r\n >
>
>
Text refcount=3<\n \n >
body refcount=3<
Text refcount=3<\n >
form refcount=5<
Text refcount=3<\n >
select size=2 onchange=top.Changed(); refcount=6<
option refcount=4<
Text refcount=3<first>
>
option refcount=4<
Text refcount=3<second>
>
>
Text refcount=3<\n >
select onchange=top.Changed(); refcount=7<
option refcount=4<
Text refcount=3<first>
>
option refcount=4<
Text refcount=3<second>
>
>
Text refcount=3<\n \n\n>
>
>
>
Assignee | ||
Comment 4•26 years ago
|
||
Onchange seems to have been broken for selects. Have either of you made changes
there lately?
Status: NEW → ASSIGNED
Assignee | ||
Updated•26 years ago
|
Severity: normal → major
Component: Autofill → HTML Form Controls
Summary: Clicking on different field names doesn't change entries → [GFX]Clicking on different field names doesn't change entries
Assignee | ||
Comment 5•26 years ago
|
||
This is a GFX specific bug. The ListControlFrame isn't sending onchange
notifications, but Native widgets are working for me in viewer. I'm attaching
Steve's testcase.
Assignee | ||
Comment 6•26 years ago
|
||
Assignee | ||
Comment 7•26 years ago
|
||
The handler gets called through this path
nsListControlFrame::MouseUp
nsComboboxControlFrame::ListWasSelected
nsComboboxControlFrame::UpdateSelection
nsComboboxControlFrame::SelectionChanged
The problem is we are no longer getting mouse up events in the drop down list
box of a combo box because it is hidden on a mouse down. Was this behaviour
changed recently?
Comment 8•26 years ago
|
||
what is the latest on this? fixable in the next day or two?
Assignee | ||
Comment 9•26 years ago
|
||
Probably. I'm looking at it now.
Assignee | ||
Comment 10•26 years ago
|
||
I have a fix for this working in my local tree. It needs some polishing,
testing, and a code review before I'm ready for a checkin.
Note that the onchange is still not being sent for comboboxes on Linux because
they are being rolled up on mouse down's instead of mouse up's. I'll see if I
can kill both of these birds with one stone.
Comment 11•26 years ago
|
||
Is this checked in yet? If not, will take only if there is one more re-spin for
M10. We'll keep ya posted, and on M10 til we know.
Assignee | ||
Comment 12•26 years ago
|
||
No, this is not in yet. The solution I came up with fails in one border case
(multiple selects, selecting with shift held down, might receive an extra
onChange event). If you want this solution anyway, I'm attaching the diff.
Otherwise, I'm rewriting this to function just like the native onChange
detection worked and will be done this evening.
Assignee | ||
Comment 13•26 years ago
|
||
Assignee | ||
Comment 14•26 years ago
|
||
The "Combo boxes not working on Linux" bug was a little over my head. I gave it
to Pavlov. See it here at bug 15537. I've not got onchange working everywhere
<SELECT> works. Still need to do the testing/reviewing thing before checking
in.
Assignee | ||
Comment 15•26 years ago
|
||
s/not/now/ Geez. They do work. :)
Assignee | ||
Updated•26 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 16•26 years ago
|
||
I just checked in a fix. To verify, pull up Steve's attached test case. Click
on 'second' in the left list box. You should see "Change!" written to the
console.
This is the change:
http://cvs-mirror.mozilla.org/webtools/bonsai/cvsquery.cgi?module=SeaMonkeyAll&branch=HEAD&cvsroot=/cvsroot&date=explicit&mindate=939166854&maxdate=939166995&who=pollmann%25netscape.com
Reporter | ||
Updated•26 years ago
|
Status: RESOLVED → REOPENED
Reporter | ||
Comment 17•26 years ago
|
||
Well I verified that the test case works in the M10 candidate builds.
Unfortunately, the bug that it was originally filed for, dealing with Wallet
Contents, can't be tested because I'm now crashing when I go to
Edit/Wallet/Wallet Contents. Might be related? I'm re-opening the bug for
investigation. Note, the last M10 builds, from Sunday night, do not have the
crash.
Perhaps this change should be backed out of the M10 branch.
Here is the stack trace:
Call Stack: (Signature = nsListControlFrame::DisplaySelected ebefe8d7)
nsListControlFrame::DisplaySelected
[d:\builds\seamonkey\mozilla\layout\html\forms\src\nsListControlFrame.cpp, line
545]
nsListControlFrame::SetContentSelected
[d:\builds\seamonkey\mozilla\layout\html\forms\src\nsListControlFrame.cpp, line
1220]
nsListControlFrame::Reset
[d:\builds\seamonkey\mozilla\layout\html\forms\src\nsListControlFrame.cpp, line
1339]
nsListControlFrame::Init
[d:\builds\seamonkey\mozilla\layout\html\forms\src\nsListControlFrame.cpp, line
981]
nsCSSFrameConstructor::InitializeScrollFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4038]
nsCSSFrameConstructor::ConstructSelectFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 2950]
nsCSSFrameConstructor::ConstructFrameByTag
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 3060]
nsCSSFrameConstructor::ConstructFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4869]
nsCSSFrameConstructor::ProcessChildren
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 7987]
nsCSSFrameConstructor::ConstructTableCellFrameOnly
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1771]
nsCSSFrameConstructor::ConstructTableCellFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1682]
nsCSSFrameConstructor::ConstructFrameByDisplayType
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4411]
nsCSSFrameConstructor::ConstructFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4899]
nsCSSFrameConstructor::TableProcessChild
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1853]
nsCSSFrameConstructor::TableProcessChildren
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1827]
nsCSSFrameConstructor::ConstructTableRowFrameOnly
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1572]
nsCSSFrameConstructor::ConstructTableRowFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1521]
nsCSSFrameConstructor::ConstructFrameByDisplayType
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4404]
nsCSSFrameConstructor::ConstructFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4899]
nsCSSFrameConstructor::TableProcessChild
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1853]
nsCSSFrameConstructor::TableProcessChildren
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1827]
nsCSSFrameConstructor::ConstructTableGroupFrameOnly
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1472]
nsCSSFrameConstructor::ConstructTableGroupFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1367]
nsCSSFrameConstructor::ConstructTableFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 1106]
nsCSSFrameConstructor::ConstructFrameByDisplayType
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4370]
nsCSSFrameConstructor::ConstructFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4899]
nsCSSFrameConstructor::ProcessChildren
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 7987]
nsCSSFrameConstructor::ConstructFrameByTag
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 3153]
nsCSSFrameConstructor::ConstructFrame
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 4869]
nsCSSFrameConstructor::ContentAppended
[d:\builds\seamonkey\mozilla\layout\html\style\src\nsCSSFrameConstructor.cpp,
line 5417]
StyleSetImpl::ContentAppended
[d:\builds\seamonkey\mozilla\layout\base\src\nsStyleSet.cpp, line 864]
PresShell::ContentAppended
[d:\builds\seamonkey\mozilla\layout\html\base\src\nsPresShell.cpp, line 1724]
nsDocument::ContentAppended
[d:\builds\seamonkey\mozilla\layout\base\src\nsDocument.cpp, line 1575]
nsHTMLDocument::ContentAppended
[d:\builds\seamonkey\mozilla\layout\html\document\src\nsHTMLDocument.cpp, line
1044]
HTMLContentSink::NotifyBody
[d:\builds\seamonkey\mozilla\layout\html\document\src\nsHTMLContentSink.cpp,
line 276]
HTMLContentSink::WillInterrupt
[d:\builds\seamonkey\mozilla\layout\html\document\src\nsHTMLContentSink.cpp,
line 1770]
CNavDTD::WillInterruptParse
[d:\builds\seamonkey\mozilla\htmlparser\src\CNavDTD.cpp, line 3116]
nsParser::ResumeParse
[d:\builds\seamonkey\mozilla\htmlparser\src\nsParser.cpp, line 958]
nsParser::Parse
[d:\builds\seamonkey\mozilla\htmlparser\src\nsParser.cpp, line 805]
nsHTMLDocument::ScriptWriteCommon
[d:\builds\seamonkey\mozilla\layout\html\document\src\nsHTMLDocument.cpp, line
1834]
nsHTMLDocument::Write
[d:\builds\seamonkey\mozilla\layout\html\document\src\nsHTMLDocument.cpp, line
1847]
NSHTMLDocumentWrite
[d:\builds\seamonkey\mozilla\dom\src\html\nsJSHTMLDocument.cpp, line 1154]
js_Invoke
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 672]
js_Interpret
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 2250]
js_Invoke
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 692]
js_Interpret
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 2250]
js_Invoke
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 692]
js_Interpret
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 2250]
js_Invoke
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 692]
js_InternalCall
[d:\builds\seamonkey\mozilla\js\src\jsinterp.c, line 765]
JS_CallFunction
[d:\builds\seamonkey\mozilla\js\src\jsapi.c, line 2652]
nsJSContext::CallFunction
[d:\builds\seamonkey\mozilla\dom\src\base\nsJSEnvironment.cpp, line 234]
nsJSEventListener::HandleEvent
[d:\builds\seamonkey\mozilla\dom\src\events\nsJSEventListener.cpp, line 107]
nsEventListenerManager::HandleEvent
[d:\builds\seamonkey\mozilla\layout\events\src\nsEventListenerManager.cpp, line
1032]
GlobalWindowImpl::HandleDOMEvent
[d:\builds\seamonkey\mozilla\dom\src\base\nsGlobalWindow.cpp, line 2791]
nsWebShell::OnEndDocumentLoad
[d:\builds\seamonkey\mozilla\webshell\src\nsWebShell.cpp, line 3403]
nsDocLoaderImpl::FireOnEndDocumentLoad
[d:\builds\seamonkey\mozilla\webshell\src\nsDocLoader.cpp, line 889]
nsDocLoaderImpl::OnStopRequest
[d:\builds\seamonkey\mozilla\webshell\src\nsDocLoader.cpp, line 768]
nsLoadGroup::SubGroupIsEmpty
[d:\builds\seamonkey\mozilla\netwerk\base\src\nsLoadGroup.cpp, line 122]
nsLoadGroup::RemoveChannel
[d:\builds\seamonkey\mozilla\netwerk\base\src\nsLoadGroup.cpp, line 607]
nsInputStreamChannel::OnStopRequest
[d:\builds\seamonkey\mozilla\netwerk\base\src\nsInputStreamChannel.cpp, line
331]
nsOnStopRequestEvent::HandleEvent
[d:\builds\seamonkey\mozilla\netwerk\base\src\nsAsyncStreamListener.cpp, line
283]
nsStreamListenerEvent::HandlePLEvent
[d:\builds\seamonkey\mozilla\netwerk\base\src\nsAsyncStreamListener.cpp, line
153]
PL_HandleEvent
[plevent.c, line 542]
Comment 18•26 years ago
|
||
Clearing Fixed resolution due to reopen.
Reporter | ||
Comment 19•26 years ago
|
||
Just to clarify, this is crashing on both builds from Wednesday,
ftp://sweetlou/products/client/seamonkey/windows/32bit/x86/1999-10-06-16-M10/
ftp://sweetlou/products/client/seamonkey/windows/32bit/x86/1999-10-06-19-M10/
but not on
ftp://sweetlou/products/client/seamonkey/windows/32bit/x86/1999-10-03-20-M10/
Comment 20•26 years ago
|
||
Moving to M11. paulmac, please Release Note for M10 at:
http://bugzilla.mozilla.org/show_bug.cgi?id=14872
Assignee | ||
Updated•26 years ago
|
Status: REOPENED → ASSIGNED
Assignee | ||
Comment 21•26 years ago
|
||
I'm removing this code from M11, and replacing it with improved logic, see bug
15841. I'll close this bug out when 15841 is fixed.
Assignee | ||
Updated•26 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 26 years ago → 26 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 22•26 years ago
|
||
Closing this out, shouldn't crash here anymore.
Reporter | ||
Updated•26 years ago
|
Status: RESOLVED → VERIFIED
Reporter | ||
Comment 23•26 years ago
|
||
verified
You need to log in
before you can comment on or make changes to this bug.
Description
•