mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-18 06:45:33 +00:00
Bug 1278239 - Remove gfxQuartzImageSurface. r=Bas
This commit is contained in:
parent
fb6235e5e5
commit
c8d5762f34
@ -22,9 +22,6 @@
|
||||
#include "mozilla/gfx/Point.h" // for IntSize
|
||||
#include "gfx2DGlue.h"
|
||||
#include "YCbCrUtils.h" // for YCbCr conversions
|
||||
#ifdef XP_MACOSX
|
||||
#include "gfxQuartzImageSurface.h"
|
||||
#endif
|
||||
|
||||
namespace mozilla {
|
||||
namespace layers {
|
||||
|
@ -35,7 +35,6 @@
|
||||
|
||||
#ifdef CAIRO_HAS_QUARTZ_SURFACE
|
||||
#include "gfxQuartzSurface.h"
|
||||
#include "gfxQuartzImageSurface.h"
|
||||
#endif
|
||||
|
||||
#if defined(CAIRO_HAS_QT_SURFACE) && defined(MOZ_WIDGET_QT)
|
||||
@ -186,9 +185,6 @@ gfxASurface::Wrap (cairo_surface_t *csurf, const IntSize& aSize)
|
||||
else if (stype == CAIRO_SURFACE_TYPE_QUARTZ) {
|
||||
result = new gfxQuartzSurface(csurf, aSize);
|
||||
}
|
||||
else if (stype == CAIRO_SURFACE_TYPE_QUARTZ_IMAGE) {
|
||||
result = new gfxQuartzImageSurface(csurf);
|
||||
}
|
||||
#endif
|
||||
#if defined(CAIRO_HAS_QT_SURFACE) && defined(MOZ_WIDGET_QT)
|
||||
else if (stype == CAIRO_SURFACE_TYPE_QT) {
|
||||
|
@ -6,7 +6,6 @@
|
||||
#include "gfxPlatformMac.h"
|
||||
|
||||
#include "gfxQuartzSurface.h"
|
||||
#include "gfxQuartzImageSurface.h"
|
||||
#include "mozilla/gfx/2D.h"
|
||||
#include "mozilla/gfx/MacIOSurface.h"
|
||||
|
||||
|
@ -1,74 +0,0 @@
|
||||
/* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "gfxQuartzImageSurface.h"
|
||||
#include "gfxImageSurface.h"
|
||||
|
||||
#include "cairo-quartz-image.h"
|
||||
|
||||
gfxQuartzImageSurface::gfxQuartzImageSurface(gfxImageSurface *imageSurface)
|
||||
{
|
||||
if (imageSurface->CairoSurface() == nullptr)
|
||||
return;
|
||||
|
||||
cairo_surface_t *surf = cairo_quartz_image_surface_create (imageSurface->CairoSurface());
|
||||
Init (surf);
|
||||
mSize = ComputeSize();
|
||||
}
|
||||
|
||||
gfxQuartzImageSurface::gfxQuartzImageSurface(cairo_surface_t *csurf)
|
||||
{
|
||||
Init (csurf, true);
|
||||
mSize = ComputeSize();
|
||||
}
|
||||
|
||||
gfxQuartzImageSurface::~gfxQuartzImageSurface()
|
||||
{
|
||||
}
|
||||
|
||||
mozilla::gfx::IntSize
|
||||
gfxQuartzImageSurface::ComputeSize()
|
||||
{
|
||||
if (mSurfaceValid) {
|
||||
cairo_surface_t* isurf = cairo_quartz_image_surface_get_image(mSurface);
|
||||
if (isurf) {
|
||||
return mozilla::gfx::IntSize(cairo_image_surface_get_width(isurf),
|
||||
cairo_image_surface_get_height(isurf));
|
||||
}
|
||||
}
|
||||
|
||||
// If we reach here then something went wrong. Just use the same default
|
||||
// value as gfxASurface::GetSize.
|
||||
return mozilla::gfx::IntSize(-1, -1);
|
||||
}
|
||||
|
||||
int32_t
|
||||
gfxQuartzImageSurface::KnownMemoryUsed()
|
||||
{
|
||||
// This surface doesn't own any memory itself, but we want to report here the
|
||||
// amount of memory that the surface it wraps uses.
|
||||
RefPtr<gfxImageSurface> imgSurface = GetAsImageSurface();
|
||||
if (imgSurface)
|
||||
return imgSurface->KnownMemoryUsed();
|
||||
return 0;
|
||||
}
|
||||
|
||||
already_AddRefed<gfxImageSurface>
|
||||
gfxQuartzImageSurface::GetAsImageSurface()
|
||||
{
|
||||
if (!mSurfaceValid)
|
||||
return nullptr;
|
||||
|
||||
cairo_surface_t *isurf = cairo_quartz_image_surface_get_image (CairoSurface());
|
||||
if (!isurf) {
|
||||
NS_WARNING ("Couldn't obtain an image surface from a QuartzImageSurface?!");
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
RefPtr<gfxImageSurface> result = gfxASurface::Wrap(isurf).downcast<gfxImageSurface>();
|
||||
result->SetOpaqueRect(GetOpaqueRect());
|
||||
|
||||
return result.forget();
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
/* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#ifndef GFX_QUARTZIMAGESURFACE_H
|
||||
#define GFX_QUARTZIMAGESURFACE_H
|
||||
|
||||
#include "gfxASurface.h"
|
||||
#include "nsSize.h"
|
||||
|
||||
class gfxImageSurface;
|
||||
|
||||
class gfxQuartzImageSurface : public gfxASurface {
|
||||
public:
|
||||
explicit gfxQuartzImageSurface(gfxImageSurface *imageSurface);
|
||||
explicit gfxQuartzImageSurface(cairo_surface_t *csurf);
|
||||
|
||||
virtual ~gfxQuartzImageSurface();
|
||||
|
||||
already_AddRefed<gfxImageSurface> GetAsImageSurface();
|
||||
virtual int32_t KnownMemoryUsed();
|
||||
virtual const mozilla::gfx::IntSize GetSize() const { return mSize; }
|
||||
|
||||
protected:
|
||||
mozilla::gfx::IntSize mSize;
|
||||
|
||||
private:
|
||||
mozilla::gfx::IntSize ComputeSize();
|
||||
};
|
||||
|
||||
#endif /* GFX_QUARTZIMAGESURFACE_H */
|
@ -85,7 +85,6 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gonk':
|
||||
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
|
||||
EXPORTS += [
|
||||
'gfxPlatformMac.h',
|
||||
'gfxQuartzImageSurface.h',
|
||||
'gfxQuartzNativeDrawing.h',
|
||||
'gfxQuartzSurface.h',
|
||||
]
|
||||
@ -93,7 +92,6 @@ elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
|
||||
'gfxCoreTextShaper.cpp',
|
||||
'gfxMacFont.cpp',
|
||||
'gfxPlatformMac.cpp',
|
||||
'gfxQuartzImageSurface.cpp',
|
||||
'gfxQuartzNativeDrawing.cpp',
|
||||
'gfxQuartzSurface.cpp',
|
||||
]
|
||||
|
Loading…
x
Reference in New Issue
Block a user