diff options
| author | zeertzjq <zeertzjq@outlook.com> | 2026-03-29 22:29:58 +0800 |
|---|---|---|
| committer | zeertzjq <zeertzjq@outlook.com> | 2026-03-29 22:30:24 +0800 |
| commit | a89b9750ee8875a349a2a2e53983faa007a7de73 (patch) | |
| tree | 404c66691eb0e2c3f2e97defb812a123139f4c14 /scripts/lintcommit.lua | |
| parent | 527684c8dd1d312a19d91784cfaa3ccf499ebfba (diff) | |
| download | rneovim-a89b9750ee8875a349a2a2e53983faa007a7de73.tar.gz rneovim-a89b9750ee8875a349a2a2e53983faa007a7de73.tar.bz2 rneovim-a89b9750ee8875a349a2a2e53983faa007a7de73.zip | |
vim-patch:9.2.0050: WM_SETFOCUS not handled immediately
Problem: In gvim on Windows, a certain problem can occur when the
WM_SETFOCUS event sent after an external command is not
processed immediately.
Solution: After posting WM_SETFOCUS, run the message loop to process it
as quickly as possible (Muraoka Taro).
The problem is that Test_normal11_showcmd may fail when running the
test_normal.vim test. Investigation revealed that the trigger was an
external command executed in the previous test,
Test_mouse_shape_after_failed_change, when two tests were executed
consecutively. In gvim on Windows, a WM_SETFOCUS event will be sent
when an external command finishes executing. This WM_SETFOCUS event is
not processed immediately, but rather by redraw, which is expected to
update showcmd. Because it is queued in typebuf at this time,
clear_showcmd(), which expects typebuf to be empty, cannot update
showcmd.
Also added a test that simulates the above problem.
closes: vim/vim#19167
https://github.com/vim/vim/commit/c4a6fa3eade9d30e0bda7e5b7077951da9e75279
Co-authored-by: Muraoka Taro <koron.kaoriya@gmail.com>
Diffstat (limited to 'scripts/lintcommit.lua')
0 files changed, 0 insertions, 0 deletions