diff options
Diffstat (limited to 'yasl-gaps-report.md')
| -rw-r--r-- | yasl-gaps-report.md | 43 |
1 files changed, 13 insertions, 30 deletions
diff --git a/yasl-gaps-report.md b/yasl-gaps-report.md index 36386a5..0268913 100644 --- a/yasl-gaps-report.md +++ b/yasl-gaps-report.md @@ -60,45 +60,28 @@ Effect: dropping files onto a terminal window does nothing on X11. Needed in yasl: XDND file-drop handling for X11. -### 4. IME preedit is missing on X11 (yasl) +### 4. IME preedit on X11 (yasl) -The X11 input context uses `XIMPreeditNothing`. The yasl README already -says X11 does not support IME preedit text. +Status: **Resolved**. Added `XNSpotLocation` candidate placement via `yasl_surface_set_ime_caret`, along with `yasl_surface_ime_preedit` and `yasl_surface_ime_preedit_cursor` backend operations. -Effect: composed text (for example CJK input) does not show inline on X11. +### 5. Cocoa popups (yasl) -## Popups, selection, and caps +Status: **Resolved** in commit `b20263c`. Child window popups implemented, and `YASL_CAP_POPUPS` is advertised. -### 5. Cocoa has no popups (yasl) +### 6. X11 popups (yasl) -`cocoa_surface_create_popup` and `cocoa_surface_popup_reposition` are -stubs that return NULL or false. `cocoa_display_caps` does not set -`YASL_CAP_POPUPS`. +Status: **Resolved** in commit `b20263c`. Override-redirect popups implemented, and `YASL_CAP_POPUPS` is advertised. -Effect: the project's native menu popup is off on macOS. `open_popup` in -`src/window/ui/ui_menu.c` returns false, so the menu stays in the window. +### 7. Cocoa primary selection (yasl) -### 6. X11 has no popups (yasl) +Status: **Resolved** in commit `b20263c`. Dedicated pasteboard emulation implemented, and `YASL_CAP_PRIMARY_SELECTION` is advertised. -`caps()` in `src/x11/window.c` does not set `YASL_CAP_POPUPS`. +### 8. X11 and Cocoa CSD and frame pacing flags (yasl) -Effect: same as item 5. Menus stay in the window on X11. - -### 7. Cocoa has no primary selection (yasl) - -`cocoa_display_caps` does not set `YASL_CAP_PRIMARY_SELECTION`. yasl says an -unsupported primary selection is a no-op. - -Effect: select-to-copy and middle-click paste do nothing on macOS. The -terminal calls these in `src/window/terminal/view.c` (`window_copy` and -`window_paste` with `YASL_PRIMARY`). - -### 8. X11 and Cocoa have no CSD or frame pacing flags (yasl) - -These caps are set on Wayland only. Cocoa sets `YASL_CAP_FRAME_PACING`. -X11 sets neither. The project does not read these flags for drawing -decisions in the current code. Check this before you rely on pacing on -X11. +Status: **Resolved**. +- Cocoa advertises `YASL_CAP_CSD` and `YASL_CAP_FRAME_PACING`. +- X11 advertises `YASL_CAP_CSD` with full `_NET_WM_MOVERESIZE` interactive move/resize and `_GTK_SHOW_WINDOW_MENU`. +- The `yasl_run` application runner regulates X11 frame pacing at ~16ms for continuous surfaces to prevent spinloops. ## Project-side gaps (wsap_term) |
