[Libreoffice-commits] core.git: Branch 'libreoffice-5-3' - editeng/source

Eike Rathke erack at redhat.com
Wed Nov 30 15:22:28 UTC 2016


 editeng/source/editeng/impedit.cxx |    5 +++++
 1 file changed, 5 insertions(+)

New commits:
commit bc04956ca38c0100784845118cff43931956ae35
Author: Eike Rathke <erack at redhat.com>
Date:   Wed Nov 30 14:47:58 2016 +0100

    Resolves: tdf#104152 suppress notifications from EditEngine during Paste
    
    Broadcast once at the end instead to notify a11y.
    
    Change-Id: I12383b6efbbb2b149f0d73c67d8576fcc050b253
    (cherry picked from commit 7c20d0174c59d46b11fc5029fe3fc0c00f5dc6d0)
    Reviewed-on: https://gerrit.libreoffice.org/31424
    Reviewed-by: Eike Rathke <erack at redhat.com>
    Tested-by: Jenkins <ci at libreoffice.org>

diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx
index eeacfe0..e4eb615 100644
--- a/editeng/source/editeng/impedit.cxx
+++ b/editeng/source/editeng/impedit.cxx
@@ -1521,9 +1521,14 @@ void ImpEditView::Paste( css::uno::Reference< css::datatransfer::clipboard::XCli
     }
     else
     {
+        // Prevent notifications of paragraph inserts et al that would trigger
+        // a11y to format content in a half-ready state when obtaining
+        // paragraphs. Collect and broadcast when done instead.
+        pEditEngine->pImpEditEngine->EnterBlockNotifications();
         aSel = pEditEngine->InsertText(
             xDataObj, OUString(), aSel.Min(),
             bUseSpecial && pEditEngine->GetInternalEditStatus().AllowPasteSpecial());
+        pEditEngine->pImpEditEngine->LeaveBlockNotifications();
     }
 
     aPasteOrDropInfos.nEndPara = pEditEngine->GetEditDoc().GetPos( aSel.Max().GetNode() );


More information about the Libreoffice-commits mailing list