Closed
Bug 16270
Opened 25 years ago
Closed 25 years ago
[dogfood] browser repaints twice when window resized
Categories
(SeaMonkey :: General, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
M11
People
(Reporter: mikepinkerton, Assigned: kmcclusk)
References
Details
(Whiteboard: [PDT-])
turn paint flashing on
make the window bigger
you see the whole window flash a multitude of times (>1, at least). i don't know
why we should reflow/repaint the main window more than once.
assigning to brendan because i have no idea who should own this bug.
Reporter | ||
Updated•25 years ago
|
Summary: browser repaints twice when window resized → [dogfood] browser repaints twice when window resized
Reporter | ||
Updated•25 years ago
|
Assignee: brendan → pinkerton
Reporter | ||
Comment 1•25 years ago
|
||
taking back, so i have all these bugs in one place.
Reporter | ||
Updated•25 years ago
|
Status: NEW → ASSIGNED
Reporter | ||
Comment 2•25 years ago
|
||
accepting
Reporter | ||
Comment 3•25 years ago
|
||
this happens even if the sidebar is closed. cc'ing shaver per his request.
Reporter | ||
Comment 5•25 years ago
|
||
reassigning to brendan since i'm going on vacation.
Comment 6•25 years ago
|
||
Bulk-reassigning pink's "paint" bugs.
/be
Kevin -- here's a paint bug. We'll load balance after the thursday meeting.
Assignee | ||
Updated•25 years ago
|
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
Target Milestone: M11
Assignee | ||
Comment 8•25 years ago
|
||
Fixed in Nov 2, 1999 4:52PM build.
I removed the nsHTMLFrameInnerFrame::Reflow's call to mWebShell->Repaint. The
repainting of the webshell is taken care of by the mWebShell->SetBounds call.
The SetBounds call results in a nsIWidget::Resize which will generate a NS_SIZE
event which the view manager will use to the root view's dimensions and perform
a ResizeReflow which will invalidate the window. The mWebShell->Repaint was
redundant and was causing the double paints of the content window in Mozilla.
Note: Paint flashing is done for invalidates, not paints. The window looks like
it is still being invalidated twice, but this is combined into a single paint. I
verified this by setting a break point in the debugger. I'm marking this bug
fixed because doing multiple invalidates is not a performance issue as long as
their combined into a single paint for the same region.
All of my work was on WIN32 but this bug was present on both Mac and WIN32 and
involved XP-CODE.
Reporter | ||
Comment 10•25 years ago
|
||
actually on both mac and linux, paint flashing flashes on _paint_ not on
invalidate.
Assignee | ||
Comment 11•25 years ago
|
||
That's true on WIN32 as well. I was mistaken. I was getting multiple paint
flashes but only a single paint message so I wrongly assumed that the flashing
was being done on invalidates. It turns out that On WIN32 paint messages are
generated for child widgets associated with each webshell. These paint messages
are not processed so their is very little overhead. If I filter these paint
messages out, paint flashing gives a much more accurate picture of what is being
refreshed. It turns out there are very few places that we are actually
repainting more than we need to.. Work needs to be done on Linux and Mac
to filter out the "paint flashing" noise.
Comment 12•25 years ago
|
||
a paint of a child window is still a paint and is causing taking more cycles
than it needs to be. we shouldn't just ignore them, because they are
happening. we should fix them all together if possible.
Comment 14•25 years ago
|
||
Verified fixed MozMacM14 (2000022108) OS 9. Pink's "paint" plagues no more!
(Sorry, couldn't resist :)
Status: RESOLVED → VERIFIED
Updated•20 years ago
|
Product: Browser → Seamonkey
You need to log in
before you can comment on or make changes to this bug.
Description
•