diff options
Diffstat (limited to 'sw/source/uibase')
-rw-r--r-- | sw/source/uibase/shells/textsh.cxx | 9 | ||||
-rw-r--r-- | sw/source/uibase/wrtsh/delete.cxx | 4 |
2 files changed, 8 insertions, 5 deletions
diff --git a/sw/source/uibase/shells/textsh.cxx b/sw/source/uibase/shells/textsh.cxx index 97de985401..29242d9946 100644 --- a/sw/source/uibase/shells/textsh.cxx +++ b/sw/source/uibase/shells/textsh.cxx @@ -885,10 +885,13 @@ void SwTextShell::ExecRotateTransliteration( SfxRequest const & rReq ) } else { - rSh.Push(); // save cur cursor - if ((rSh.IsEndWrd() || rSh.IsStartWord() || rSh.IsInWord()) && rSh.SelWrd()) + if (rSh.IsEndSentence()) + { + rSh.BwdSentence(true); + rSh.TransliterateText(m_aRotateCase.getNextMode()); + } + else if ((rSh.IsEndWrd() || rSh.IsStartWord() || rSh.IsInWord()) && rSh.SelWrd()) rSh.TransliterateText(m_aRotateCase.getNextMode()); - rSh.Pop(SwCursorShell::PopMode::DeleteCurrent); } } } diff --git a/sw/source/uibase/wrtsh/delete.cxx b/sw/source/uibase/wrtsh/delete.cxx index e7a09d0165..46b0a40cca 100644 --- a/sw/source/uibase/wrtsh/delete.cxx +++ b/sw/source/uibase/wrtsh/delete.cxx @@ -171,7 +171,7 @@ bool SwWrtShell::DelLeft() { SwActContext aActContext(this); ResetCursorStack(); - Delete(false); + Delete(false, true); UpdateAttr(); } if( IsBlockMode() ) @@ -274,7 +274,7 @@ bool SwWrtShell::DelLeft() SwCursorShell::Pop( SwCursorShell::PopMode::DeleteStack ); } } - bool bRet = Delete(true); + bool bRet = Delete(true, true); if( !bRet && bSwap ) SwCursorShell::SwapPam(); CloseMark( bRet ); |