[Xcb] [PATCH 1/7 v2] xinput: Add XI2 event enum. for event selection

Ran Benita ran234 at gmail.com
Sun Oct 13 11:17:48 PDT 2013


On Sun, Oct 13, 2013 at 01:44:35PM +0200, Daniel Martin wrote:
> This adds an enumeration 'XIEventMask', which is necessary to select for
> XI2 events via the SelectEvent request.

For patches 1, 3-7
Reviewed-By: Ran Benita <ran234 at gmail.com>

Did some sanity checking for XKB after applying, just to make sure.

> 
> Signed-off-by: Daniel Martin <consume.noise at gmail.com>
> ---
> v2: Without the second enum. It was supposed to match against the
> event_type field in XI2 (generic) events. Which is not necessary,
> because every event has a number.
> 
>  src/xinput.xml | 34 +++++++++++++++++++++++++++++++++-
>  1 file changed, 33 insertions(+), 1 deletion(-)
> 
> diff --git a/src/xinput.xml b/src/xinput.xml
> index e62b7cb..dd3f184 100644
> --- a/src/xinput.xml
> +++ b/src/xinput.xml
> @@ -1257,10 +1257,42 @@ <request name="XIGetClientPointer" opcode="45">
>  
>      <!-- XISelectEvents -->
>  
> +    <enum name="XIEventMask">
> +        <item name="DeviceChanged">    <bit>1</bit> </item>
> +        <item name="KeyPress">         <bit>2</bit> </item>
> +        <item name="KeyRelease">       <bit>3</bit> </item>
> +        <item name="ButtonPress">      <bit>4</bit> </item>
> +        <item name="ButtonRelease">    <bit>5</bit> </item>
> +        <item name="Motion">           <bit>6</bit> </item>
> +        <item name="Enter">            <bit>7</bit> </item>
> +        <item name="Leave">            <bit>8</bit> </item>
> +        <item name="FocusIn">          <bit>9</bit> </item>
> +        <item name="FocusOut">         <bit>10</bit> </item>
> +        <item name="Hierarchy">        <bit>11</bit> </item>
> +        <item name="Property">         <bit>12</bit> </item>
> +        <!-- ⋅⋅⋅ Events (v2.1) ⋅⋅⋅ -->
> +        <item name="RawKeyPress">      <bit>13</bit> </item>
> +        <item name="RawKeyRelease">    <bit>14</bit> </item>
> +        <item name="RawButtonPress">   <bit>15</bit> </item>
> +        <item name="RawButtonRelease"> <bit>16</bit> </item>
> +        <item name="RawMotion">        <bit>17</bit> </item>
> +        <!-- ⋅⋅⋅ Events (v2.2) ⋅⋅⋅ -->
> +        <item name="TouchBegin">       <bit>18</bit> </item>
> +        <item name="TouchUpdate">      <bit>19</bit> </item>
> +        <item name="TouchEnd">         <bit>20</bit> </item>
> +        <item name="TouchOwnership">   <bit>21</bit> </item>
> +        <item name="RawTouchBegin">    <bit>22</bit> </item>
> +        <item name="RawTouchUpdate">   <bit>23</bit> </item>
> +        <item name="RawTouchEnd">      <bit>24</bit> </item>
> +        <!-- ⋅⋅⋅ Events (v2.3) ⋅⋅⋅ -->
> +        <item name="BarrierHit">       <bit>25</bit> </item>
> +        <item name="BarrierLeave">     <bit>26</bit> </item>
> +    </enum>
> +
>      <struct name="EventMask">
>          <field type="DeviceId" name="deviceid" altenum="Device" />
>          <field type="CARD16"   name="mask_len" />
> -        <list type="CARD32" name="mask"> <!-- set of EventMaskBit -->
> +        <list type="CARD32" name="mask" mask="XIEventMask">
>              <fieldref>mask_len</fieldref>
>          </list>
>      </struct>
> -- 
> 1.8.4
> 
> _______________________________________________
> Xcb mailing list
> Xcb at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xcb


More information about the Xcb mailing list