sd/source/ui/view/sdview3.cxx | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-)
New commits: commit 6daec0854455b50b7f4318dce2ec6afd92aad324 Author: Armin Le Grand <a...@apache.org> Date: Fri May 3 12:22:53 2013 +0000 Resolves: #i122215# Avoid double paste, allow paste of WMF/EMF as bitmap (cherry picked from commit 5ffd11cb81aa2206fd523dab461c5bdbd6a00bcc) Change-Id: Ib0d0ff7d12cf67bde2379b57bc4e695779eef727 diff --git a/sd/source/ui/view/sdview3.cxx b/sd/source/ui/view/sdview3.cxx index a0df92c..ab2cfec2 100644 --- a/sd/source/ui/view/sdview3.cxx +++ b/sd/source/ui/view/sdview3.cxx @@ -1145,6 +1145,7 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper, { // if no object was inserted, insert a picture InsertMetaFile( aDataHelper, rPos, pImageMap, true ); + bReturn = true; } } else if( ( !bLink || pPickObj ) && CHECK_FORMAT_TRANS( SOT_FORMATSTR_ID_SVXB ) ) @@ -1211,7 +1212,29 @@ sal_Bool View::InsertData( const TransferableDataHelper& rDataHelper, { BitmapEx aBmpEx; - if( aDataHelper.GetBitmapEx( FORMAT_BITMAP, aBmpEx ) ) + // get basic Bitmap data + aDataHelper.GetBitmapEx(FORMAT_BITMAP, aBmpEx); + + if(aBmpEx.IsEmpty()) + { + // if this did not work, try to get graphic formats and convert these to bitmap + Graphic aGraphic; + + if(aDataHelper.GetGraphic(FORMAT_GDIMETAFILE, aGraphic)) + { + aBmpEx = aGraphic.GetBitmapEx(); + } + else if(aDataHelper.GetGraphic(SOT_FORMATSTR_ID_SVXB, aGraphic)) + { + aBmpEx = aGraphic.GetBitmapEx(); + } + else if(aDataHelper.GetGraphic(FORMAT_BITMAP, aGraphic)) + { + aBmpEx = aGraphic.GetBitmapEx(); + } + } + + if(!aBmpEx.IsEmpty()) { Point aInsertPos( rPos ); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits