ooo-build r11780 - in trunk: . patches/src680
- From: rodo svn gnome org
- To: svn-commits-list gnome org
- Subject: ooo-build r11780 - in trunk: . patches/src680
- Date: Mon, 3 Mar 2008 14:08:31 +0000 (GMT)
Author: rodo
Date: Mon Mar 3 14:08:31 2008
New Revision: 11780
URL: http://svn.gnome.org/viewvc/ooo-build?rev=11780&view=rev
Log:
2008-03-03 Radek Doulik <rodo novell com>
* patches/src680/apply: added
cairocanvas-alpha-pixmap-rewrite.diff with changes described below
* build/ooh680-m8/canvas/source/cairo/cairo_canvasbitmap.cxx: do
not create 24bit grey pixmap for alpha mask, use 8bit - vcl will
be now happy with it
Added:
trunk/patches/src680/cairocanvas-alpha-pixmap-rewrite.diff
Modified:
trunk/ChangeLog
trunk/patches/src680/apply
Modified: trunk/patches/src680/apply
==============================================================================
--- trunk/patches/src680/apply (original)
+++ trunk/patches/src680/apply Mon Mar 3 14:08:31 2008
@@ -2285,3 +2285,4 @@
sd-slideshow-slideshowview-transformation-fix.diff, rodo
cairocanvas-fix-image-cache.diff, rodo
vcl-grey-alpha-unix-sal-bitmap.diff, rodo
+cairocanvas-alpha-pixmap-rewrite.diff, rodo
Added: trunk/patches/src680/cairocanvas-alpha-pixmap-rewrite.diff
==============================================================================
--- (empty file)
+++ trunk/patches/src680/cairocanvas-alpha-pixmap-rewrite.diff Mon Mar 3 14:08:31 2008
@@ -0,0 +1,62 @@
+diff -rup canvas-orig/source/cairo/cairo_canvasbitmap.cxx canvas/source/cairo/cairo_canvasbitmap.cxx
+--- canvas-orig/source/cairo/cairo_canvasbitmap.cxx 2008-03-03 14:58:28.000000000 +0100
++++ canvas/source/cairo/cairo_canvasbitmap.cxx 2008-03-03 15:00:52.000000000 +0100
+@@ -120,9 +120,7 @@ namespace cairocanvas
+ case 2: {
+ #ifdef CAIRO_HAS_XLIB_SURFACE
+ ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any > args( 3 );
+- Surface* pSurface = mpDevice->getSurface( maCanvasHelper.maSize, CAIRO_CONTENT_COLOR_ALPHA );
+ Surface* pAlphaSurface = mpDevice->getSurface( maCanvasHelper.maSize, CAIRO_CONTENT_ALPHA );
+- Cairo* pCairo = pSurface->getCairo();
+ Cairo* pAlphaCairo = pAlphaSurface->getCairo();
+
+ // create RGB image (levels of gray) of alpha channel of original picture
+@@ -131,20 +129,11 @@ namespace cairocanvas
+ cairo_paint( pAlphaCairo );
+ cairo_destroy( pAlphaCairo );
+
+- cairo_set_source_rgba(pCairo, 1, 1, 1, 1 );
+- cairo_set_operator( pCairo, CAIRO_OPERATOR_SOURCE );
+- cairo_paint( pCairo );
+- cairo_set_source_surface( pCairo, pAlphaSurface->mpSurface, 0, 0 );
+- cairo_set_operator( pCairo, CAIRO_OPERATOR_OVER );
+- cairo_paint( pCairo );
+-
+- delete pAlphaSurface;
+- cairo_destroy( pCairo );
+- pSurface->doNotFreePixmap();
++ pAlphaSurface->doNotFreePixmap();
+ args[0] = ::com::sun::star::uno::Any( true );
+- args[1] = ::com::sun::star::uno::Any( pSurface->getPixmap () );
+- args[2] = ::com::sun::star::uno::Any( sal_Int32( pSurface->getDepth () ) );
+- delete pSurface;
++ args[1] = ::com::sun::star::uno::Any( pAlphaSurface->getPixmap () );
++ args[2] = ::com::sun::star::uno::Any( sal_Int32( pAlphaSurface->getDepth () ) );
++ delete pAlphaSurface;
+
+ // return pixmap and alphachannel pixmap - it will be used in BitmapEx
+ aRV = ::com::sun::star::uno::Any( args );
+diff -rup canvas-orig/source/cairo/cairo_canvasbitmap.hxx canvas/source/cairo/cairo_canvasbitmap.hxx
+--- canvas-orig/source/cairo/cairo_canvasbitmap.hxx 2008-03-03 14:58:28.000000000 +0100
++++ canvas/source/cairo/cairo_canvasbitmap.hxx 2008-03-03 15:02:47.000000000 +0100
+@@ -110,7 +110,7 @@ namespace cairocanvas
+ // 2nd the pixmap handle
+ // 3rd the pixmap depth
+ virtual ::com::sun::star::uno::Any SAL_CALL getFastPropertyValue(sal_Int32 nHandle) throw (::com::sun::star::uno::RuntimeException);
+- virtual void SAL_CALL setFastPropertyValue(sal_Int32 nHandle, const ::com::sun::star::uno::Any&) throw (::com::sun::star::uno::RuntimeException) {}
++ virtual void SAL_CALL setFastPropertyValue(sal_Int32 /* nHandle */, const ::com::sun::star::uno::Any&) throw (::com::sun::star::uno::RuntimeException) {}
+
+ private:
+ /** MUST hold here, too, since CanvasHelper only contains a
+diff -rup canvas-orig/source/cairo/cairo_canvashelper.cxx canvas/source/cairo/cairo_canvashelper.cxx
+--- canvas-orig/source/cairo/cairo_canvashelper.cxx 2008-03-03 14:58:28.000000000 +0100
++++ canvas/source/cairo/cairo_canvashelper.cxx 2008-03-03 15:03:26.000000000 +0100
+@@ -734,7 +734,7 @@ namespace cairocanvas
+ cy = 0.5;
+ r0 = 0;
+ r1 = 0.5;
+- Matrix aScaleMatrix;
++// Matrix aScaleMatrix;
+
+ pPattern = cairo_pattern_create_radial( cx, cy, r0, cx, cy, r1 );
+ addColorStops( pPattern, aValues.maColors, aValues.maStops, true );
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]