aboutsummaryrefslogtreecommitdiffhomepage
path: root/win32
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2016-05-14 10:32:49 +1000
committerNeil <nyamatongwe@gmail.com>2016-05-14 10:32:49 +1000
commit5a9f941bc10507eab2e352978bd7f35ca26920dc (patch)
tree9950448dbd837900214f4b85e892304b2492fcb4 /win32
parent4aa5bca9aceb2131947bd2e75db379ce1039ae4b (diff)
downloadscintilla-mirror-5a9f941bc10507eab2e352978bd7f35ca26920dc.tar.gz
Post a caret moved accessibility event in Editor::MovedCaret so that screen
readers like NVDA will speak when extending the selection with a Shift+Down key combination scrolls but does not move the caret position relative to the screen.
Diffstat (limited to 'win32')
-rw-r--r--win32/ScintillaWin.cxx5
1 files changed, 5 insertions, 0 deletions
diff --git a/win32/ScintillaWin.cxx b/win32/ScintillaWin.cxx
index 3c7cd45be..3ed249ca0 100644
--- a/win32/ScintillaWin.cxx
+++ b/win32/ScintillaWin.cxx
@@ -325,6 +325,7 @@ class ScintillaWin :
virtual void SetTrackMouseLeaveEvent(bool on);
virtual bool PaintContains(PRectangle rc);
virtual void ScrollText(int linesToMove);
+ virtual void NotifyCaretMove();
virtual void UpdateSystemCaret();
virtual void SetVerticalScrollPos();
virtual void SetHorizontalScrollPos();
@@ -1838,6 +1839,10 @@ void ScintillaWin::ScrollText(int /* linesToMove */) {
UpdateSystemCaret();
}
+void ScintillaWin::NotifyCaretMove() {
+ NotifyWinEvent(EVENT_OBJECT_LOCATIONCHANGE, MainHWND(), OBJID_CARET, CHILDID_SELF);
+}
+
void ScintillaWin::UpdateSystemCaret() {
if (hasFocus) {
if (HasCaretSizeChanged()) {