Temporary blank boxes on right and bottom while resizing browser window

RESOLVED FIXED in mozilla17

Status

()

Core
Layout: View Rendering
RESOLVED FIXED
5 years ago
4 years ago

People

(Reporter: BenWa, Assigned: mattwoodrow)

Tracking

({regression})

Trunk
mozilla17
regression
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 1 obsolete attachment)

(Reporter)

Description

5 years ago
I get a black bar while resizing that is similar to an async resize artifact.
(Reporter)

Comment 1

5 years ago
Approximate regression range:
hg.mozilla.org/mozilla-central/pushloghtml?fromchange=f89feda9d997&tochange=0678e3e84923
Keywords: regression
Here's a more precise description:

Black boxes appear (temporarily) to the right and bottom of a browser window while rapidly resizing it.
The regression range in mozilla-central nightlies is:

firefox-2012-08-13-03-05-32-mozilla-central
firefox-2012-08-14-03-05-21-mozilla-central

So far both Benoit and I have only tested on OS X 10.7.4.
I see a similar bug (and regression range) on OS X 10.6.8.  But in this case the boxes (to the right and bottom) are filled with junk/noise (they're not black).
Summary: Black bar while resizing on OS X → Temporary extra boxes to right and bottom while resizing browser window on OS X
Summary: Temporary extra boxes to right and bottom while resizing browser window on OS X → Temporary extra boxes on right and bottom while resizing browser window on OS X
Summary: Temporary extra boxes on right and bottom while resizing browser window on OS X → Temporary blank boxes on right and bottom while resizing browser window on OS X
I see exactly the same symptoms (and regression range) on OS X 10.8 as I do on 10.7.4.
(Reporter)

Comment 6

5 years ago
Here's the inbound regression range:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=038266727ddc&tochange=3dbfe7ede3d4
I've found the patch that caused/triggered this bug:

http://hg.mozilla.org/mozilla-central/rev/0ad204385022

 Bug 770000 - Call WillPaint and DidPaint from the refresh driver instead of the widget events. r=roc
author	Matt Woodrow <mwoodrow@mozilla.com>
	Mon Aug 13 22:10:11 2012 +1200 (at Mon Aug 13 22:10:11 2012 +1200)
Blocks: 770000
(Assignee)

Comment 8

5 years ago
Created attachment 653213 [details] [diff] [review]
Repaint layers when the view size changes

This happens when we resize the widget/view but don't get a refresh driver tick before we attempt to composite again.

This just forces us to repaint the retained layers synchronously so that this doesn't happen.
Attachment #653213 - Flags: review?(roc)
Attachment #653213 - Flags: review?(roc) → review+
(Assignee)

Comment 9

5 years ago
Created attachment 653242 [details] [diff] [review]
Repaint layers when the view size changes v2

The previous patch caused painting during reflow with associated assertions.

This delays the forced paint until we attempt to composite.
Attachment #653213 - Attachment is obsolete: true
Attachment #653242 - Flags: review?(roc)
Comment on attachment 653242 [details] [diff] [review]
Repaint layers when the view size changes v2

Review of attachment 653242 [details] [diff] [review]:
-----------------------------------------------------------------

::: view/src/nsViewManager.cpp
@@ +338,5 @@
>    }
>  
> +  nsIWidget *widget = aView->GetWidget();
> +  if (!widget) {
> +    return;

I think the new code should be inside "if (widget)" instead of bailing out here whenever there's no widget.
(Assignee)

Comment 11

5 years ago
We just crash inside PresShell::Paint if we do that - see bug 770424
Attachment #653242 - Flags: review?(roc) → review+
(Assignee)

Comment 12

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/2a39d3361d72
Assignee: nobody → matt.woodrow

Updated

5 years ago
Blocks: 783791
Component: Widget: Cocoa → Layout: View Rendering
OS: Mac OS X → All
Hardware: x86 → All
Summary: Temporary blank boxes on right and bottom while resizing browser window on OS X → Temporary blank boxes on right and bottom while resizing browser window
Version: unspecified → Trunk
https://hg.mozilla.org/mozilla-central/rev/2a39d3361d72
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
(Reporter)

Updated

5 years ago
Blocks: 797431
Depends on: 805745

Updated

4 years ago
No longer depends on: 805745

Updated

4 years ago
Depends on: 793983
Depends on: 805745

Updated

4 years ago
No longer depends on: 805745
Depends on: 805745
You need to log in before you can comment on or make changes to this bug.