Alistair Leslie-Hughes : user32/edit: Don't set caret position when we don 't have focus.
Alexandre Julliard
julliard at winehq.org
Wed Dec 12 15:16:19 CST 2018
Module: wine
Branch: master
Commit: 7b742485f901fd305833d37ba602b5efe4dfc44f
URL: https://source.winehq.org/git/wine.git/?a=commit;h=7b742485f901fd305833d37ba602b5efe4dfc44f
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Thu Dec 6 21:23:47 2018 +0000
user32/edit: Don't set caret position when we don't have focus.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/user32/edit.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/dlls/user32/edit.c b/dlls/user32/edit.c
index 48c65ea..6f8f412 100644
--- a/dlls/user32/edit.c
+++ b/dlls/user32/edit.c
@@ -1799,9 +1799,14 @@ static LRESULT EDIT_EM_Scroll(EDITSTATE *es, INT action)
static void EDIT_SetCaretPos(EDITSTATE *es, INT pos,
BOOL after_wrap)
{
- LRESULT res = EDIT_EM_PosFromChar(es, pos, after_wrap);
- TRACE("%d - %dx%d\n", pos, (short)LOWORD(res), (short)HIWORD(res));
- SetCaretPos((short)LOWORD(res), (short)HIWORD(res));
+ LRESULT res;
+
+ if (es->flags & EF_FOCUSED)
+ {
+ res = EDIT_EM_PosFromChar(es, pos, after_wrap);
+ TRACE("%d - %dx%d\n", pos, (short)LOWORD(res), (short)HIWORD(res));
+ SetCaretPos((short)LOWORD(res), (short)HIWORD(res));
+ }
}
@@ -1870,7 +1875,6 @@ static void EDIT_EM_ScrollCaret(EDITSTATE *es)
}
}
- if(es->flags & EF_FOCUSED)
EDIT_SetCaretPos(es, es->selection_end, es->flags & EF_AFTER_WRAP);
}
More information about the wine-cvs
mailing list