From 70d983dc603dbc52ef1c93d7c8b0a9b6ac96b36b Mon Sep 17 00:00:00 2001 From: Steven Allen Date: Sat, 13 Jan 2024 20:31:46 -0800 Subject: [PATCH] Update to xcb-proto 1.16.0 * Makefile: Add the dbe (double buffering) extension. * xcb-dbe.el: The new DBE extension. * xcb-dpms.el: * xcb-dri3.el: * xcb-present.el: * xcb-xfixes.el: * xcb-xinput.el: * xcb-xprint: Regenerate from xcb-proto 1.16.0, and with support for floats & doubles. --- Makefile | 2 +- xcb-dbe.el | 162 +++++++++++++++++++++++++++++++++++++++++++++++++ xcb-dpms.el | 26 +++++++- xcb-dri3.el | 9 ++- xcb-glx.el | 6 +- xcb-present.el | 4 +- xcb-xfixes.el | 21 ++++++- xcb-xinput.el | 104 +++++++++++++++++++++++++++++-- xcb-xprint.el | 4 ++ 9 files changed, 325 insertions(+), 13 deletions(-) create mode 100644 xcb-dbe.el diff --git a/Makefile b/Makefile index da36c8a..9e8c76b 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ PROTO_PATH := ../xcb-proto/src EMACS_BIN := emacs -Q -EXTENSIONS := bigreq composite damage dpms dri2 dri3 ge glx present randr \ +EXTENSIONS := bigreq composite damage dbe dpms dri2 dri3 ge glx present randr \ record render res screensaver shape shm sync xc_misc xevie xf86dri \ xf86vidmode xfixes xinerama xinput xkb xprint xselinux xtest xvmc xv diff --git a/xcb-dbe.el b/xcb-dbe.el new file mode 100644 index 0000000..409c37e --- /dev/null +++ b/xcb-dbe.el @@ -0,0 +1,162 @@ +;;; xcb-dbe.el --- X11 Dbe extension -*- lexical-binding: t -*- + +;; Copyright (C) 2015-2024 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Commentary: + +;; This file was generated by 'el_client.el' from 'dbe.xml', +;; which you can retrieve from . + +;;; Code: + +(require 'xcb-types) + +(defconst xcb:dbe:-extension-xname "DOUBLE-BUFFER") +(defconst xcb:dbe:-extension-name "Dbe") +(defconst xcb:dbe:-major-version 1) +(defconst xcb:dbe:-minor-version 0) + +(require 'xcb-xproto) + +(xcb:deftypealias 'xcb:dbe:BackBuffer 'xcb:DRAWABLE) + +(defconst xcb:dbe:SwapAction:Undefined 0) +(defconst xcb:dbe:SwapAction:Background 1) +(defconst xcb:dbe:SwapAction:Untouched 2) +(defconst xcb:dbe:SwapAction:Copied 3) + +(defclass xcb:dbe:SwapInfo + (xcb:-struct) + ((window :initarg :window :type xcb:WINDOW) + (swap-action :initarg :swap-action :type xcb:CARD8) + (pad~0 :initform 3 :type xcb:-pad))) + +(defclass xcb:dbe:BufferAttributes + (xcb:-struct) + ((window :initarg :window :type xcb:WINDOW))) + +(defclass xcb:dbe:VisualInfo + (xcb:-struct) + ((visual-id :initarg :visual-id :type xcb:VISUALID) + (depth :initarg :depth :type xcb:CARD8) + (perf-level :initarg :perf-level :type xcb:CARD8) + (pad~0 :initform 2 :type xcb:-pad))) + +(defclass xcb:dbe:VisualInfos + (xcb:-struct) + ((n-infos :initarg :n-infos :type xcb:CARD32) + (infos~ :initform + '(name infos type xcb:dbe:VisualInfo size + (xcb:-fieldref 'n-infos)) + :type xcb:-list) + (infos :initarg :infos :type xcb:-ignore))) + +(defclass xcb:dbe:BadBuffer + (xcb:-error) + ((~code :initform 0) + (bad-buffer :initarg :bad-buffer :type xcb:dbe:BackBuffer))) + +(defclass xcb:dbe:QueryVersion + (xcb:-request) + ((~opcode :initform 0 :type xcb:-u1) + (major-version :initarg :major-version :type xcb:CARD8) + (minor-version :initarg :minor-version :type xcb:CARD8) + (pad~0 :initform 2 :type xcb:-pad))) +(defclass xcb:dbe:QueryVersion~reply + (xcb:-reply) + ((pad~0 :initform 1 :type xcb:-pad) + (~sequence :type xcb:CARD16) + (length :type xcb:CARD32) + (major-version :initarg :major-version :type xcb:CARD8) + (minor-version :initarg :minor-version :type xcb:CARD8) + (pad~1 :initform 22 :type xcb:-pad))) + +(defclass xcb:dbe:AllocateBackBuffer + (xcb:-request) + ((~opcode :initform 1 :type xcb:-u1) + (window :initarg :window :type xcb:WINDOW) + (buffer :initarg :buffer :type xcb:dbe:BackBuffer) + (swap-action :initarg :swap-action :type xcb:CARD8) + (pad~0 :initform 3 :type xcb:-pad))) + +(defclass xcb:dbe:DeallocateBackBuffer + (xcb:-request) + ((~opcode :initform 2 :type xcb:-u1) + (buffer :initarg :buffer :type xcb:dbe:BackBuffer))) + +(defclass xcb:dbe:SwapBuffers + (xcb:-request) + ((~opcode :initform 3 :type xcb:-u1) + (n-actions :initarg :n-actions :type xcb:CARD32) + (actions~ :initform + '(name actions type xcb:dbe:SwapInfo size + (xcb:-fieldref 'n-actions)) + :type xcb:-list) + (actions :initarg :actions :type xcb:-ignore))) + +(defclass xcb:dbe:BeginIdiom + (xcb:-request) + ((~opcode :initform 4 :type xcb:-u1))) + +(defclass xcb:dbe:EndIdiom + (xcb:-request) + ((~opcode :initform 5 :type xcb:-u1))) + +(defclass xcb:dbe:GetVisualInfo + (xcb:-request) + ((~opcode :initform 6 :type xcb:-u1) + (n-drawables :initarg :n-drawables :type xcb:CARD32) + (drawables~ :initform + '(name drawables type xcb:DRAWABLE size + (xcb:-fieldref 'n-drawables)) + :type xcb:-list) + (drawables :initarg :drawables :type xcb:-ignore))) +(defclass xcb:dbe:GetVisualInfo~reply + (xcb:-reply) + ((pad~0 :initform 1 :type xcb:-pad) + (~sequence :type xcb:CARD16) + (length :type xcb:CARD32) + (n-supported-visuals :initarg :n-supported-visuals :type xcb:CARD32) + (pad~1 :initform 20 :type xcb:-pad) + (supported-visuals~ :initform + '(name supported-visuals type xcb:dbe:VisualInfos size + (xcb:-fieldref 'n-supported-visuals)) + :type xcb:-list) + (supported-visuals :initarg :supported-visuals :type xcb:-ignore))) + +(defclass xcb:dbe:GetBackBufferAttributes + (xcb:-request) + ((~opcode :initform 7 :type xcb:-u1) + (buffer :initarg :buffer :type xcb:dbe:BackBuffer))) +(defclass xcb:dbe:GetBackBufferAttributes~reply + (xcb:-reply) + ((pad~0 :initform 1 :type xcb:-pad) + (~sequence :type xcb:CARD16) + (length :type xcb:CARD32) + (attributes :initarg :attributes :type xcb:dbe:BufferAttributes) + (pad~1 :initform 20 :type xcb:-pad))) + +(defconst xcb:dbe:error-number-class-alist + '((0 . xcb:dbe:BadBuffer)) + "(error-number . error-class) alist.") + + + +(provide 'xcb-dbe) + +;;; xcb-dbe.el ends here diff --git a/xcb-dpms.el b/xcb-dpms.el index 0e2a166..12f1c15 100644 --- a/xcb-dpms.el +++ b/xcb-dpms.el @@ -28,8 +28,10 @@ (defconst xcb:dpms:-extension-xname "DPMS") (defconst xcb:dpms:-extension-name "DPMS") -(defconst xcb:dpms:-major-version 0) -(defconst xcb:dpms:-minor-version 0) +(defconst xcb:dpms:-major-version 1) +(defconst xcb:dpms:-minor-version 2) + +(require 'xcb-xproto) (defclass xcb:dpms:GetVersion (xcb:-request) @@ -105,6 +107,26 @@ (state :initarg :state :type xcb:BOOL) (pad~1 :initform 21 :type xcb:-pad))) +(defconst xcb:dpms:EventMask:InfoNotify 1) + +(defclass xcb:dpms:SelectInput + (xcb:-request) + ((~opcode :initform 8 :type xcb:-u1) + (event-mask :initarg :event-mask :type xcb:CARD32))) + +(defclass xcb:dpms:InfoNotify + (xcb:-generic-event) + ((~evtype :initform 0) + (pad~0 :initform 2 :type xcb:-pad) + (timestamp :initarg :timestamp :type xcb:TIMESTAMP) + (power-level :initarg :power-level :type xcb:CARD16) + (state :initarg :state :type xcb:BOOL) + (pad~1 :initform 21 :type xcb:-pad))) + +(defconst xcb:dpms:xge-number-class-alist + '((0 . xcb:dpms:InfoNotify)) + "(xge-number . event-class) alist.") + (provide 'xcb-dpms) diff --git a/xcb-dri3.el b/xcb-dri3.el index 2993eb5..3abc664 100644 --- a/xcb-dri3.el +++ b/xcb-dri3.el @@ -29,7 +29,7 @@ (defconst xcb:dri3:-extension-xname "DRI3") (defconst xcb:dri3:-extension-name "DRI3") (defconst xcb:dri3:-major-version 1) -(defconst xcb:dri3:-minor-version 2) +(defconst xcb:dri3:-minor-version 3) (require 'xcb-xproto) @@ -200,6 +200,13 @@ :type xcb:-list) (buffers :initarg :buffers :type xcb:-ignore))) +(defclass xcb:dri3:SetDRMDeviceInUse + (xcb:-request) + ((~opcode :initform 9 :type xcb:-u1) + (window :initarg :window :type xcb:WINDOW) + (drmMajor :initarg :drmMajor :type xcb:CARD32) + (drmMinor :initarg :drmMinor :type xcb:CARD32))) + (provide 'xcb-dri3) diff --git a/xcb-glx.el b/xcb-glx.el index 1a2d829..c04d5e7 100644 --- a/xcb-glx.el +++ b/xcb-glx.el @@ -45,9 +45,9 @@ (xcb:deftypealias 'xcb:glx:DRAWABLE 'xcb:-u4) -(xcb:deftypealias 'xcb:glx:FLOAT32 'xcb:glx:float) +(xcb:deftypealias 'xcb:glx:FLOAT32 'xcb:float) -(xcb:deftypealias 'xcb:glx:FLOAT64 'xcb:glx:double) +(xcb:deftypealias 'xcb:glx:FLOAT64 'xcb:double) (xcb:deftypealias 'xcb:glx:BOOL32 'xcb:CARD32) @@ -575,6 +575,7 @@ (xcb:-fieldref 'gl-str-len)) :type xcb:-list) (gl-extension-string :initarg :gl-extension-string :type xcb:-ignore) + (pad~0 :initform 4 :type xcb:-pad-align) (glx-extension-string~ :initform '(name glx-extension-string type xcb:char size (xcb:-fieldref 'glx-str-len)) @@ -619,6 +620,7 @@ (xcb:-fieldref 'gl-str-len)) :type xcb:-list) (gl-extension-string :initarg :gl-extension-string :type xcb:-ignore) + (pad~0 :initform 4 :type xcb:-pad-align) (glx-extension-string~ :initform '(name glx-extension-string type xcb:char size (xcb:-fieldref 'glx-str-len)) diff --git a/xcb-present.el b/xcb-present.el index 395e8b0..56e1b63 100644 --- a/xcb-present.el +++ b/xcb-present.el @@ -29,7 +29,7 @@ (defconst xcb:present:-extension-xname "Present") (defconst xcb:present:-extension-name "Present") (defconst xcb:present:-major-version 1) -(defconst xcb:present:-minor-version 2) +(defconst xcb:present:-minor-version 3) (require 'xcb-xproto) @@ -55,11 +55,13 @@ (defconst xcb:present:Option:Copy 2) (defconst xcb:present:Option:UST 4) (defconst xcb:present:Option:Suboptimal 8) +(defconst xcb:present:Option:AsyncMayTear 16) (defconst xcb:present:Capability:None 0) (defconst xcb:present:Capability:Async 1) (defconst xcb:present:Capability:Fence 2) (defconst xcb:present:Capability:UST 4) +(defconst xcb:present:Capability:AsyncMayTear 8) (defconst xcb:present:CompleteKind:Pixmap 0) (defconst xcb:present:CompleteKind:NotifyMSC 1) diff --git a/xcb-xfixes.el b/xcb-xfixes.el index 7b52c9f..5b5fdb8 100644 --- a/xcb-xfixes.el +++ b/xcb-xfixes.el @@ -28,7 +28,7 @@ (defconst xcb:xfixes:-extension-xname "XFIXES") (defconst xcb:xfixes:-extension-name "XFixes") -(defconst xcb:xfixes:-major-version 5) +(defconst xcb:xfixes:-major-version 6) (defconst xcb:xfixes:-minor-version 0) (require 'xcb-xproto) @@ -419,6 +419,25 @@ ((~opcode :initform 32 :type xcb:-u1) (barrier :initarg :barrier :type xcb:xfixes:BARRIER))) +(defconst xcb:xfixes:ClientDisconnectFlags:Default 0) +(defconst xcb:xfixes:ClientDisconnectFlags:Terminate 1) + +(defclass xcb:xfixes:SetClientDisconnectMode + (xcb:-request) + ((~opcode :initform 33 :type xcb:-u1) + (disconnect-mode :initarg :disconnect-mode :type xcb:CARD32))) + +(defclass xcb:xfixes:GetClientDisconnectMode + (xcb:-request) + ((~opcode :initform 34 :type xcb:-u1))) +(defclass xcb:xfixes:GetClientDisconnectMode~reply + (xcb:-reply) + ((pad~0 :initform 1 :type xcb:-pad) + (~sequence :type xcb:CARD16) + (length :type xcb:CARD32) + (disconnect-mode :initarg :disconnect-mode :type xcb:CARD32) + (pad~1 :initform 20 :type xcb:-pad))) + (defconst xcb:xfixes:error-number-class-alist '((0 . xcb:xfixes:BadRegion)) "(error-number . error-class) alist.") diff --git a/xcb-xinput.el b/xcb-xinput.el index e35cb0e..93ebee6 100644 --- a/xcb-xinput.el +++ b/xcb-xinput.el @@ -29,7 +29,7 @@ (defconst xcb:xinput:-extension-xname "XInputExtension") (defconst xcb:xinput:-extension-name "Input") (defconst xcb:xinput:-major-version 2) -(defconst xcb:xinput:-minor-version 3) +(defconst xcb:xinput:-minor-version 4) (require 'xcb-xfixes) @@ -1642,6 +1642,7 @@ (defconst xcb:xinput:DeviceClassType:Valuator 2) (defconst xcb:xinput:DeviceClassType:Scroll 3) (defconst xcb:xinput:DeviceClassType:Touch 8) +(defconst xcb:xinput:DeviceClassType:Gesture 9) (defconst xcb:xinput:DeviceType:MasterPointer 1) (defconst xcb:xinput:DeviceType:MasterKeyboard 2) @@ -1710,6 +1711,14 @@ (mode :initarg :mode :type xcb:CARD8) (num-touches :initarg :num-touches :type xcb:CARD8))) +(defclass xcb:xinput:GestureClass + (xcb:-struct) + ((type :initarg :type :type xcb:CARD16) + (len :initarg :len :type xcb:CARD16) + (sourceid :initarg :sourceid :type xcb:xinput:DeviceId) + (num-touches :initarg :num-touches :type xcb:CARD8) + (pad~0 :initform 1 :type xcb:-pad))) + (defclass xcb:xinput:ValuatorClass (xcb:-struct) ((type :initarg :type :type xcb:CARD16) @@ -1726,7 +1735,12 @@ (defclass xcb:xinput:DeviceClass (xcb:-struct) - ((type :initarg :type :type xcb:CARD16) + ((~size :initarg :~size :type xcb:-ignore) + (~size :initform + '(* + (xcb:-fieldref 'len) + 4)) + (type :initarg :type :type xcb:CARD16) (len :initarg :len :type xcb:CARD16) (sourceid :initarg :sourceid :type xcb:xinput:DeviceId) (data :initform @@ -1742,7 +1756,9 @@ ((3) pad~4 number* scroll-type pad~5 flags increment) ((8) - mode* num-touches))) + mode* num-touches) + ((9) + num-touches* pad~6))) :type xcb:-switch) (pad~0 :initform [4 2] @@ -1791,7 +1807,9 @@ (flags :initarg :flags :type xcb:CARD32) (increment :initarg :increment :type xcb:xinput:FP3232) (mode* :initarg :mode* :type xcb:CARD8) - (num-touches :initarg :num-touches :type xcb:CARD8))) + (num-touches :initarg :num-touches :type xcb:CARD8) + (num-touches* :initarg :num-touches* :type xcb:CARD8) + (pad~6 :initform 1 :type xcb:-pad))) (defclass xcb:xinput:XIDeviceInfo (xcb:-struct) @@ -1916,6 +1934,8 @@ (defconst xcb:xinput:GrabType:Enter 2) (defconst xcb:xinput:GrabType:FocusIn 3) (defconst xcb:xinput:GrabType:TouchBegin 4) +(defconst xcb:xinput:GrabType:GesturePinchBegin 5) +(defconst xcb:xinput:GrabType:GestureSwipeBegin 6) (defclass xcb:xinput:GrabModifierInfo (xcb:-struct) @@ -2775,6 +2795,74 @@ (xcb:-event xcb:xinput:BarrierHit) ((~evtype :initform 26))) +(defconst xcb:xinput:GesturePinchEventFlags:GesturePinchCancelled 1) + +(defclass xcb:xinput:GesturePinchBegin + (xcb:-generic-event) + ((~evtype :initform 27) + (deviceid :initarg :deviceid :type xcb:xinput:DeviceId) + (time :initarg :time :type xcb:TIMESTAMP) + (detail :initarg :detail :type xcb:CARD32) + (root :initarg :root :type xcb:WINDOW) + (event :initarg :event :type xcb:WINDOW) + (child :initarg :child :type xcb:WINDOW) + (root-x :initarg :root-x :type xcb:xinput:FP1616) + (root-y :initarg :root-y :type xcb:xinput:FP1616) + (event-x :initarg :event-x :type xcb:xinput:FP1616) + (event-y :initarg :event-y :type xcb:xinput:FP1616) + (delta-x :initarg :delta-x :type xcb:xinput:FP1616) + (delta-y :initarg :delta-y :type xcb:xinput:FP1616) + (delta-unaccel-x :initarg :delta-unaccel-x :type xcb:xinput:FP1616) + (delta-unaccel-y :initarg :delta-unaccel-y :type xcb:xinput:FP1616) + (scale :initarg :scale :type xcb:xinput:FP1616) + (delta-angle :initarg :delta-angle :type xcb:xinput:FP1616) + (sourceid :initarg :sourceid :type xcb:xinput:DeviceId) + (pad~0 :initform 2 :type xcb:-pad) + (mods :initarg :mods :type xcb:xinput:ModifierInfo) + (group :initarg :group :type xcb:xinput:GroupInfo) + (flags :initarg :flags :type xcb:CARD32))) + +(defclass xcb:xinput:GesturePinchUpdate + (xcb:-event xcb:xinput:GesturePinchBegin) + ((~evtype :initform 28))) + +(defclass xcb:xinput:GesturePinchEnd + (xcb:-event xcb:xinput:GesturePinchBegin) + ((~evtype :initform 29))) + +(defconst xcb:xinput:GestureSwipeEventFlags:GestureSwipeCancelled 1) + +(defclass xcb:xinput:GestureSwipeBegin + (xcb:-generic-event) + ((~evtype :initform 30) + (deviceid :initarg :deviceid :type xcb:xinput:DeviceId) + (time :initarg :time :type xcb:TIMESTAMP) + (detail :initarg :detail :type xcb:CARD32) + (root :initarg :root :type xcb:WINDOW) + (event :initarg :event :type xcb:WINDOW) + (child :initarg :child :type xcb:WINDOW) + (root-x :initarg :root-x :type xcb:xinput:FP1616) + (root-y :initarg :root-y :type xcb:xinput:FP1616) + (event-x :initarg :event-x :type xcb:xinput:FP1616) + (event-y :initarg :event-y :type xcb:xinput:FP1616) + (delta-x :initarg :delta-x :type xcb:xinput:FP1616) + (delta-y :initarg :delta-y :type xcb:xinput:FP1616) + (delta-unaccel-x :initarg :delta-unaccel-x :type xcb:xinput:FP1616) + (delta-unaccel-y :initarg :delta-unaccel-y :type xcb:xinput:FP1616) + (sourceid :initarg :sourceid :type xcb:xinput:DeviceId) + (pad~0 :initform 2 :type xcb:-pad) + (mods :initarg :mods :type xcb:xinput:ModifierInfo) + (group :initarg :group :type xcb:xinput:GroupInfo) + (flags :initarg :flags :type xcb:CARD32))) + +(defclass xcb:xinput:GestureSwipeUpdate + (xcb:-event xcb:xinput:GestureSwipeBegin) + ((~evtype :initform 31))) + +(defclass xcb:xinput:GestureSwipeEnd + (xcb:-event xcb:xinput:GestureSwipeBegin) + ((~evtype :initform 32))) + (defclass xcb:xinput:EventForSend (xcb:-event) nil) @@ -2873,7 +2961,13 @@ (23 . xcb:xinput:RawTouchUpdate) (24 . xcb:xinput:RawTouchEnd) (25 . xcb:xinput:BarrierHit) - (26 . xcb:xinput:BarrierLeave)) + (26 . xcb:xinput:BarrierLeave) + (27 . xcb:xinput:GesturePinchBegin) + (28 . xcb:xinput:GesturePinchUpdate) + (29 . xcb:xinput:GesturePinchEnd) + (30 . xcb:xinput:GestureSwipeBegin) + (31 . xcb:xinput:GestureSwipeUpdate) + (32 . xcb:xinput:GestureSwipeEnd)) "(xge-number . event-class) alist.") diff --git a/xcb-xprint.el b/xcb-xprint.el index 6350cc0..9d09d8f 100644 --- a/xcb-xprint.el +++ b/xcb-xprint.el @@ -97,6 +97,7 @@ (xcb:-fieldref 'printerNameLen)) :type xcb:-list) (printer-name :initarg :printer-name :type xcb:-ignore) + (pad~0 :initform 4 :type xcb:-pad-align) (locale~ :initform '(name locale type xcb:xprint:STRING8 size (xcb:-fieldref 'localeLen)) @@ -130,6 +131,7 @@ (xcb:-fieldref 'printerNameLen)) :type xcb:-list) (printerName :initarg :printerName :type xcb:-ignore) + (pad~0 :initform 4 :type xcb:-pad-align) (locale~ :initform '(name locale type xcb:xprint:STRING8 size (xcb:-fieldref 'localeLen)) @@ -198,11 +200,13 @@ (xcb:-fieldref 'len-data)) :type xcb:-list) (data :initarg :data :type xcb:-ignore) + (pad~0 :initform 4 :type xcb:-pad-align) (doc-format~ :initform '(name doc-format type xcb:xprint:STRING8 size (xcb:-fieldref 'len-fmt)) :type xcb:-list) (doc-format :initarg :doc-format :type xcb:-ignore) + (pad~1 :initform 4 :type xcb:-pad-align) (options~ :initform '(name options type xcb:xprint:STRING8 size (xcb:-fieldref 'len-options))