https://git.reactos.org/?p=reactos.git;a=commitdiff;h=bc76250bd8cad3883397c94ce091632e8424b066
commit bc76250bd8cad3883397c94ce091632e8424b066 Author: Doug Lyons <dougly...@douglyons.com> AuthorDate: Fri Sep 6 08:25:40 2024 -0500 Commit: GitHub <nore...@github.com> CommitDate: Fri Sep 6 08:25:40 2024 -0500 [COMCTL32] Fix edit control cursor positioning (#7317) Fix caret positioning regression from Wine Sync to Wine 5.0 affecting notepad. Restore older Wine code that handles caret position with ReactOS better. This was a regression from 0.4.15-dev-8612-g0707475 https://github.com/reactos/reactos/commit/0707475f6974a0add99fc396146c26a970c5148b CORE-19731 --- dll/win32/comctl32/edit.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dll/win32/comctl32/edit.c b/dll/win32/comctl32/edit.c index 6d124ce64a4..767a63942f9 100644 --- a/dll/win32/comctl32/edit.c +++ b/dll/win32/comctl32/edit.c @@ -1050,7 +1050,15 @@ static LRESULT EDIT_EM_PosFromChar(EDITSTATE *es, INT index, BOOL after_wrap) lw = line_def->width; w = es->format_rect.right - es->format_rect.left; if (line_def->ssa) +#ifdef __REACTOS__ /* CORE-19731 & match win32ss/user/user32/controls/edit.c */ + { + ScriptStringCPtoX(line_def->ssa, (index - 1) - li, TRUE, &x); + x -= es->x_offset; + } + else +#else ScriptStringCPtoX(line_def->ssa, (index - 1) - li, TRUE, &x); +#endif #ifdef __REACTOS__ /* CORE-15780 */ x = (lw > 0 ? es->x_offset : x - es->x_offset); #else