diff options
| author | IllusionMan1212 <hisham.abourgheba@gmail.com> | 2025-10-12 23:49:33 +0200 |
|---|---|---|
| committer | IllusionMan1212 <hisham.abourgheba@gmail.com> | 2025-10-12 23:49:33 +0200 |
| commit | e4ccfd6e586544084475c4b171fee3d6829ef2ea (patch) | |
| tree | 275636835a86aa16fe0edf278facffe44ede2392 | |
| parent | 5b0510a6bd6e3d129258b9c9913114f744f57a15 (diff) | |
vendor/xlib: a few more IM-related procedures and constants
| -rw-r--r-- | vendor/x11/xlib/xlib_const.odin | 17 | ||||
| -rw-r--r-- | vendor/x11/xlib/xlib_procs.odin | 29 |
2 files changed, 45 insertions, 1 deletions
diff --git a/vendor/x11/xlib/xlib_const.odin b/vendor/x11/xlib/xlib_const.odin index 27af6a2d8..6a57a516f 100644 --- a/vendor/x11/xlib/xlib_const.odin +++ b/vendor/x11/xlib/xlib_const.odin @@ -1,6 +1,15 @@ #+build linux, freebsd, openbsd package xlib +XNClientWindow: cstring : "clientWindow" +XNInputStyle: cstring : "inputStyle" +XNFocusWindow: cstring : "focusWindow" +XNSpotLocation: cstring : "spotLocation" +XNPreeditAttributes: cstring : "preeditAttributes" + +XIMPreeditNothing :: 0x0008 +XIMStatusNothing :: 0x0400 + /* ---- X11/extensions/XKB.h ---------------------------------------------------------*/ XkbMinLegalKeyCode :: 8 @@ -138,6 +147,14 @@ Status :: enum i32 { LastExtensionError = 255, } +LookupStringStatus :: enum i32 { + BufferOverflow = -1, + LookupNone = 1, + LookupChars = 2, + LookupKeySym = 3, + LookupBoth = 4, +} + ByteOrder :: enum i32 { LSBFirst = 0, MSBFirst = 1, diff --git a/vendor/x11/xlib/xlib_procs.odin b/vendor/x11/xlib/xlib_procs.odin index f5ac373ae..c33c6d351 100644 --- a/vendor/x11/xlib/xlib_procs.odin +++ b/vendor/x11/xlib/xlib_procs.odin @@ -374,7 +374,7 @@ foreign xlib { SetSelectionOwner :: proc( display: ^Display, selection: Atom, - owber: Window, + owner: Window, time: Time, ) --- GetSelectionOwner :: proc( @@ -1030,6 +1030,7 @@ foreign xlib { Pending :: proc(display: ^Display) -> i32 --- NextEvent :: proc(display: ^Display, event: ^XEvent) --- PeekEvent :: proc(display: ^Display, event: ^XEvent) --- + FilterEvent :: proc(event: ^XEvent, window: Window) -> b32 --- GetEventData :: proc(display: ^Display, cookie: ^XGenericEventCookie) -> b32 --- FreeEventData :: proc(display: ^Display, cookie: ^XGenericEventCookie) --- // Selecting events using a predicate procedure @@ -1697,6 +1698,24 @@ foreign xlib { res_class: cstring, ) -> XIM --- SetLocaleModifiers :: proc(modifiers: cstring) -> cstring --- + CreateIC :: proc( + im: XIM, + #c_vararg args: ..any, + ) -> XIC --- + SetICFocus :: proc( + ic: XIC, + ) --- + UnsetICFocus :: proc( + ic: XIC, + ) --- + SetICValues :: proc( + ic: XIC, + #c_vararg args: ..any, + ) -> cstring --- + VaCreateNestedList :: proc( + unused: i32, + #c_vararg args: ..any, + ) -> XVaNestedList --- } @(default_calling_convention="c") @@ -2046,4 +2065,12 @@ foreign xlib { num: u32, xkb: XkbDescPtr, ) -> Status --- + Xutf8LookupString :: proc( + ic: XIC, + event: ^XKeyPressedEvent, + buffer_return: ^cstring, + bytes_buffer: i32, + keysym_return: ^KeySym, + status_return: ^LookupStringStatus, + ) -> i32 --- } |