Bug 929513 Part 5: Use LayerIntSize for CanUseCanvasLayerForSize r=nical

This commit is contained in:
David Zbarsky 2013-10-27 17:53:27 -04:00
parent 39deff0f7d
commit dd0caf5947
14 changed files with 21 additions and 32 deletions

View File

@ -3979,7 +3979,7 @@ CanvasRenderingContext2D::MarkContextClean()
bool
CanvasRenderingContext2D::ShouldForceInactiveLayer(LayerManager *aManager)
{
return !aManager->CanUseCanvasLayerForSize(gfxIntSize(mWidth, mHeight));
return !aManager->CanUseCanvasLayerForSize(LayerIntSize(mWidth, mHeight));
}
}

View File

@ -210,7 +210,7 @@ public:
/**
* Properties of the compositor.
*/
virtual bool CanUseCanvasLayerForSize(const gfx::IntSize& aSize) = 0;
virtual bool CanUseCanvasLayerForSize(const LayerIntSize& aSize) = 0;
virtual int32_t GetMaxTextureSize() const = 0;
/**

View File

@ -415,7 +415,7 @@ public:
CreateDrawTarget(const mozilla::gfx::IntSize &aSize,
mozilla::gfx::SurfaceFormat aFormat);
virtual bool CanUseCanvasLayerForSize(const gfxIntSize &aSize) { return true; }
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize) { return true; }
/**
* Returns a TextureFactoryIdentifier which describes properties of the backend

View File

@ -94,7 +94,7 @@ public:
virtual void AbortFrame() MOZ_OVERRIDE;
virtual bool SupportsPartialTextureUpdate() { return true; }
virtual bool CanUseCanvasLayerForSize(const gfx::IntSize &aSize) MOZ_OVERRIDE { return true; }
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize) MOZ_OVERRIDE { return true; }
virtual int32_t GetMaxTextureSize() const MOZ_OVERRIDE { return INT32_MAX; }
virtual void SetDestinationSurfaceSize(const gfx::IntSize& aSize) MOZ_OVERRIDE { }
virtual void SetTargetContext(gfx::DrawTarget* aTarget) MOZ_OVERRIDE

View File

@ -767,10 +767,9 @@ LayerManagerComposite::NotifyShadowTreeTransaction()
}
bool
LayerManagerComposite::CanUseCanvasLayerForSize(const gfxIntSize &aSize)
LayerManagerComposite::CanUseCanvasLayerForSize(const LayerIntSize &aSize)
{
return mCompositor->CanUseCanvasLayerForSize(gfx::IntSize(aSize.width,
aSize.height));
return mCompositor->CanUseCanvasLayerForSize(aSize);
}
TextureFactoryIdentifier

View File

@ -118,7 +118,7 @@ public:
virtual void SetRoot(Layer* aLayer) MOZ_OVERRIDE { mRoot = aLayer; }
virtual bool CanUseCanvasLayerForSize(const gfxIntSize &aSize) MOZ_OVERRIDE;
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize) MOZ_OVERRIDE;
virtual TextureFactoryIdentifier GetTextureFactoryIdentifier() MOZ_OVERRIDE;

View File

@ -92,9 +92,9 @@ public:
enum {
MAX_TEXTURE_SIZE = 8192
};
virtual bool CanUseCanvasLayerForSize(const gfxIntSize &aSize)
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize)
{
return aSize <= gfxIntSize(MAX_TEXTURE_SIZE, MAX_TEXTURE_SIZE);
return aSize <= LayerIntSize(MAX_TEXTURE_SIZE, MAX_TEXTURE_SIZE);
}
virtual int32_t GetMaxTextureSize() const

View File

@ -349,15 +349,10 @@ CompositorD3D11::GetTextureFactoryIdentifier()
}
bool
CompositorD3D11::CanUseCanvasLayerForSize(const gfx::IntSize& aSize)
CompositorD3D11::CanUseCanvasLayerForSize(const LayerIntSize& aSize)
{
int32_t maxTextureSize = GetMaxTextureSize();
if (aSize.width > maxTextureSize || aSize.height > maxTextureSize) {
return false;
}
return true;
return aSize < LayerIntSize(maxTextureSize, maxTextureSize);
}
int32_t

View File

@ -51,7 +51,7 @@ public:
virtual TemporaryRef<DataTextureSource>
CreateDataTextureSource(TextureFlags aFlags = 0) MOZ_OVERRIDE { return nullptr; }
virtual bool CanUseCanvasLayerForSize(const gfx::IntSize& aSize) MOZ_OVERRIDE;
virtual bool CanUseCanvasLayerForSize(const LayerIntSize& aSize) MOZ_OVERRIDE;
virtual int32_t GetMaxTextureSize() const MOZ_FINAL;
virtual void SetTargetContext(gfx::DrawTarget* aTarget) MOZ_OVERRIDE

View File

@ -65,15 +65,10 @@ CompositorD3D9::GetTextureFactoryIdentifier()
}
bool
CompositorD3D9::CanUseCanvasLayerForSize(const IntSize &aSize)
CompositorD3D9::CanUseCanvasLayerForSize(const LayerIntSize &aSize)
{
int32_t maxTextureSize = GetMaxTextureSize();
if (aSize.width > maxTextureSize || aSize.height > maxTextureSize) {
return false;
}
return true;
return aSize < LayerIntSize(maxTextureSize, maxTextureSize);
}
int32_t

View File

@ -28,7 +28,7 @@ public:
virtual TextureFactoryIdentifier
GetTextureFactoryIdentifier() MOZ_OVERRIDE;
virtual bool CanUseCanvasLayerForSize(const gfx::IntSize &aSize) MOZ_OVERRIDE;
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize) MOZ_OVERRIDE;
virtual int32_t GetMaxTextureSize() const MOZ_FINAL;
virtual void SetTargetContext(gfx::DrawTarget *aTarget) MOZ_OVERRIDE

View File

@ -78,12 +78,12 @@ public:
void SetRoot(Layer* aLayer);
virtual bool CanUseCanvasLayerForSize(const gfxIntSize &aSize)
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize)
{
if (!mDeviceManager)
return false;
int32_t maxSize = mDeviceManager->GetMaxTextureSize();
return aSize <= gfxIntSize(maxSize, maxSize);
return aSize <= LayerIntSize(maxSize, maxSize);
}
virtual int32_t GetMaxTextureSize() const

View File

@ -104,12 +104,12 @@ public:
virtual bool SupportsPartialTextureUpdate() MOZ_OVERRIDE;
virtual bool CanUseCanvasLayerForSize(const gfx::IntSize &aSize) MOZ_OVERRIDE
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize) MOZ_OVERRIDE
{
if (!mGLContext)
return false;
int32_t maxSize = GetMaxTextureSize();
return aSize <= gfx::IntSize(maxSize, maxSize);
return aSize <= LayerIntSize(maxSize, maxSize);
}
virtual int32_t GetMaxTextureSize() const MOZ_OVERRIDE;

View File

@ -111,11 +111,11 @@ public:
virtual void SetRoot(Layer* aLayer) { mRoot = aLayer; }
virtual bool CanUseCanvasLayerForSize(const gfxIntSize &aSize) {
virtual bool CanUseCanvasLayerForSize(const LayerIntSize &aSize) {
if (!mGLContext)
return false;
int32_t maxSize = GetMaxTextureSize();
return aSize <= gfxIntSize(maxSize, maxSize);
return aSize <= LayerIntSize(maxSize, maxSize);
}
virtual int32_t GetMaxTextureSize() const;