Closed Bug 12234 Opened 25 years ago Closed 23 years ago

make vertical scrollbar for web pages visible always

Categories

(Core :: Layout, defect, P3)

defect

Tracking

()

VERIFIED DUPLICATE of bug 72540
mozilla0.9.6

People

(Reporter: karnaze, Assigned: hyatt)

References

()

Details

(Keywords: perf, topperf)

Troy, about 6 weeks ago in your absence we (Peter, Rick, Vidur, Kevin, et al) discussed the fact that we should be optimizing for long documents instead of short ones. The following table will get get 2 reflows, one without a scroll bar and then one with. It would be more optimal to do it the other way around. I realize this causes some problems when the document is close to fitting without a scroll bar, but in those cases it is probably not a big deal to just show the scroll bar. This optimization would help large documents and especially those with tables. In the case of tables with percentage specified widths, columns, or cells, the win is much bigger, since the columns don't have to be rebalanced a 2nd time. <table border height=1000> <tr> <td>hello</td> </tr> </table>
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → REMIND
We do assume we'll need the scrollbar when doing the initial reflow. I suspect that what's happening is that the initial reflow is just an empty body and then we get an append which is where the table is added Incremental reflow assumes the current scenario is (no scrollbar vs. scrollbar), and it has to, because an incremental reflow shouldn't change the display width. If it did then it would also be a resize reflow and that would cause problems Things may get better when the content sink is changed to not buffer so much and get things displayed quickly Another possibility is that we use a mediator like mechanism to abort the reflow once we see we need a vertical scrollbar and then restart. That might help Marking it REMIND, because there is no immediate solution
Status: RESOLVED → VERIFIED
Reopening. The extra reflows are likely hurting our performance (versus Nav4.x and IE) on pages such as yahoo and others. The best approach would be to make the viewport scroll frame honor the following (overflow: scroll does work on a div). :viewport, :viewport-scroll, :canvas { overflow: scroll } That way, we could be like IE and always display the scroll bar and avoid a lot of extral reflows.
Status: VERIFIED → REOPENED
Keywords: perf, topperf
Resolution: REMIND → ---
Reassign to evaughan.
Assignee: troy → evaughan
Status: REOPENED → NEW
Keywords: mozilla0.9
It is worse than I thought. Instead of 2x the number of reflows, I'm seeing 3x in Viewer. I'm not sure that Troy's comments are reflecting what I am seeing. In the following html, I am seeing a fully constructed table get reflowed 3 times at 3 different available widths. <table border bgcolor=orange width=100%> <tr> <td>foo</td> </tr> </table> <div style="width:100px; height:700px; border:1px solid black">foo</div>
Eric is in the middle of some high-priority accessibility infrastructure work, targetting moz0.9.1
Target Milestone: --- → mozilla0.9.1
->moz0.9
Target Milestone: mozilla0.9.1 → mozilla0.9
Blocks: 71668
*** Bug 13371 has been marked as a duplicate of this bug. ***
Accessibility work is running late, pushing this to 0.9.1.
Target Milestone: mozilla0.9 → mozilla0.9.1
->hyatt, since EVaughan says Dave had a fix for this that didn't help things much, and so wasn't checked in.
Assignee: evaughan → hyatt
hyatt, could you post your patch here? the scrollbar jitters drive me nuts, and I'd love to just play around with it for a while.
What patch? I don't know what this bug is even about (or why it was given to me).
Trudelle wrote: > ->hyatt, since EVaughan says Dave had a fix for this that didn't help things > much, and so wasn't checked in. I think at one point you'd made it so that the vertical scrollbar is always displayed, regardless of whether it's required or not?
Status: NEW → ASSIGNED
Target Milestone: mozilla0.9.1 → mozilla0.9.3
Suspect this is Platform/OS All/All, marking so.
OS: Windows NT → All
Hardware: PC → All
Target Milestone: mozilla0.9.3 → mozilla0.9.4
Bug 94587 may be relevant (see the tail end of the 2001-08-10 09:44 comments).
Target Milestone: mozilla0.9.4 → mozilla0.9.5
Summary: reflow is optimized for short documents at the expense of long ones → make vertical scrollbar for web pages visible always
Target Milestone: mozilla0.9.5 → mozilla0.9.6
*** This bug has been marked as a duplicate of 72540 ***
Status: ASSIGNED → RESOLVED
Closed: 25 years ago23 years ago
Resolution: --- → DUPLICATE
v
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.