Back out 37c7fcfdb186 (bug 885580) on suspicion of causing linux32 Cipc timeouts

This commit is contained in:
Phil Ringnalda 2013-06-26 23:21:15 -07:00
parent 59939e8ef8
commit c509981eb8
6 changed files with 13 additions and 20 deletions

View File

@ -5,7 +5,6 @@
#include "mozilla/layers/Compositor.h"
#include "mozilla/layers/Effects.h"
#include "mozilla/layers/CompositorParent.h"
namespace mozilla {
namespace layers {
@ -14,9 +13,6 @@ namespace layers {
/* static */ LayersBackend
Compositor::GetBackend()
{
MOZ_ASSERT(CompositorParent::CompositorLoop() ==
MessageLoop::current(),
"Can only call this from the compositor thread!");
return sBackend;
}

View File

@ -391,8 +391,6 @@ public:
* thread at the same time. The backend type in use can be checked with this
* static method. We need this for creating texture clients/hosts etc. when we
* don't have a reference to a Compositor.
*
* This can only be used from the compositor thread!
*/
static LayersBackend GetBackend();

View File

@ -383,7 +383,7 @@ ClientLayerManager::ClearLayer(Layer* aLayer)
void
ClientLayerManager::GetBackendName(nsAString& aName)
{
switch (GetCompositorBackendType()) {
switch (Compositor::GetBackend()) {
case LAYERS_BASIC: aName.AssignLiteral("Basic"); return;
case LAYERS_OPENGL: aName.AssignLiteral("OpenGL"); return;
case LAYERS_D3D9: aName.AssignLiteral("Direct3D 9"); return;

View File

@ -55,7 +55,7 @@ public:
virtual void FlushRendering() MOZ_OVERRIDE;
virtual bool NeedsWidgetInvalidation() MOZ_OVERRIDE { return GetCompositorBackendType() == LAYERS_BASIC; }
virtual bool NeedsWidgetInvalidation() MOZ_OVERRIDE { return Compositor::GetBackend() == LAYERS_BASIC; }
ShadowableLayer* Hold(Layer* aLayer);

View File

@ -1387,7 +1387,7 @@ NS_IMETHODIMP nsChildView::Invalidate(const nsIntRect &aRect)
return NS_OK;
NS_ASSERTION(GetLayerManager()->GetBackendType() != LAYERS_CLIENT ||
static_cast<ClientLayerManager*>(GetLayerManager())->GetCompositorBackendType() == LAYERS_BASIC,
Compositor::GetBackend() == LAYERS_BASIC,
"Shouldn't need to invalidate with accelerated OMTC layers!");
if ([NSView focusView]) {
@ -1821,8 +1821,8 @@ nsChildView::CreateCompositor()
compositor::GetLayerManager(mCompositorParent);
Compositor *compositor = manager->GetCompositor();
ClientLayerManager *clientManager = static_cast<ClientLayerManager*>(GetLayerManager());
if (clientManager->GetCompositorBackendType() == LAYERS_OPENGL) {
LayersBackend backend = compositor->GetBackend();
if (backend == LAYERS_OPENGL) {
CompositorOGL *compositorOGL = static_cast<CompositorOGL*>(compositor);
NSOpenGLContext *glContext = (NSOpenGLContext *)compositorOGL->gl()->GetNativeData(GLContext::NativeGLContext);
@ -3073,8 +3073,8 @@ NSEvent* gLastDragMouseDownEvent = nil;
painted = mGeckoChild->PaintWindow(region);
} else if (mGeckoChild->GetLayerManager()->GetBackendType() == LAYERS_CLIENT) {
// We only need this so that we actually get DidPaintWindow fired
ClientLayerManager *manager = static_cast<ClientLayerManager*>(mGeckoChild->GetLayerManager());
if (manager->GetCompositorBackendType() == LAYERS_BASIC) {
if (Compositor::GetBackend() == LAYERS_BASIC) {
ClientLayerManager *manager = static_cast<ClientLayerManager*>(mGeckoChild->GetLayerManager());
manager->SetShadowTarget(targetContext);
}
painted = mGeckoChild->PaintWindow(region);

View File

@ -2124,14 +2124,13 @@ nsWindow::OnExposeEvent(cairo_t *cr)
return TRUE;
}
// If this widget uses OMTC...
if (GetLayerManager()->GetBackendType() == LAYERS_CLIENT) {
ClientLayerManager *manager = static_cast<ClientLayerManager*>(GetLayerManager());
if (manager->GetCompositorBackendType() != LAYERS_BASIC) {
listener->DidPaintWindow();
if (GetLayerManager()->AsShadowForwarder() && GetLayerManager()->AsShadowForwarder()->HasShadowManager() &&
Compositor::GetBackend() != LAYERS_BASIC) {
listener->DidPaintWindow();
g_free(rects);
return TRUE;
g_free(rects);
return TRUE;
}
} else if (GetLayerManager()->GetBackendType() == mozilla::layers::LAYERS_OPENGL) {
LayerManagerOGL *manager = static_cast<LayerManagerOGL*>(GetLayerManager());
manager->SetClippingRegion(region);