- 
f82c6944
 by Byeong-Sik Jeon   at 2025-04-17T12:16:31+02:00 
win32u: Add more CompAttr, CompClause implementation using cursor_begin, cursor_end concept.
If CompAttr and CompClause are properly configured, Japanese input
will be more comfortable.
Inspired by cursor_begin and cursor_end from Wayland zwp_text_input_v3::
preedit_string, I extended the cursor_pos concept as follows:
    cursor_pos = MAKELONG( cursor_begin, cursor_end );
ime_to_tascii_ex() uses this to construct Compttr, CompClause.
MS Windows native CompStrAttr, CompStrClause is a bit more complicated
than this, but the concept is useful enough.
It requires additional implementation in the Wine ime_ui_window proc and
richedit control. However, it is useful for applications that inline ime
composition string.
This can be tested with MS Office Word, Excel. LANG=ja_JP.UTF-8 wine EXCEL.EXE
Test key sequences:
  - 'n-i-h-o-n-g-o-n-o-m-o-j-i-d-e-s-u-.-SPACE'.
  - And, RIGHT, LEFT, Shift+LEFT, Shift+RIGHT, ESC, SPACE, UP, DOWN, etc.
 
- 
a78484fb
 by Byeong-Sik Jeon   at 2025-04-17T12:16:33+02:00 
winewayland: Extend cursor_pos using cursor_begin, cursor_end.
 
- 
a640e594
 by Byeong-Sik Jeon   at 2025-04-17T12:16:33+02:00 
winemac: Extend cursor_pos using cursor_begin, cursor_end.
 
- 
79c16584
 by Byeong-Sik Jeon   at 2025-04-17T12:16:33+02:00 
winex11: Extend cursor_pos using cursor_begin, cursor_end.
When tested on ibus, fcitx5, and uim, the applicable bit is XIMReverse.
Since these always have chg_first == 0, I referenced the libX11 documentation
for applying chg_first.
 
- 
577a7f6c
 by Byeong-Sik Jeon   at 2025-04-17T12:16:34+02:00 
winex11: Update only when caret pos changed in xic_preedit_caret.