Closed
Bug 855233
Opened 12 years ago
Closed 12 years ago
Image with opacity, border-radius covered by a positioned element disappears after hover (BasicLayers only)
Categories
(Core :: Layout, defect)
Core
Layout
Tracking
()
VERIFIED
FIXED
mozilla23
People
(Reporter: cork, Assigned: mattwoodrow)
References
()
Details
(Keywords: regression, testcase)
Attachments
(3 files)
Steps to reproduce:
1. Load the testcase
2. hover the image
3. blur the image
Actual results:
The image disappears
Expected results:
The image should go back to 0.8 opacity
In the regression range the image is never rendered. In the improvement range the image is shown on first render, but dispersal after hover (current state)
Regression:
Last good nightly: 2012-09-17
First bad nightly: 2012-09-18
Pushlog:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=3f0587ce1774&tochange=0d3b17a88d5f
Improvement:
Last bad nightly: 2012-09-24
First good nightly: 2012-09-25
Pushlog:
http://hg.mozilla.org/mozilla-central/pushloghtml?startdate=2012-09-25&enddate=2012-09-24
![]() |
||
Comment 2•12 years ago
|
||
Worksforme on Mac...
Assignee: nobody → matt.woodrow
Assignee | ||
Comment 3•12 years ago
|
||
This only reproduces with BasicLayers.
When the layer becomes inactive, mParameters.mOffset becomes non-zero and we were re-using the existing mask (with the incorrect transform).
With accelerated layers we are switching backend type, so that would force the required mask recreation.
I guess we could just update the transform on the mask if this changes, rather than rebuilding. I believe the same applies for the existing mXScale/mYScale though, so I just followed suit.
Attachment #733158 -
Flags: review?(ncameron)
Comment 4•12 years ago
|
||
Comment on attachment 733158 [details] [diff] [review]
Create a new mask if the offset changes
Review of attachment 733158 [details] [diff] [review]:
-----------------------------------------------------------------
::: layout/base/FrameLayerBuilder.cpp
@@ +682,5 @@
> // remain unchanged.
> nsTArray<FrameLayerBuilder::Clip::RoundedRect> mRoundedClipRects;
> // scale from the masked layer which is applied to the mask
> float mScaleX, mScaleY;
> + nsIntPoint mOffset;
please add a comment here
Attachment #733158 -
Flags: review?(ncameron) → review+
Summary: Image with opacity, border-radious covered by a positioned element disappears after hover → Image with opacity, border-radius covered by a positioned element disappears after hover (BasicLayers only)
Assignee | ||
Comment 5•12 years ago
|
||
Comment 6•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla23
Retested the testcases in todays nightly http://hg.mozilla.org/mozilla-central/rev/55f9e3e3dae7
Status: RESOLVED → VERIFIED
You need to log in
before you can comment on or make changes to this bug.
Description
•