Closed Bug 28836 Opened 25 years ago Closed 25 years ago

div is not hidden and show correctly when it contains a GfxButtonControl

Categories

(Core :: CSS Parsing and Computation, defect, P3)

x86
Windows NT
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: rods, Assigned: attinasi)

Details

(Whiteboard: [PDT+] Fixed 2/24)

Attachments

(2 files)

No description provided.
making beta
Keywords: beta1
Target Milestone: M14
Attached file simple test case
buttons and selects cause it to not work radio, checkboxes and input text work fine
Putting on PDT+ radar for beta1. Can you give you an estimate on time needed to fix in the Status Summary please? Thanks!
Whiteboard: [PDT+]
So far I have seen that there is some sort of problem in resolving the style for the DIV AFTER the frames and style context's have been destroyed and while they are being recreated. The DIV's area frame is having its style resolved, but we find an existing style rule on one of the parent's children so we use that instead of creating a new one. More accurately, for the cases that fail, the call to FindChildWithRules inside of StyleSetImpl::GetContext is finding a child context, whereas in the cases that are OK there is no child context with matching rules. When I trace the StyleContextImpl's destruction it appears to be correct, so I don't understand yet why we are finding a child with matching rules. That's all I know so far... I have narrowed down the code where the symptoms appear. I'd guess it will take me another day to find and fix to underlying cause, so it should be closed by tomorrow evening.
Status: NEW → ASSIGNED
Actually, buttons appear to be the only thing that makes it not work... all other elements I have tried work fine.
Adding Est fix date to Status Whitboard
Whiteboard: [PDT+] → [PDT+]02/23 Est fix.
It is ollking like a ref-count problem on one of the style contexts for the input element (button). I am trying to figure out where it is occuring... I think it may be a problem with the parenting of the style contexts because the ref counts appear to be off, but additionally there is a strange child context I cannot yet account for that appears to be holding the lingering reference to the context. I bumped the estimated time to fix by a day.
Whiteboard: [PDT+]02/23 Est fix. → [PDT+]02/24 Est fix.
Additional info: if the control in the DIV is an HTML <BUTTON> it works fine. If it is a <SELECT> it is broken. Essentially, every case that fails involves a GfxButton, and if there is no GfxButton it appears to be fine...
Updated the summary to reflect the latest findings...
Summary: div is not hidden and show correctly depending on what it contains → div is not hidden and show correctly when it contains a GfxButtonControl
Fixed. A StyleContext was not being released and was causing the entire parentage to be retained and reused. I fixed it but found that pollman had already checked in the same fix for a seperate bug (bug 28691).
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Whiteboard: [PDT+]02/24 Est fix. → [PDT+] Fixed 2/24
Tested with 03-08-09, and it works fine. Used provided testcase attachments to verify. Marking verified.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: