Closed Bug 921233 Opened 6 years ago Closed 6 years ago

Enable azure content for OSX main-thread

Categories

(Core :: Graphics, defect)

x86
macOS
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla27

People

(Reporter: mattwoodrow, Assigned: mattwoodrow)

References

Details

Attachments

(1 file, 2 obsolete files)

Attached patch azure-osx (obsolete) — Splinter Review
No description provided.
Attachment #810809 - Flags: review?(jmuizelaar)
Attached patch azure-osx (obsolete) — Splinter Review
Attachment #810809 - Attachment is obsolete: true
Attachment #810809 - Flags: review?(jmuizelaar)
Attachment #810813 - Flags: review?(jmuizelaar)
Attached patch azure-osxSplinter Review
Attachment #810813 - Attachment is obsolete: true
Attachment #810813 - Flags: review?(jmuizelaar)
Attachment #810973 - Flags: review?(jmuizelaar)
Assignee: nobody → matt.woodrow
Comment on attachment 810973 [details] [diff] [review]
azure-osx

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

::: gfx/layers/opengl/ThebesLayerOGL.cpp
@@ +775,5 @@
>        NS_ASSERTION(result.mRegionToDraw == drawRegionCopy,
>            "BeginUpdate should always modify the draw region in the same way!");
>        FillSurface(onBlack, result.mRegionToDraw, nsIntPoint(0,0), gfxRGBA(0.0, 0.0, 0.0, 1.0));
>        FillSurface(onWhite, result.mRegionToDraw, nsIntPoint(0,0), gfxRGBA(1.0, 1.0, 1.0, 1.0));
> +      if (gfxPlatform::GetPlatform()->SupportsAzureContentForType(BACKEND_COREGRAPHICS)) {

Shouldn't this be a generic using Azure check instead of COREGRAPHICS specific?

@@ +833,5 @@
> +  if (mTexImage->GetContentType() == GFX_CONTENT_COLOR_ALPHA) {
> +    result.mContext->SetOperator(gfxContext::OPERATOR_CLEAR);
> +    result.mContext->Paint();
> +    result.mContext->SetOperator(gfxContext::OPERATOR_OVER);
> +  }

Why did this need to move?
Attachment #810973 - Flags: review?(jmuizelaar) → review+
(In reply to Jeff Muizelaar [:jrmuizel] from comment #3)
> Comment on attachment 810973 [details] [diff] [review]
> azure-osx
> 
> Review of attachment 810973 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> ::: gfx/layers/opengl/ThebesLayerOGL.cpp
> @@ +775,5 @@
> >        NS_ASSERTION(result.mRegionToDraw == drawRegionCopy,
> >            "BeginUpdate should always modify the draw region in the same way!");
> >        FillSurface(onBlack, result.mRegionToDraw, nsIntPoint(0,0), gfxRGBA(0.0, 0.0, 0.0, 1.0));
> >        FillSurface(onWhite, result.mRegionToDraw, nsIntPoint(0,0), gfxRGBA(1.0, 1.0, 1.0, 1.0));
> > +      if (gfxPlatform::GetPlatform()->SupportsAzureContentForType(BACKEND_COREGRAPHICS)) {
> 
> Shouldn't this be a generic using Azure check instead of COREGRAPHICS
> specific?

CreateDrawTargetForUpdateSurface is only implemented for quartz surfaces currently, so it would crash for any other types.

> 
> @@ +833,5 @@
> > +  if (mTexImage->GetContentType() == GFX_CONTENT_COLOR_ALPHA) {
> > +    result.mContext->SetOperator(gfxContext::OPERATOR_CLEAR);
> > +    result.mContext->Paint();
> > +    result.mContext->SetOperator(gfxContext::OPERATOR_OVER);
> > +  }
> 
> Why did this need to move?

It didn't need to really, but we were calling ClipToRegion twice previously, and this now matches ContentClientIncremental better.
https://hg.mozilla.org/mozilla-central/rev/b83627cebdcd
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
Depends on: 923309
You need to log in before you can comment on or make changes to this bug.