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

Kohei Yoshida kohei.yoshida at collabora.com
Wed Nov 30 00:57:46 UTC 2016


 sc/source/ui/app/inputhdl.cxx |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 9ba24ac54100a5af6ecdde479ebeb5c916e6fad2
Author: Kohei Yoshida <kohei.yoshida at collabora.com>
Date:   Tue Nov 29 16:51:26 2016 -0500

    tdf#71409: always create edit engine instance for the input window.
    
    In order to properly manage accessibility events esp when no letters
    are typed.  Without this, doing things like:
    
    1) hit F2 to active cell edit,
    2) hit ESC to deactivate,
    3) go back to 1) and repeat the cycle several times,
    4) hit Shift-Ctrl-F2 to activate the top input window
    
    would result in duplicated accessibility events fired, the number of
    which depends on how many times the above step was repeated.
    
    Change-Id: I116fdcbc63cbe9d33039d38a47770a6813c4e523
    Reviewed-on: https://gerrit.libreoffice.org/31389
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Kohei Yoshida <libreoffice at kohei.us>

diff --git a/sc/source/ui/app/inputhdl.cxx b/sc/source/ui/app/inputhdl.cxx
index 1264eb9..d4e0a71 100644
--- a/sc/source/ui/app/inputhdl.cxx
+++ b/sc/source/ui/app/inputhdl.cxx
@@ -1894,8 +1894,14 @@ void ScInputHandler::UpdateActiveView()
         }
     }
 
-    if (pInputWin && eMode == SC_INPUT_TOP )
+    if (pInputWin)
+    {
+        // tdf#71409: Always create the edit engine instance for the input
+        // window, in order to properly manage accessibility events.
         pTopView = pInputWin->GetEditView();
+        if (eMode != SC_INPUT_TOP)
+            pTopView = nullptr;
+    }
     else
         pTopView = nullptr;
 }


More information about the Libreoffice-commits mailing list