Closed Bug 713552 Opened 13 years ago Closed 13 years ago

Add MacIOSurfaceImageBasic

Categories

(Core :: Graphics, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 715785

People

(Reporter: BenWa, Unassigned)

References

Details

Currently we only support MacIOSurfaceImageOGL. This leads to a lot of nasty conditional code, caused a big headache for async plugins and is about to get significantly worse with bug 90268 and off main thread compositing. This should also remove some XP_MACOSX specific logic. I'm suggesting that we implement MacIOSurfaceImageBasic to make plugins work more informally. This will remove nasty code like: http://mxr.mozilla.org/mozilla-central/source/layout/generic/nsObjectFrame.cpp#1567 as well as a problem with bug 90268 where mObjectFrame is null during shutdown at: http://mxr.mozilla.org/mozilla-central/source/dom/plugins/base/nsPluginInstanceOwner.cpp#259 as well as letting plugins with OMTC under Basic work the same way as in OGL. I image that having MacIOSurfaceImageBasic should be beneficially for mac users that don't get hardware acceleration as well. Matt was there a reason why MacIOSurfaceImageBasic was never implemented or was it just that we there wasn't a need at the time?
I don't remember the exact reason why we made this GL layers only, cc'ing roc. Why would it perform better with BasicLayers? The advantage we get with OpenGL is avoiding a readback/upload. Afaik, we can still only do this when we have Async Rendering, so the majority of the checks in the linked function still need to be there.
(In reply to Matt Woodrow (:mattwoodrow) from comment #1) > Why would it perform better with BasicLayers? The advantage we get with > OpenGL is avoiding a readback/upload. We have to readback into a basic thebes layer for basic which would be no worse then having a MacIOSurfaceImageBasic. It should give us the benefit of being able to have an active layer. > > Afaik, we can still only do this when we have Async Rendering, so the > majority of the checks in the linked function still need to be there. We have plugin layers for sync layer rendering on Mac. We're still hitting a small regression with async.
This has been rolled into bug 715785.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → DUPLICATE
No longer blocks: omtc
Blocks: omtc
You need to log in before you can comment on or make changes to this bug.