diff options
author | Radek Doulik <rodo@novell.com> | 2011-02-09 17:37:06 +0100 |
---|---|---|
committer | Radek Doulik <rodo@novell.com> | 2011-02-09 17:37:06 +0100 |
commit | efea15b58849e766c2df81fe766e1ca5b93d2bb3 (patch) | |
tree | 7d1336ed9a23c96f2a28dfb2f21a88048c6abadc | |
parent | d2e9b3ada08db9e00b0b3b48ae4a4f96afffc06a (diff) |
reenable emf+ support again, backport emf+ fix from masterooo-build-3-2-1
* patches/dev300/apply:
* patches/dev300/svtools-disable-emf-plus.diff:
* patches/dev300/vcl-gdimtf-play-use-canvas.diff:
-rw-r--r-- | patches/dev300/apply | 2 | ||||
-rw-r--r-- | patches/dev300/svtools-disable-emf-plus.diff | 24 | ||||
-rw-r--r-- | patches/dev300/vcl-gdimtf-play-use-canvas.diff | 34 |
3 files changed, 35 insertions, 25 deletions
diff --git a/patches/dev300/apply b/patches/dev300/apply index 66fe0d98f..0266d628e 100644 --- a/patches/dev300/apply +++ b/patches/dev300/apply @@ -4172,4 +4172,4 @@ oox-pptx-import-backport-from-LO-fix-zero-sized-shapes.diff, n#650051, rodo vcl-canvastools-fix-crash.diff, n#654065, rodo filter-fix-too-broad-deep-search.diff, rodo slideshow-fix-rendering-order.diff, n#656934, rodo -svtools-disable-emf-plus.diff, n#650049, rodo +vcl-gdimtf-play-use-canvas.diff, n#650049, rodo diff --git a/patches/dev300/svtools-disable-emf-plus.diff b/patches/dev300/svtools-disable-emf-plus.diff deleted file mode 100644 index 80a823894..000000000 --- a/patches/dev300/svtools-disable-emf-plus.diff +++ /dev/null @@ -1,24 +0,0 @@ -diff -rup svtools/source/filter.vcl/wmf-orig/enhwmf.cxx svtools/source/filter.vcl/wmf/enhwmf.cxx ---- svtools/source/filter.vcl/wmf-orig/enhwmf.cxx 2011-01-26 14:48:00.000000000 +0100 -+++ svtools/source/filter.vcl/wmf/enhwmf.cxx 2011-01-26 14:53:30.000000000 +0100 -@@ -344,10 +344,17 @@ BOOL EnhWMFReader::ReadEnhWMF() - sal_Bool bHaveDC = false; - - #ifdef UNX -- static sal_Bool bEnableEMFPlus = ( getenv( "EMF_PLUS_DISABLE" ) == NULL ); -+ static sal_Bool bEnableEMFPlus = sal_False; // disable it for now as -+ // drawing layer changed the -+ // way the editing mode is -+ // rendered and emf+ support -+ // doesn't work anymore -+ // ( getenv( "EMF_PLUS_DISABLE" ) == NULL ); - #else - // TODO: make it possible to disable emf+ on windows -- static sal_Bool bEnableEMFPlus = sal_True; -+ // static sal_Bool bEnableEMFPlus = sal_True; -+ // disable it on windows as well (see above) -+ static sal_Bool bEnableEMFPlus = sal_False; - #endif - - while( bStatus && nRecordCount-- ) -Only in svtools/source/filter.vcl/wmf: enhwmf.cxx~ diff --git a/patches/dev300/vcl-gdimtf-play-use-canvas.diff b/patches/dev300/vcl-gdimtf-play-use-canvas.diff new file mode 100644 index 000000000..65cb29b10 --- /dev/null +++ b/patches/dev300/vcl-gdimtf-play-use-canvas.diff @@ -0,0 +1,34 @@ +commit 7de8695f19626c764a4b43cfb30179525d9a5956 +Author: Radek Doulik <rodo@novell.com> +Date: Wed Feb 9 16:02:42 2011 +0100 + + GDIMetaFile::bUseCanvas related changes (prerequisite for fixing n#650049) + + - add GetUseCanvas() for read access + - update bUseCanvas when playing on metafile + +diff --git vcl/inc/vcl/gdimtf.hxx vcl/inc/vcl/gdimtf.hxx +index 14cc127..4bf3d46 100644 +--- vcl/inc/vcl/gdimtf.hxx ++++ vcl/inc/vcl/gdimtf.hxx +@@ -247,6 +247,7 @@ public: + BOOL CreateThumbnail( sal_uInt32 nMaximumExtent, BitmapEx& rBmpEx, const BitmapEx* pOverlay = NULL, const Rectangle* pOverlayRect = NULL ) const; + + void UseCanvas( BOOL _bUseCanvas ); ++ BOOL GetUseCanvas() const { return bUseCanvas; } + }; + + /** Create a special metaaction that delegates rendering to specified +diff --git vcl/source/gdi/gdimtf.cxx vcl/source/gdi/gdimtf.cxx +index 75ff2f8..faf0d02 100644 +--- vcl/source/gdi/gdimtf.cxx ++++ vcl/source/gdi/gdimtf.cxx +@@ -437,6 +437,8 @@ void GDIMetaFile::Play( GDIMetaFile& rMtf, ULONG nPos ) + MetaAction* pAction = GetCurAction(); + const ULONG nObjCount = Count(); + ++ rMtf.UseCanvas( rMtf.GetUseCanvas() | bUseCanvas ); ++ + if( nPos > nObjCount ) + nPos = nObjCount; + |