
    gR{                     
   d Z ddlmZ ddlmZmZ dZdZdZdZ	dZ
dZdZdZdZdZdZdZdZd	ZdZdZdZdZd
ZdZdZdZdZdZd
ZdZdZ dZ!dZ"dZ#dZ$dZ%dZ&dZ'dZ(dZ)dZ*dZ+dZ,dZ-dZ.dZ/dZ0dZ1dZ2dZ3dZ4d	Z5dZ6dZ7dZ8dZ9dZ: ej;         ej<        d           ej<        d           ej<        d           ej<        d                    Z= ej;         ej>        d            ej<        d!           ej<        d"           ej>        d#           ej<        d$           ej<        d%           ej<        d&           ej<        d'           ej<        d(           ej<        d)           ej<        d*           ej<        d+           ej>        d,                    Z? ej;         ej@        d-d           ejA        d-ejB                            ZC ej;         ej>        d.           ej>        d/           ej>        d0           ej>        d1           ej>        d2           ej>        d3           ej>        d4           ej>        d5           ej>        d6          	  	        ZD G d7 d8ejE                  ZFd9 ZG G d: d;ejE                  ZHejI        fd<ZJ G d= d>ejE                  ZKdejI        fd?ZL G d@ dAejM                  ZNdB ZO G dC dDejE                  ZPdE ZQ G dF dGejE                  ZRdH ZS G dI dJejM                  ZTddLZU G dM dNejE                  ZVdO ZW G dP dQejE                  ZXdR ZY G dS dTejE                  ZZdU Z[ G dV dWejE                  Z\dX Z] G dY dZejM                  Z^d[ Z_ G d\ d]ejM                  Z`d^ Za G d_ d`ejM                  Zbda Zc G db dcejE                  Zddd Ze G de dfejE                  Zfdg Zg G dh diejM                  Zhdj Zi G dk dlejM                  Zjdm Zk G dn doejM                  Zldp Zm G dq drejE                  Znds Zo G dt duejE                  ZpejI        fdvZq G dw dxejE                  Zrdy Zs G dz d{ejE                  Ztd| Zu G d} d~ejM                  Zvd Zw G d dejE                  Zxd Zy G d dejM                  Zzd Z{ G d dejE                  Z|d Z} G d dejE                  Z~d Z G d dejE                  ZejI        fdZ G d dejM                  Zd Z G d dejE                  Zd Z G d dej                  Z G d dej                  Z G d dej                  Z G d dej                  Zd ZdKS )a&  RandR - provide access to the RandR extension information.

This implementation is based off version 1.3 of the XRandR protocol, and may
not be compatible with other versions.

Version 1.2 of the protocol is documented at:
http://cgit.freedesktop.org/xorg/proto/randrproto/tree/randrproto.txt

    )X)rqstructsRANDR                      @         i   i   i   i   i    EDIDSignalFormatSignalPropertiesConnectorTypeConnectorNumberCompatibilityList	CloneList   width_in_pixelsheight_in_pixelswidth_in_millimetersheight_in_millimetersidwidthheight	dot_clockh_sync_start
h_sync_endh_totalh_skewv_sync_start
v_sync_endv_totalname_lengthflagsratesmatrix11matrix12matrix13matrix21matrix22matrix23matrix31matrix32matrix33c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d                    ZdS )	QueryVersionopcoder   major_versionminor_versionr   sequence_numberr   N)__name__
__module____qualname__r   StructCard8OpcodeRequestLengthCard32_request	ReplyCodePadCard16ReplyLength_reply     Q/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/Xlib/ext/randr.pyr5   r5      s        ry	!	/""	/""
 
H RYq			#$$	/""	/""r


 
FFFrI   r5   c                 l    t          | j        | j                            t                    dd          S )z5Get the current version of the RandR extension.

    r   r   )displayr6   r7   r8   )r5   rL   get_extension_majorextnameselfs    rJ   query_versionrQ      s9     |//88	
 
 
 
rI   c                   B   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        d           ej	        d           ej
        d           ej
        d                    Z ej         ej                     ej        d           ej
        d	           ej                     ej	        d
           ej	        d           ej        d           ej
        d           ej        d          	  	        ZdS )_1_0SetScreenConfigr6   r   drawable	timestampconfig_timestampsize_idrotationstatusr9   new_timestampnew_config_timestamprootsubpixel_order
   N)r:   r;   r<   r   r=   r>   r?   r@   DrawablerA   rE   rB   rC   rF   WindowrD   rG   rH   rI   rJ   rS   rS      s.       ry	!J	+	$%%	)	*	
 	
H RY	#$$	/""	())	&	"##r



 

FFFrI   rS   c           	      r    t          | j        | j                            t                    | ||||          S )z9Sets the screen to the specified size and rotation.

    )rL   r6   rT   rU   rV   rW   rX   )rS   rL   rM   rN   )rP   rW   rX   rV   rU   s        rJ   _1_0set_screen_configrb      sB     |//88)
 
 
 
rI   c                   ~   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        d           ej	        d           ej
        d           ej
        d           ej
        d           ej        d          
  
        Z ej         ej                     ej        d	           ej
        d
           ej                     ej	        d           ej	        d           ej        d           ej
        d           ej        d          	  	        ZdS )SetScreenConfigr6   r   rT   rU   rV   rW   rX   raterY   r9   rZ   r[   r\   r]   r^   N)r:   r;   r<   r   r=   r>   r?   r@   r_   rA   rE   rD   rB   rC   rF   r`   rG   rH   rI   rJ   rd   rd      sJ       ry	!J	+	$%%	)	*	&q		
 
H RY	#$$	/""	())	&	"##r



 

FFFrI   rd   c           
      t    t          | j        | j                            t                    | |||||          S )zSets the screen to the specified size, rate, rotation and reflection.

    rate can be 0 to have the server select an appropriate rate.

    )rL   r6   rT   rU   rV   rW   rX   re   )rd   rL   rM   rN   )rP   rW   rX   rV   re   rU   s         rJ   set_screen_configrg     sE     |//88)	
 	
 	
 	
rI   c            
           e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        d           ej
        d                    ZdS )SelectInputr6   r	   windowmaskr   N)r:   r;   r<   r   r=   r>   r?   r@   r`   rE   rD   rB   rH   rI   rJ   ri   ri     sv        ry	!	(	&q		
 
HHHrI   ri   c                 l    t          | j        | j                            t                    | |          S )N)rL   r6   rj   rk   )ri   rL   rM   rN   )rP   rk   s     rJ   select_inputrm   "  s7    |//88	
 
 
 
rI   c                   d   e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d           ej        d	d
           ej        d           ej        d           ej        d           ej        d           ej        d
           ej        d	e                    ZdS )GetScreenInfor6   r   rj   set_of_rotationsr9   r\   rU   rV   sizesr   rW   rX   re   n_rate_entsN)r:   r;   r<   r   r=   r>   r?   r@   r`   rB   rC   rE   rF   rA   LengthOfrD   ListRandR_ScreenSizesrG   rH   rI   rJ   ro   ro   +  sA       ry	!	(	
 
H RY#$$	#$$	&	+	$%%GQ	)	*	&	-  q		*++
 
FFFrI   ro   c                 j    t          | j        | j                            t                    |           S )zyRetrieve information about the current and available configurations for
    the screen associated with this window.

    rL   r6   rj   )ro   rL   rM   rN   rO   s    rJ   get_screen_inforx   D  s6    
 |//88
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d           ej        d	           ej        d
          	  	        ZdS )GetScreenSizeRanger6      rj   r   r9   	min_width
min_height	max_width
max_heightr   N)r:   r;   r<   r   r=   r>   r?   r@   r`   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rz   rz   R  s        ry	!	(	
 
H RYq			#$$	+	,	+	,r



 

FFFrI   rz   c                 j    t          | j        | j                            t                    |           S )zhRetrieve the range of possible screen sizes. The screen may be set to
	any size within this range.

    rw   )rz   rL   rM   rN   rO   s    rJ   get_screen_size_ranger   e  s6    
 |//88
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        d           ej	        d           ej
        d           ej
        d                    ZdS )	SetScreenSizer6      rj   r   r   r   r   N)r:   r;   r<   r   r=   r>   r?   r@   r`   rE   rA   rB   rH   rI   rJ   r   r   q  s        ry	!	(	'	(	())	)**	
 	
HHHrI   r   Nc           	      r    t          | j        | j                            t                    | ||||          S )N)rL   r6   rj   r   r   r   r   )r   rL   rM   rN   )rP   r   r   r   r   s        rJ   set_screen_sizer   }  s@    |//8813
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        dd	           ej        d
d	           ej        dd	           ej        dd	           ej        d           ej        dej                   ej        d
ej                   ej        de           ej        d                    ZdS )GetScreenResourcesr6   r
   rj   r   r9   rU   rV   crtcsr   outputsmodes
mode_namesNr:   r;   r<   r   r=   r>   r?   r@   r`   rB   rC   rD   rE   rF   rA   rs   rt   	Card32ObjRandR_ModeInfoString8rG   rH   rI   rJ   r   r     sZ       ry	!	(	
 
H RYq			#$$	+	$%%GQIq!!GQL!$$q		&&	2<((((
<  
 
FFFrI   r   c                 j    t          | j        | j                            t                    |           S Nrw   )r   rL   rM   rN   rO   s    rJ   get_screen_resourcesr     s4    |//88
 
 
 
rI   c                   l   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d	           ej        d
           ej        d           ej        d           ej        dd           ej        dd           ej        dd           ej        dd           ej        dd           ej        dej                   ej        dej                   ej        dej                   ej        dej                   ej        d                    ZdS )GetOutputInfor6   	   outputrV   rY   r9   rU   crtcmm_width	mm_height
connectionr]   r   r   r   	preferredclonesnameN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rE   rF   rs   rt   r   r   rG   rH   rI   rJ   r   r     s       ry	!	(	$%%
 
H RY	#$$	+	&	*	+!""GQGQK##Ha  FA&&&&R\**",''
6)
 
FFFrI   r   c                 l    t          | j        | j                            t                    ||          S )N)rL   r6   r   rV   )r   rL   rM   rN   )rP   r   rV   s      rJ   get_output_infor     s7    |//88)	
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        dd           ej        d           ej        dej                            Zd	S )
ListOutputPropertiesr6   r^   r   r   r9   atomsr      N)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rs   rt   r   rG   rH   rI   rJ   r   r     s        ry	"	(	
 
H RYq			#$$GQr

&&
 
FFFrI   r   c                 j    t          | j        | j                            t                    |          S )N)rL   r6   r   )r   rL   rM   rN   rP   r   s     rJ   list_output_propertiesr     s4    |//88
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d	           ej        d
           ej        dej                  	  	        ZdS )QueryOutputPropertyr6      r   propertyr   r9   pendingrange	immutable   valid_valuesN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   Boolrt   r   rG   rH   rI   rJ   r   r     s        ry	"	(	*
 
H RYq			#$$	r

--

 

FFFrI   r   c                 l    t          | j        | j                            t                    ||          S N)rL   r6   r   r   )r   rL   rM   rN   rP   r   r   s      rJ   query_output_propertyr     s7    |//88	
 
 
 
rI   c                   D   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d           ej	        d           ej	        d           ej
        d           ej        dej                  	  	        Zd	S )
ConfigureOutputPropertyr6      r   r   r   r   r   r   N)r:   r;   r<   r   r=   r>   r?   r@   rA   r   rD   rt   r   rB   rH   rI   rJ   r   r     s        ry	"	(	*	q		--

 

HHHrI   r   c                 l    t          | j        | j                            t                    ||          S r   )r   rL   rM   rN   r   s      rJ   configure_output_propertyr     s7    "|//88	
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d           ej        d           ej	        dd           ej        d           ej
        d	           ej        dd
           ej        dej                            ZdS )ChangeOutputPropertyr6      r   r   typevaluer   moder   r	   N)r:   r;   r<   r   r=   r>   r?   r@   rA   FormatrD   rs   rt   Card8ObjrB   rH   rI   rJ   r   r     s        ry	"	(	*	&	'1q		GQ%%
 
HHHrI   r   c           
      t    t          | j        | j                            t                    ||||||          S )N)rL   r6   r   r   r   formatr   nUnits)r   rL   rM   rN   )rP   r   r   r   r   r   r   s          rJ   change_output_propertyr   -  sC    |//88	
 	
 	
 	
rI   c            	           e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	dS )DeleteOutputPropertyr6      r   r   N
r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rH   rI   rJ   r   r   :  si        ry	"	(	*
 
HHHrI   r   c                 l    t          | j        | j                            t                    ||          S r   )r   rL   rM   rN   r   s      rJ   delete_output_propertyr   C  s7    |//88	
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d           ej        d           ej        d           ej        d           ej	        d           ej	        d	           ej
        d
                    Z ej         ej                     ej        dd           ej        d           ej                     ej        d           ej        d           ej        dd           ej
        d           ej        dej                  	  	        ZdS )GetOutputPropertyr6      r   r   r   long_offsetlong_lengthdeleter   r   r   r   r9   property_typebytes_afterr	   r   N)r:   r;   r<   r   r=   r>   r?   r@   rA   r   rD   rB   rC   r   rE   rF   rs   rt   r   rG   rH   rI   rJ   r   r   L  s^       ry	"	(	*	&	-  	-  	q		
 
H RY	'1	#$$	/""	-  GQr

%%

 

FFFrI   r   c           	      r    t          | j        | j                            t                    |||||          S )N)rL   r6   r   r   r   
longOffset
longLength)r   rL   rM   rN   )rP   r   r   r   r   r   s         rJ   get_output_propertyr   f  s@    |//88
 
 
 
rI   c            
          e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        de
           ej        d                    Z ej         ej                     ej        d           ej        d           ej                     ej        d           ej        d                    Zd	S )

CreateModer6   r   rj   r   r   r   r9      N)r:   r;   r<   r   r=   r>   r?   r@   r`   Objectr   r   rB   rC   rD   rE   rF   rA   rG   rH   rI   rJ   r   r   r  s        ry	"	(	&.))
6
 
H RYq			#$$	&r


 
FFFrI   r   c                 j    t          | j        | j                            t                    |           S r   )r   rL   rM   rN   rO   s    rJ   create_moder     s4    |//88
 
 
 
rI   c                       e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	dS )DestroyModer6      r   Nr   rH   rI   rJ   r   r     sZ        ry	"	&	
 
HHHrI   r   c                 j    t          | j        | j                            t                    |          S )N)rL   r6   r   )r   rL   rM   rN   )rP   r   s     rJ   destroy_moder     s4    |//88
 
 
 
rI   c            	           e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	dS )AddOutputModer6      r   r   Nr   rH   rI   rJ   r   r     i        ry	"	(	&
 
HHHrI   r   c                     t          | j        | j                            t                    t          t
                    S N)rL   r6   r   r   )r   rL   rM   rN   r   r   rO   s    rJ   add_output_moder     s7    |//88	
 
 
 
rI   c            	           e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	dS )DeleteOutputModer6      r   r   Nr   rH   rI   rJ   r   r     r   rI   r   c                     t          | j        | j                            t                    t          t
                    S r   )r   rL   rM   rN   r   r   rO   s    rJ   delete_output_moder     s7    |//88	
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d	           ej        d
           ej        d           ej        d           ej        dd           ej        dd           ej        dej                   ej        dej                            ZdS )GetCrtcInfor6   r   r   rV   rY   r9   rU   r   r   r   rX   possible_rotationsr   r   possible_outputsN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rE   rF   rs   rt   r   rG   rH   rI   rJ   r   r     s[       ry	"	&	$%%
 
H RY	#$$	+	'	(	&	*	&''Iq!!&**	2<(("BL11
 
FFFrI   r   c                 l    t          | j        | j                            t                    ||          S )N)rL   r6   r   rV   )r   rL   rM   rN   )rP   r   rV   s      rJ   get_crtc_infor     s7    |//88)	
 
 
 
rI   c                   l   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d           ej        d           ej	        d           ej	        d           ej        d           ej
        d	           ej        d
           ej        dej                            Z ej         ej                     ej        d           ej
        d           ej                     ej        d           ej        d                    ZdS )SetCrtcConfigr6   r   r   rU   rV   xyr   rX   r   r   rY   r9   rZ   r   N)r:   r;   r<   r   r=   r>   r?   r@   rA   Int16rE   rD   rt   r   rB   rC   rF   rG   rH   rI   rJ   r   r     s9       ry	"	&	+	$%%	&	*q			2<((
 
H RY	#$$	/""r


 
FFFrI   r   c           	      r    t          | j        | j                            t                    |||||          S )N)rL   r6   r   rV   r   rX   rU   )r   rL   rM   rN   )rP   r   rV   r   rX   rU   s         rJ   set_crtc_configr     s@    |//88)
 
 
 
rI   c            
       p   e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d                    ZdS )GetCrtcGammaSizer6   r   r   rY   r9   sizeN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rE   rF   rD   rG   rH   rI   rJ   r   r     s        ry	"	&	
 
H RY	#$$	&r


 
FFFrI   r   c                 j    t          | j        | j                            t                    |          S N)rL   r6   r   )r   rL   rM   rN   rP   r   s     rJ   get_crtc_gamma_sizer    4    |//88
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        dej                   ej        d	ej                   ej        d
ej                  	  	        ZdS )GetCrtcGammar6      r   rY   r9   r   r   redgreenblueN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rE   rF   rD   rt   	Card16ObjrG   rH   rI   rJ   r  r    s        ry	"	&	
 
H RY	#$$	&r

r|$$&&%%

 

FFFrI   r  c                 j    t          | j        | j                            t                    |          S r  )r  rL   rM   rN   r  s     rJ   get_crtc_gammar  1  s4    |//88
 
 
 
rI   c                   \   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        d           ej
        d           ej        dej                   ej        dej                   ej        dej                  	  	        Zd	S )
SetCrtcGammar6      r   r   r   r  r	  r
  N)r:   r;   r<   r   r=   r>   r?   r@   rA   rE   rD   rt   r  rB   rH   rI   rJ   r  r  9  s        ry	"	&	&q		r|$$&&%%

 

HHHrI   r  c                 l    t          | j        | j                            t                    ||          S )N)rL   r6   r   r   )r  rL   rM   rN   )rP   r   r   s      rJ   set_crtc_gammar  F  s7    |//88	
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        dd	           ej        d
d	           ej        dd	           ej        dd	           ej        d           ej        dej                   ej        d
ej                   ej        de           ej        d                    ZdS )GetScreenResourcesCurrentr6      rj   r   r9   rU   rV   r   r   r   r   namesr
   Nr   rH   rI   rJ   r  r  Q  sZ       ry	"	(	
 
H RYq			#$$	+	$%%GQIq!!GQGQq		&&	2<((((
7
 
FFFrI   r  c                 j    t          | j        | j                            t                    |           S r   )r  rL   rM   rN   rO   s    rJ   get_screen_resources_currentr  j  s4    $|//88
 
 
 
rI   c                   H   e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        de
           ej        dd           ej        d           ej        d           ej        dej                  	  	        ZdS )	SetCrtcTransformr6      r   	transformfilter_namer   filter_paramsN)r:   r;   r<   r   r=   r>   r?   r@   rA   r   Render_Transformrs   rD   r   rt   r   rB   rH   rI   rJ   r  r  r  s        ry	"	&	+/00M1%%q		
=!!..

 

HHHrI   r  c                 l    t          | j        | j                            t                    ||          S )N)rL   r6   r   n_bytes_filter)r  rL   rM   rN   )rP   r   r!  s      rJ   set_crtc_transformr"    s7    |//88%	
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        de           ej        d           ej        d           ej        d	e           ej        d
           ej        dd           ej        dd           ej        dd           ej        dd           ej        d           ej        dej                   ej        d           ej        dej                            ZdS )GetCrtcTransformr6      r   rY   r9   pending_transformhas_transformsr   current_transformr	   pending_filter_namer   pending_filter_paramscurrent_filter_namecurrent_filter_paramsN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rE   rF   r   r  r   rD   rs   r   rt   r   rG   rH   rI   rJ   r$  r$    s       ry	"	&	
 
H RY	#$$	%'788 !!q			%'788q		)1--+Q//)1--+Q//
())'66
())'66#
 
FFFrI   r$  c                 j    t          | j        | j                            t                    |          S r  )r$  rL   rM   rN   r  s     rJ   get_crtc_transformr.    r  rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d           ej        d           ej        d	           ej        d
           ej        d           ej        d           ej        d           ej        d           ej        d           ej        d           ej        d           ej        d                    ZdS )
GetPanningr6      r   rY   r9   rU   lefttopr   r   
track_left	track_toptrack_widthtrack_heightborder_left
border_topborder_rightborder_bottomN)r:   r;   r<   r   r=   r>   r?   r@   rA   rB   rC   rE   rF   r   rG   rH   rI   rJ   r0  r0    si       ry	"	&	
 
H RY	#$$	+	&	%	'	(	,	+	-  	.!!  !!#
 
FFFrI   r0  c                 j    t          | j        | j                            t                    |          S r  )r0  rL   rM   rN   r  s     rJ   get_panningr=    s4    |//88
 
 
 
rI   c                      e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej        d           ej	        d           ej	        d           ej	        d           ej	        d           ej	        d	           ej	        d
           ej	        d           ej	        d           ej
        d           ej
        d           ej
        d           ej
        d                    Z ej         ej                     ej        d           ej	        d           ej                     ej        d           ej        d                    ZdS )
SetPanningr6      r   rU   r2  r3  r   r   r4  r5  r6  r7  r8  r9  r:  r;  rY   r9   rZ   r   N)r:   r;   r<   r   r=   r>   r?   r@   rA   rE   r   rB   rC   rF   rD   rG   rH   rI   rJ   r?  r?    s       ry	"	&	+	&	%	'	(	,	+	-  	.!!  !!#
 
H& RY	#$$	/""r


 
FFFrI   r?  c                     t          di d| j        d| j                            t                    d|d|d|d|d|d|d	|d
|d|	d|
d|d|d|d|S )NrL   r6   r   r2  r3  r   r   r4  r5  r6  r7  r8  r9  border_widthborder_heightrU   rH   )r?  rL   rM   rN   )rP   r   r2  r3  r   r   r4  r5  r6  r7  r8  r9  rB  rC  rU   s                  rJ   set_panningrD    s     
 
 

|//888
 T
 T	

 C
 e
 v
 :
 )
  K
 "\
  K
 :
 "\
 $m
  )!
 
rI   c            	           e Zd Z ej         ej        d           ej        d           ej                     ej        d           ej	        d                    Z
dS )SetOutputPrimaryr6      rj   r   N)r:   r;   r<   r   r=   r>   r?   r@   r`   rA   rB   rH   rI   rJ   rF  rF     si        ry	"	(	(
 
HHHrI   rF  c                 l    t          | j        | j                            t                    | |          S )N)rL   r6   rj   r   )rF  rL   rM   rN   r   s     rJ   set_output_primaryrI  	  s7    |//88	
 
 
 
rI   c            
       p   e Zd Z ej         ej        d           ej        d           ej                     ej        d                    Z	 ej         ej
                     ej        d           ej        d           ej                     ej        d           ej        d                    ZdS )	GetOutputPrimaryr6      rj   r   r9   r   r   N)r:   r;   r<   r   r=   r>   r?   r@   r`   rB   rC   rD   rE   rF   rA   rG   rH   rI   rJ   rK  rK    s        ry	"	(	
 
H RYq			#$$	(r


 
FFFrI   rK  c                 j    t          | j        | j                            t                    |           S r   )rK  rL   rM   rN   rO   s    rJ   get_output_primaryrN  "  s4    |//88
 
 
 
rI   c                      e Zd ZdZ ej         ej        d           ej        d           ej        d           ej        d           ej        d           ej	        d           ej	        d           ej        d	           ej        d
           ej        d           ej        d           ej        d           ej        d                    Z
dS )ScreenChangeNotifyNr   rX   r9   rU   rV   r\   rj   rW   r]   r   r   r   r   r:   r;   r<   _coder   r=   r>   rE   rA   r`   _fieldsrH   rI   rJ   rP  rP  ,  s        Ebi	#$$	+	$%%	&	(	)	"##	#$$	$%%	())	)**
 
GGGrI   rP  c                      e Zd ZdZ ej         ej        d           ej        d           ej        d           ej        d           ej	        d           ej        d           ej        d           ej        d	           ej
        d
           ej        d           ej        d           ej        d           ej        d                    ZdS )CrtcChangeNotifyNr   sub_coder9   rU   rj   r   r   rX   r   r   r   r   r   )r:   r;   r<   rR  r   r=   r>   rE   rA   r`   rD   r   rS  rH   rI   rJ   rU  rU  ?  s        Ebi	#$$	+	(	&	&	*q			'	(
 
GGGrI   rU  c                      e Zd ZdZ ej         ej        d           ej        d           ej        d           ej        d           ej        d           ej	        d           ej        d           ej        d	           ej        d
           ej        d           ej        d           ej        d                    Z
dS )OutputChangeNotifyNr   rV  r9   rU   rV   rj   r   r   r   rX   r   r]   rQ  rH   rI   rJ   rX  rX  R  s        Ebi	#$$	+	$%%	(	(	&	&	*!""
 
GGGrI   rX  c                   >   e Zd ZdZ ej         ej        d           ej        d           ej        d           ej        d           ej	        d           ej	        d           ej	        d           ej        d	           ej
        d
          	  	        ZdS )OutputPropertyNotifyNr   rV  r9   rj   r   atomrU   stater   )r:   r;   r<   rR  r   r=   r>   rE   r`   rA   rD   rS  rH   rI   rJ   rZ  rZ  d  s        Ebi	#$$	(	(	&	+r



 

GGGrI   rZ  c                    |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt
                     |                      dd	t                     |                      dd
t                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                     |                      ddt                      |                      ddt"                     |                      ddt$                     |                      ddt&                     |                      ddt(                     |                      ddt*                     |                      ddt,                     |                      ddt.                     |                      ddt0                     |                      ddt2                     |                      ddt4                     |                      ddt6                     |                      ddt8                     |                      dd t:                     |                      dd!t<                     |                      dd"t>                     |                      |j!        tD                     |                      |j!        d#z   tF                     |                      |j!        d$z   tH                     |                      |j!        d%z   tJ                     d S )&NrL   xrandr_query_versionrj   xrandr_select_inputxrandr_get_screen_inforT   xrandr_1_0set_screen_configxrandr_set_screen_configxrandr_get_screen_size_rangexrandr_set_screen_sizexrandr_get_screen_resourcesxrandr_get_output_infoxrandr_list_output_propertiesxrandr_query_output_propertyz!xrandr_configure_output_property xrandr_change_output_propertyxrandr_delete_output_propertyxrandr_get_output_propertyxrandr_create_modexrandr_destroy_modexrandr_add_output_modexrandr_delete_output_modexrandr_get_crtc_infoxrandr_set_crtc_configxrandr_get_crtc_gamma_sizexrandr_get_crtc_gammaxrandr_set_crtc_gamma#xrandr_get_screen_resources_currentxrandr_set_crtc_transformxrandr_get_crtc_transformxrandr_set_output_primaryxrandr_get_output_primaryxrandr_get_panningxrandr_set_panningr   r   r   )&extension_add_methodrQ   rm   rx   rb   rg   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r"  r.  rI  rN  r=  rD  extension_add_eventfirst_eventrP  rU  rX  rZ  )dispinfos     rJ   initr  u  s   i)?OOOh(=|LLLh(@/RRRj*GI^___j*DFWXXXh(FH]^^^h(@/RRRh(EG[\\\i)A?SSSi)HJ`aaai)GI^___i)LNgiiii)HJ`aaai)HJ`aaai)EGZ[[[h(<kJJJi)>MMMi)A?SSSi)DFXYYYi)?OOOi)A?SSSi)EGZ[[[i)@.QQQi)@.QQQh(MOkllli)DFXYYYi)DFXYYYh(CEWXXXh(CEWXXXi)={KKKi)={KKKT-/ABBBT-13CDDDT-13EFFFT-13GHHHHHrI   )NN)__doc__Xlibr   Xlib.protocolr   r   rN   RRScreenChangeNotifyRRNotifyRRNotify_CrtcChangeRRNotify_OutputChangeRRNotify_OutputPropertyRRScreenChangeNotifyMaskRRCrtcChangeNotifyMaskRROutputChangeNotifyMaskRROutputPropertyNotifyMaskSetConfigSuccessSetConfigInvalidConfigTimeSetConfigInvalidTimeSetConfigFailedRotate_0	Rotate_90
Rotate_180
Rotate_270	Reflect_X	Reflect_YHSyncPositiveHSyncNegativeVSyncPositiveVSyncNegative	Interlace
DoubleScanCSyncCSyncPositiveCSyncNegativeHSkewPresentBCastPixelMultiplexDoubleClockClockDivideBy2	ConnectedDisconnectedUnknownConnectionPROPERTY_RANDR_EDIDPROPERTY_SIGNAL_FORMATPROPERTY_SIGNAL_PROPERTIESPROPERTY_CONNECTOR_TYPEPROPERTY_CONNECTOR_NUMBERPROPERTY_COMPATIBILITY_LISTPROPERTY_CLONE_LISTSubPixelUnknownSubPixelHorizontalRGBSubPixelHorizontalBGRSubPixelVerticalRGBSubPixelVerticalBGRSubPixelNoneBadRROutput	BadRRCrtc	BadRRModer=   rE   ru   rA   r   rs   rt   r  RandR_Ratesr  ReplyRequestr5   rQ   rS   CurrentTimerb   rd   rg   Requestri   rm   ro   rx   rz   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r"  r$  r.  r0  r=  r?  rD  rF  rI  rK  rN  EventrP  rU  rX  rZ  r  rH   rI   rJ   <module>r     s  *        % % % % % % % %
            &   & % %        	

 !	 	 )((((	(
((((((((  	  % , 0 - / 1 )         		
 BI	#$$	$%%	())	)**	
 
  	$	'	(	+	.!!	,	)	(	.!!	,	)	-  	'
 
  biGQ&&
 
 29	*	*	*	*	*	*	*	*	*

 

 
 
 
 
 
2? 
 
 
$	
 	
 	

 
 
 
 
"/ 
 
 
. PQ} 
 
 
 

 
 
 
 
bo 
 
 
2 GHSTS` 
 
 
 
$
 
 
 
 
"* 
 
 

 
 

 
 
 
 
BO 
 
 
2	
 	
 	

 
 
 
 
 
 
 
&	
 	
 	


 

 

 

 

BJ 

 

 

	
 	
 	
 	

 
 
 
 
 
 
 
2
 
 

 
 
 
 
BO 
 
 
>
 
 

 
 
 
 
2? 
 
 
"
 
 

 
 
 
 
"/ 
 
 
(
 
 

 
 
 
 
rz 
 
 

 
 

 
 
 
 
2: 
 
 


 

 


 
 
 
 
2: 
 
 

 
 

 
 
 
 
 
 
 
4	
 	
 	

 
 
 
 
 
 
 
$
 
 

 
 
 
 
"* 
 
 

 
 

 
 
 
 
BJ 
 
 

 
 

 
 
 
 
rz 
 
 

 
 

 
 
 
 
"/ 
 
 
2
 
 

 
 
 
 
BO 
 
 
0 MNM 	
 	
 	
 	

 
 
 
 
r 
 
 
 
 
 

 
 
 
 
2? 
 
 
&
 
 

 
 
 
 
2: 
 
 

 
 

 
 
 
 
 
 
 
2
 
 

 
 
 
 
rz 
 
 

 
 

 
 
 
 
r 
 
 
6
 
 

 
 
 
 
 
 
 
6
 
 

 
 
 
 
 
 
 
: ij  iv 
 
 
 
*
 
 
 
 
rz 
 
 

 
 

 
 
 
 
r 
 
 
 
 
 

 
 
 
 
 
 
 
&
 
 
 
 
rx 
 
 
&
 
 
 
 
 
 
 
$
 
 
 
 
28 
 
 
"$I $I $I $I $IrI   