Alistair Leslie-Hughes : user32/edit: Don't set caret position when we don 't have focus.
Module: wine Branch: master Commit: 7b742485f901fd305833d37ba602b5efe4dfc44f URL: https://source.winehq.org/git/wine.git/?a=commit;h=7b742485f901fd305833d37ba... Author: Alistair Leslie-Hughes <leslie_alistair(a)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(a)hotmail.com> Signed-off-by: Nikolay Sivov <nsivov(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)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); }
participants (1)
-
Alexandre Julliard