[Libreoffice-commits] core.git: sw/source

Caolán McNamara (via logerrit) logerrit at kemper.freedesktop.org
Thu Aug 6 08:48:00 UTC 2020


 sw/source/core/docnode/ndtbl.cxx |    9 +++++++++
 1 file changed, 9 insertions(+)

New commits:
commit 818511e32f41bdf873bb660ec67bc82e4a27e847
Author:     Caolán McNamara <caolanm at redhat.com>
AuthorDate: Wed Aug 5 21:08:04 2020 +0100
Commit:     Caolán McNamara <caolanm at redhat.com>
CommitDate: Thu Aug 6 10:47:21 2020 +0200

    tdf#135098 update SwTableCursor m_SelectedBoxes before merge
    
    so it does not contain the soon to-be-deleted SwTableBox so if the rPam is
    queried via a11y it doesn't claim the deleted cell still exists.
    
    tdf#122844 may be the same issue
    
    Change-Id: I1ac3752676162ba5a29c0916039b2b467e2ac41a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/100186
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolanm at redhat.com>

diff --git a/sw/source/core/docnode/ndtbl.cxx b/sw/source/core/docnode/ndtbl.cxx
index 5f7e1d6ee3d3..c0496469e95d 100644
--- a/sw/source/core/docnode/ndtbl.cxx
+++ b/sw/source/core/docnode/ndtbl.cxx
@@ -2297,6 +2297,15 @@ TableMergeErr SwDoc::MergeTable( SwPaM& rPam )
             while( &rPam != ( pTmp = pTmp->GetNext() ))
                 for( int i = 0; i < 2; ++i )
                     pTmp->GetBound( static_cast<bool>(i) ) = *rPam.GetPoint();
+
+            if (SwTableCursor* pTableCursor = dynamic_cast<SwTableCursor*>(&rPam))
+            {
+                // tdf#135098 update selection so rPam's m_SelectedBoxes is updated
+                // to not contain the soon to-be-deleted SwTableBox so if the rPam
+                // is queried via a11y it doesn't claim the deleted cell still
+                // exists
+                pTableCursor->NewTableSelection();
+            }
         }
 
         // Merge them


More information about the Libreoffice-commits mailing list