Resolves: tdf#101269 cannot click/edit text inside a frame

regression from...

commit b0c0a074a2
Date:   Mon Apr 18 11:03:43 2016 +0200

    clang-tidy clang-analyzer-deadcode.DeadStores

    suspect that some of these may reveal latent bugs....

and restore method then removed by

commit 47f62540bd
Date:   Thu May 19 10:31:47 2016 +0200

    loplugin:unusedmethods in sw

Change-Id: I14826eecadbc1a74e408f8907eea8746debe4db4
This commit is contained in:
Caolán McNamara
2016-08-04 08:50:57 +01:00
parent c85a3ac70d
commit 24c009de4d
3 changed files with 18 additions and 0 deletions

View File

@@ -1713,6 +1713,8 @@ sal_Int32 SwTextCursor::GetCursorOfst( SwPosition *pPos, const Point &rPoint,
if( bChgNodeInner && pTmp->Frame().IsInside( aTmpPoint ) &&
!( pTmp->IsProtected() ) )
{
nLength = static_cast<SwFlyCntPortion*>(pPor)->
GetFlyCursorOfst( nX, aTmpPoint, pPos, pCMS );
// After a change of the frame, our font must be still
// available for/in the OutputDevice.
// For comparison: Paint and new SwFlyCntPortion !

View File

@@ -414,6 +414,20 @@ void SwFlyCntPortion::SetBase( const SwTextFrame& rFrame, const Point &rBase,
}
}
sal_Int32 SwFlyCntPortion::GetFlyCursorOfst( const sal_uInt16 nOfst,
const Point &rPoint, SwPosition *pPos, SwCursorMoveState* pCMS ) const
{
// As the FlyCnt are not attached to the side, their GetCursorOfst() will
// not be called.
// In order to reduce management overhead for the layout page, the paragraph
// calls the FlyFrame's GetCursorOfst() only when needed
Point aPoint( rPoint );
if( !pPos || bDraw || !( GetFlyFrame()->GetCursorOfst( pPos, aPoint, pCMS ) ) )
return SwLinePortion::GetCursorOfst( nOfst );
else
return 0;
}
sal_Int32 SwFlyCntPortion::GetCursorOfst( const sal_uInt16 nOfst ) const
{
// OSL_FAIL("SwFlyCntPortion::GetCursorOfst: use GetFlyCursorOfst()");

View File

@@ -79,6 +79,8 @@ public:
long nLnAscent, long nLnDescent,
long nFlyAscent, long nFlyDescent,
AsCharFlags nFlags );
sal_Int32 GetFlyCursorOfst( const sal_uInt16 nOfst, const Point &rPoint,
SwPosition *pPos, SwCursorMoveState* pCMS ) const;
virtual bool Format( SwTextFormatInfo &rInf ) override;
virtual void Paint( const SwTextPaintInfo &rInf ) const override;
OUTPUT_OPERATOR_OVERRIDE