[Libreoffice-commits] core.git: sw/source
Jim Raykowski (via logerrit)
logerrit at kemper.freedesktop.org
Mon Jan 18 03:49:52 UTC 2021
sw/source/uibase/shells/navsh.cxx | 7 +++++++
sw/source/uibase/wrtsh/navmgr.cxx | 4 +---
2 files changed, 8 insertions(+), 3 deletions(-)
New commits:
commit cf98f078b0a4e8c36cf0579042442e5583013608
Author: Jim Raykowski <raykowj at gmail.com>
AuthorDate: Sun Jan 17 16:16:10 2021 -0900
Commit: Jim Raykowski <raykowj at gmail.com>
CommitDate: Mon Jan 18 04:49:10 2021 +0100
tdf#115817 set standard mode before recency navigation
Using Navigate-by to move through the recency stack sets the writer
shell to standard mode before navigation. Navigation using the Back and
Forward navigation controls does not. This results in incorrect
behaviour when a drawing object is selected and navigation is attempted.
This patch sets writer shell to standard mode before recency navigation
is done using .uno:NavigateBack and .uno:NavigateForward.
Change-Id: If05883e8188452736cfedac9153bcc91422bf7e8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109504
Tested-by: Jenkins
Reviewed-by: Jim Raykowski <raykowj at gmail.com>
diff --git a/sw/source/uibase/shells/navsh.cxx b/sw/source/uibase/shells/navsh.cxx
index 5b5d071bee8d..6f864ec7c126 100644
--- a/sw/source/uibase/shells/navsh.cxx
+++ b/sw/source/uibase/shells/navsh.cxx
@@ -41,6 +41,13 @@ void SwNavigationShell::Execute(SfxRequest const& rReq)
const SfxPoolItem* pItem;
if (pArgs)
pArgs->GetItemState(nSlotId, false, &pItem);
+
+ if (pSdrView->IsTextEdit())
+ pSh->EndTextEdit();
+ if (pSh->GetView().IsDrawMode())
+ pSh->GetView().LeaveDrawCreate();
+ pSh->EnterStdMode();
+
switch (nSlotId)
{
case FN_NAVIGATION_BACK:
diff --git a/sw/source/uibase/wrtsh/navmgr.cxx b/sw/source/uibase/wrtsh/navmgr.cxx
index 10130fbe4b4f..1960f831e4ee 100644
--- a/sw/source/uibase/wrtsh/navmgr.cxx
+++ b/sw/source/uibase/wrtsh/navmgr.cxx
@@ -20,12 +20,10 @@
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
-#include <edtwin.hxx>
-
// This method positions the cursor to the position rPos.
void SwNavigationMgr::GotoSwPosition(const SwPosition &rPos) {
- m_rMyShell.GetView().GetEditWin().GrabFocus();
+
// EnterStdMode() prevents the cursor to 'block' the current
// shell when it should move from the image back to the normal shell
m_rMyShell.EnterStdMode();
More information about the Libreoffice-commits
mailing list