summaryrefslogtreecommitdiff
path: root/sw/source/core/crsr/crsrsh.cxx
diff options
context:
space:
mode:
authorJim Raykowski <raykowj@gmail.com>2024-02-27 19:22:50 -0900
committerJim Raykowski <raykowj@gmail.com>2024-03-05 07:21:02 +0100
commitcf6c6db51eada17408c412173331db0820a23e5d (patch)
tree154f49cd710a39d369f8aaa1161db5a3dacbaeb1 /sw/source/core/crsr/crsrsh.cxx
parent357b43e7d7c1bd91e908f4fb92ba8c7472fe39dc (diff)
tdf#49994 Fix text selection over pages for multi column tables
with repeated headings Change-Id: I6cddeb132ff4f8ff27ea03701067d7a3d4c4cf82 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/79113 Tested-by: Jenkins Reviewed-by: Jim Raykowski <raykowj@gmail.com>
Diffstat (limited to 'sw/source/core/crsr/crsrsh.cxx')
-rw-r--r--sw/source/core/crsr/crsrsh.cxx19
1 files changed, 12 insertions, 7 deletions
diff --git a/sw/source/core/crsr/crsrsh.cxx b/sw/source/core/crsr/crsrsh.cxx
index 04c904f13905..3e9ca93b3380 100644
--- a/sw/source/core/crsr/crsrsh.cxx
+++ b/sw/source/core/crsr/crsrsh.cxx
@@ -1994,22 +1994,27 @@ void SwCursorShell::UpdateCursor( sal_uInt16 eFlags, bool bIdleEnd )
{
pTableFrame = nullptr;
- SwMoveFnCollection const & fnPosSect = *pPos < *pITmpCursor->GetMark()
- ? fnSectionStart
- : fnSectionEnd;
-
// then only select inside the Box
if( m_pTableCursor )
{
+ SwMoveFnCollection const & fnPosSect = *pPos < *pITmpCursor->GetMark()
+ ? fnSectionStart
+ : fnSectionEnd;
+
m_pCurrentCursor->SetMark();
*m_pCurrentCursor->GetMark() = *m_pTableCursor->GetMark();
m_pCurrentCursor->GetMkPos() = m_pTableCursor->GetMkPos();
m_pTableCursor->DeleteMark();
m_pTableCursor->SwSelPaintRects::Hide();
- }
- *m_pCurrentCursor->GetPoint() = *m_pCurrentCursor->GetMark();
- GoCurrSection( *m_pCurrentCursor, fnPosSect );
+ *m_pCurrentCursor->GetPoint() = *m_pCurrentCursor->GetMark();
+ GoCurrSection( *m_pCurrentCursor, fnPosSect );
+ }
+ else
+ {
+ eFlags &= SwCursorShell::UPDOWN;
+ *m_pCurrentCursor->GetPoint() = *m_pCurrentCursor->GetMark();
+ }
}
}