Closed Bug 87381 Opened 24 years ago Closed 24 years ago

BRS_ISINLINEINCRREFLOW schedules an extra dirty reflow

Categories

(Core :: Layout, defect, P4)

defect

Tracking

()

VERIFIED FIXED
mozilla0.9.3

People

(Reporter: waterson, Assigned: waterson)

Details

(Keywords: perf)

Attachments

(2 files)

...and I don't understand why. I've removed the code and done some smoketesting, and as far as I can tell it's completely vestigial. (This code dates back to some of buster's ``typing optimizations'' that I found to be rather impenetrable.) Anyway, I'll attach a patch that removes the code. If people could try the patch, or explain to me why we need the code, I'd appreciate it!
Status: NEW → ASSIGNED
Keywords: perf
Priority: -- → P4
Target Milestone: --- → mozilla0.9.3
Keywords: patch
Okay, I see why buster put this here, and I also see why I think it's vestigial. Reflows are only ever targeted at block frames (see the ReflowDirtyChild() method). So, how can we _ever_ end up with a reflow that's targeted at an inline? When the inline contains a text field, which contains a block frame for its magic <div> anonymous content. I'm dubious that this code is worth keeping in the tree. It obfuscates the fact that inline frames cannot be targeted for reflow. (It seems like a half-hearted attempt to begin generalizing the reflow system so that inline frames _could_ be individually targeted for reflow: the only situation in which we'd currently have a BRS_ISINLINEINCRREFLOW is when targeting reflow at a text widget, which IsIncrementalDamangeConstrained() detects, and bails us out of.) I move to strike it from the record. Thoughts?
> So, how can we _ever_ end up with a reflow that's targeted at an inline? > When the inline contains a text field, which contains a block frame for its > magic <div> anonymous content. I've just realized that this isn't the only case: <button> creates an area-frame, which is a block frame, and can therefor be the target of an incremental reflow.
So, the above test case seems to work fine without the extra dirty reflow. It has a button with an outrageous hover pseudo rule that dramatically changes the size of the button.
Looks good to me: [s]r=attinasi
r=rbs
Checked in.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Marking verified per last comments.
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: