diff options
author | Tor Lillqvist <tml@collabora.com> | 2016-12-12 19:53:42 +0200 |
---|---|---|
committer | Tor Lillqvist <tml@collabora.com> | 2016-12-13 00:00:15 +0200 |
commit | b5f0c82393d88b81ea1f75fcc4cafc2aa947e206 (patch) | |
tree | 0073a2de456df4911a99737ced1154f8641f7ed4 | |
parent | b5ae4ccf462da85ec87e953212135871fd98bfbb (diff) |
Fix lossage with --disable-cairo-canvas
Change-Id: I9e822cfc1447fcd49c80c56df8ba37959555396a
-rw-r--r-- | vcl/inc/unx/gtk/gtkgdi.hxx | 7 | ||||
-rw-r--r-- | vcl/inc/unx/salgdi.h | 3 | ||||
-rw-r--r-- | vcl/unx/generic/gdi/font.cxx | 4 | ||||
-rw-r--r-- | vcl/unx/generic/gdi/salgdi.cxx | 8 | ||||
-rw-r--r-- | vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 6 |
5 files changed, 26 insertions, 2 deletions
diff --git a/vcl/inc/unx/gtk/gtkgdi.hxx b/vcl/inc/unx/gtk/gtkgdi.hxx index e7169e95c20b..f780964c8694 100644 --- a/vcl/inc/unx/gtk/gtkgdi.hxx +++ b/vcl/inc/unx/gtk/gtkgdi.hxx @@ -20,6 +20,8 @@ #ifndef INCLUDED_VCL_INC_UNX_GTK_GTKGDI_HXX #define INCLUDED_VCL_INC_UNX_GTK_GTKGDI_HXX +#include <config_cairo_canvas.h> + #include <gtk/gtk.h> #include <gdk/gdkx.h> #include <gdk/gdkkeysyms.h> @@ -112,9 +114,14 @@ public: const OUString& rCaption, Rectangle &rNativeBoundingRegion, Rectangle &rNativeContentRegion ) override; +#if ENABLE_CAIRO_CANVAS + virtual bool SupportsCairo() const override; virtual cairo::SurfaceSharedPtr CreateSurface(const cairo::CairoSurfaceSharedPtr& rSurface) const override; virtual cairo::SurfaceSharedPtr CreateSurface(const OutputDevice& rRefDevice, int x, int y, int width, int height) const override; + +#endif + void WidgetQueueDraw() const; void updateSettings( AllSettings& rSettings ); diff --git a/vcl/inc/unx/salgdi.h b/vcl/inc/unx/salgdi.h index 5eb9172d0876..ef7ad2cb8f45 100644 --- a/vcl/inc/unx/salgdi.h +++ b/vcl/inc/unx/salgdi.h @@ -249,6 +249,8 @@ public: long nHeight, sal_uInt8 nTransparency ) override; virtual SystemGraphicsData GetGraphicsData() const override; + +#if ENABLE_CAIRO_CANVAS virtual bool SupportsCairo() const override; virtual cairo::SurfaceSharedPtr CreateSurface(const cairo::CairoSurfaceSharedPtr& rSurface) const override; virtual cairo::SurfaceSharedPtr CreateSurface(const OutputDevice& rRefDevice, int x, int y, int width, int height) const override; @@ -256,7 +258,6 @@ public: virtual css::uno::Any GetNativeSurfaceHandle(cairo::SurfaceSharedPtr& rSurface, const basegfx::B2ISize& rSize) const override; virtual SystemFontData GetSysFontData( int nFallbackLevel ) const override; -#if ENABLE_CAIRO_CANVAS void clipRegion(cairo_t* cr); #endif // ENABLE_CAIRO_CANVAS diff --git a/vcl/unx/generic/gdi/font.cxx b/vcl/unx/generic/gdi/font.cxx index 37a3846d7d23..b4141e07efad 100644 --- a/vcl/unx/generic/gdi/font.cxx +++ b/vcl/unx/generic/gdi/font.cxx @@ -122,11 +122,15 @@ SalLayout* X11SalGraphics::GetTextLayout( ImplLayoutArgs& rArgs, int nFallbackLe return mxTextRenderImpl->GetTextLayout(rArgs, nFallbackLevel); } +#if ENABLE_CAIRO_CANVAS + SystemFontData X11SalGraphics::GetSysFontData( int nFallbackLevel ) const { return mxTextRenderImpl->GetSysFontData(nFallbackLevel); } +#endif + bool X11SalGraphics::CreateFontSubset( const OUString& rToFile, const PhysicalFontFace* pFont, diff --git a/vcl/unx/generic/gdi/salgdi.cxx b/vcl/unx/generic/gdi/salgdi.cxx index a7c7df80fc7b..63de2b436765 100644 --- a/vcl/unx/generic/gdi/salgdi.cxx +++ b/vcl/unx/generic/gdi/salgdi.cxx @@ -356,7 +356,9 @@ void X11SalGraphics::ResetClipRegion() bool X11SalGraphics::setClipRegion( const vcl::Region& i_rClip ) { +#if ENABLE_CAIRO_CANVAS maClipRegion = i_rClip; +#endif return mxImpl->setClipRegion( i_rClip ); } @@ -499,6 +501,8 @@ SystemGraphicsData X11SalGraphics::GetGraphicsData() const return aRes; } +#if ENABLE_CAIRO_CANVAS + bool X11SalGraphics::SupportsCairo() const { Display *pDisplay = GetXDisplay(); @@ -571,6 +575,8 @@ css::uno::Any X11SalGraphics::GetNativeSurfaceHandle(cairo::SurfaceSharedPtr& rS return css::uno::Any(args); } +#endif // ENABLE_CAIRO_CANVAS + // draw a poly-polygon bool X11SalGraphics::drawPolyPolygon( const basegfx::B2DPolyPolygon& rOrigPolyPoly, double fTransparency ) { @@ -586,12 +592,12 @@ bool X11SalGraphics::drawPolyPolygon( const basegfx::B2DPolyPolygon& rOrigPolyPo return true; } +#if ENABLE_CAIRO_CANVAS if(SALCOLOR_NONE == mnFillColor && SALCOLOR_NONE == mnPenColor) { return true; } -#if ENABLE_CAIRO_CANVAS static bool bUseCairoForPolygons = false; if (!m_bOpenGL && bUseCairoForPolygons && SupportsCairo()) diff --git a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx index 8b654d97c9d4..98c385f88b7c 100644 --- a/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx @@ -9,6 +9,8 @@ #include <sal/config.h> +#include <config_cairo_canvas.h> + #include <basegfx/range/b2ibox.hxx> #include <unx/gtk/gtkframe.hxx> #include <unx/gtk/gtkdata.hxx> @@ -2884,6 +2886,8 @@ bool GtkSalGraphics::IsNativeControlSupported( ControlType nType, ControlPart nP return false; } +#if ENABLE_CAIRO_CANVAS + bool GtkSalGraphics::SupportsCairo() const { return true; @@ -2899,6 +2903,8 @@ cairo::SurfaceSharedPtr GtkSalGraphics::CreateSurface(const OutputDevice& /*rRef return cairo::SurfaceSharedPtr(new cairo::Gtk3Surface(this, x, y, width, height)); } +#endif + void GtkSalGraphics::WidgetQueueDraw() const { //request gtk to sync the entire contents |