From 8e17c11e25d7e0ecd3a8a5ab4a4a3bd98d8c81b7 Mon Sep 17 00:00:00 2001 From: Cédric Bosdonnat Date: Tue, 13 Dec 2011 17:25:51 +0100 Subject: n#676858: Fix selection of background pictures vs text --- sw/source/core/layout/trvlfrm.cxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sw/source/core/layout/trvlfrm.cxx b/sw/source/core/layout/trvlfrm.cxx index 4b54a68efbd5..d2c3d4ea8eec 100644 --- a/sw/source/core/layout/trvlfrm.cxx +++ b/sw/source/core/layout/trvlfrm.cxx @@ -31,6 +31,7 @@ #include #include #include +#include #include #include #include @@ -78,7 +79,8 @@ namespace { static_cast(aIter()); const SwAnchoredObject* pAnchoredObj = GetUserCall( aIter() )->GetAnchoredObj( aIter() ); const SwFmtSurround& rSurround = pAnchoredObj->GetFrmFmt().GetSurround(); - bool bInBackground = ( rSurround.GetSurround() == SURROUND_THROUGHT ); + const SvxOpaqueItem& rOpaque = pAnchoredObj->GetFrmFmt().GetOpaque(); + bool bInBackground = ( rSurround.GetSurround() == SURROUND_THROUGHT ) && !rOpaque.GetValue(); bool bBackgroundMatches = ( bInBackground && bSearchBackground ) || ( !bInBackground && !bSearchBackground ); @@ -274,7 +276,7 @@ sal_Bool SwPageFrm::GetCrsrOfst( SwPosition *pPos, Point &rPoint, } // TODO Pick up the best approaching selection - if ( bTextRet && bBackRet && ( nTextSurface < nBackSurface ) ) + if ( bTextRet && bBackRet && ( nTextSurface > nBackSurface ) ) { bRet = bBackRet; pPos->nNode = aBackPos.nNode; -- cgit