Closed Bug 951302 Opened 11 years ago Closed 11 years ago

Mask layers broken with basic compositor

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla29

People

(Reporter: mstange, Assigned: mstange)

References

Details

Attachments

(2 files)

Attached video screen capture
STR:

 1. Set layers.acceleration.disable = true and
    layers.offmainthreadcomposition.force-basic = true
 2. Go to the extensions list on about:addons.
 3. Scroll the list.

Stuff isn't erased properly, paints beyond the scroll box's bounds and generally looks broken.
Attached patch v1Splinter Review
The existing code ignored aMaskTransform completely. The NS_ASSERTION probably meant to check aMaskTransform but instead checked "matrix", which is the transform from sourceRect to aDestRect.

Scrolling changes the transform that the DrawTarget comes with. aMaskTransform seems to be relative to the window, so it looks like it should ignore any existing transform on the DrawTarget. That's why I replace the transform on the DrawTarget with aMaskTransform. The old transform is still used in the pattern transform.
Assignee: nobody → mstange
Status: NEW → ASSIGNED
Attachment #8349084 - Flags: review?(matt.woodrow)
Attachment #8349084 - Flags: review?(matt.woodrow) → review+
https://hg.mozilla.org/mozilla-central/rev/fff2e3ac46f0
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla29
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: