+
    }c  c                   s   R t ^ RIHt ^ RIHt Rt^ t^t^ t^t	^t
^t^t^t^t^ t^t^t^t^t^t^t^t^t^ t^t^t^t^t^t^ t^@t^t Rt!Rt"Rt#Rt$Rt%R	t&^ t'^t(^t)R
t*Rt+Rt,Rt-Rt.Rt/Rt0^ t1^t2^t3^t4^t5^t6^ t7^t8^t9 ! R R]:4      t; ! R R]:4      t< ! R R]:4      t=]P|                  ! ]P~                  ! R4      ]P~                  ! R4      ]P~                  ! R4      ]P~                  ! R4      4      t@]P|                  ! ]P                  ! R4      ]P~                  ! R4      ]P~                  ! R4      ]P                  ! R4      ]P~                  ! R4      ]P~                  ! R 4      ]P~                  ! R!4      ]P~                  ! R"4      ]P~                  ! R#4      ]P~                  ! R$4      ]P~                  ! R%4      ]P~                  ! R&4      ]P                  ! R'4      4      tB]P|                  ! ]P                  ! R(^4      ]P                  ! R(]P                  4      4      tF]P|                  ! ]P                  ! R)4      ]P                  ! R*4      ]P                  ! R+4      ]P                  ! R,4      ]P                  ! R-4      ]P                  ! R.4      ]P                  ! R/4      ]P                  ! R04      ]P                  ! R14      4	      tG]P|                  ! ]P                  ! R24      ]P                  ! R34      ]P                  ! R44      ]P                  ! R5^4      ]P                  ! R64      ]P                  ! R74      ]P~                  ! R4      ]P~                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R5]P                  4      4      tK ! R8 R9]P                  4      tMR: tN ! R; R<]P                  4      tO]P                  3R= ltQ ! R> R?]P                  4      tR^ ]P                  3R@ ltS ! RA RB]P                  4      tURC tV ! RD RE]P                  4      tWRF tX ! RG RH]P                  4      tYRI tZ ! RJ RK]P                  4      t[RRM lt\ ! RN RO]P                  4      t]RP t^ ! RQ RR]P                  4      t_RS t` ! RT RU]P                  4      taRV tb ! RW RX]P                  4      tcRY td ! RZ R[]P                  4      teR\ tf ! R] R^]P                  4      tgR_ th ! R` Ra]P                  4      tiRb tj ! Rc Rd]P                  4      tkRRe ltl ! Rf Rg]P                  4      tmRh tn ! Ri Rj]P                  4      toRk tp ! Rl Rm]P                  4      tqRn tr ! Ro Rp]P                  4      tsRq tt ! Rr Rs]P                  4      tuRt tv ! Ru Rv]P                  4      tw]P                  3Rw ltx ! Rx Ry]P                  4      tyRz tz ! R{ R|]P                  4      t{R} t| ! R~ R]P                  4      t}R t~ ! R R]P                  4      tR t ! R R]P                  4      tR t ! R R]P                  4      tR t ! R R]P                  4      tR t ! R R]P                  4      t]P                  3R lt ! R R]P                  4      tR t ! R R]P                  4      tR t ! R R]P                  4      tRR lt ! R R]P                  4      tR t ! R R]P                  4      tR t ! R R]EP&                  4      t ! R R]EP&                  4      t ! R R]EP&                  4      t ! R R]EP&                  4      tR tRL# )a{  RandR - provide access to the RandR extension information.

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

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

Version 1.3.1 here:
http://www.x.org/releases/X11R7.5/doc/randrproto/randrproto.txt

)X)rqZRANDRi   i   i   i   i   i    ZEDIDZSignalFormatZSignalPropertiesZConnectorTypeZConnectorNumberZCompatibilityListZ	CloneListc                   s    ] tR t^~tRtR# )BadRROutputError N__name__
__module____qualname____firstlineno____static_attributes__r       3/usr/lib/python3.14/site-packages/Xlib/ext/randr.pyr   r   ~   s    4r
   r   c                   s    ] tR t^tRtR# )BadRRCrtcErrorr   Nr   r   r
   r   r   r          r
   r   c                   s    ] tR t^tRtR# )BadRRModeErrorr   Nr   r   r
   r   r   r      r   r
   r   width_in_pixelsheight_in_pixelswidth_in_millimetersheight_in_millimetersZidwidthheightZ	dot_clockZh_sync_startZ
h_sync_endZh_totalZh_skewZv_sync_startZ
v_sync_endZv_totalZname_lengthZflagsZratesZmatrix11Zmatrix12Zmatrix13Zmatrix21Zmatrix22Zmatrix23Zmatrix31Zmatrix32Zmatrix33nameZprimaryZ	automaticcrtcsxyc                   s   ] tR t^t]P
                  ! ]P                  ! R4      ]P                  ! ^ 4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      4      tRtR# )QueryVersionopcodemajor_versionminor_versionsequence_numberr   N)r   r   r   r   r   StructCard8OpcodeRequestLengthCard32_request	ReplyCodePadCard16ReplyLength_replyr	   r   r
   r   r   r      s    yy

		!

		/"
		/"
H YY

q	
		#$

		/"
		/"
r

Fr
   r   c                sn    \        V P                  V P                  P                  \        4      ^^R7      # )z5Get the current version of the RandR extension.

    )displayr   r   r   )r   r)   get_extension_majorextnameself   &r   query_versionr/      s0     ||//8	
 
r
   c                   s   ] tR t^t]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      t]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                   ! ^
4      4	      tRtR# )_1_0SetScreenConfigr   drawable	timestampconfig_timestampsize_idrotationstatusr   new_timestampnew_config_timestamprootsubpixel_orderr   N)r   r   r   r   r   r   r   r    r!   Drawabler"   r&   r#   r$   r'   Windowr%   r(   r	   r   r
   r   r0   r0      s    yy

		!

J
		+
		$%
		)
		*	
H YY


		#$

		/"
		()
		&
		"#
r


Fr
   r0   c           
     st    \        V P                  V P                  P                  \        4      V VVVVR7      # )z9Sets the screen to the specified size and rotation.

    )r)   r   r1   r2   r3   r4   r5   )r0   r)   r*   r+   )r-   r4   r5   r3   r2      &&&&&r   _1_0set_screen_configr>      s9     ||//8)
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      4
      t]P
                  ! ]P                  ! 4       ]P                  ! R	4      ]P                  ! R
4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                   ! R4      ]P                  ! R4      ]P                  ! ^
4      4	      tRtR# )SetScreenConfigi  r   r1   r2   r3   r4   r5   rater6   r   r7   r8   r9   r:   r   N)r   r   r   r   r   r   r   r    r!   r;   r"   r&   r%   r#   r$   r'   r<   r(   r	   r   r
   r   r?   r?     s    yy

		!

J
		+
		$%
		)
		*
		&
q	
H YY


		#$

		/"
		()
		&
		"#
r


Fr
   r?   c                sv    \        V P                  V P                  P                  \        4      V VVVVVR7      # )zSets the screen to the specified size, rate, rotation and reflection.

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

)r)   r   r1   r2   r3   r4   r5   r@   )r?   r)   r*   r+   )r-   r4   r5   r3   r@   r2      &&&&&&r   set_screen_configrB     s<     ||//8)	
 	
r
   c            
       s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      4      tRtR# )SelectInputi0  r   windowmaskr   N)r   r   r   r   r   r   r   r    r!   r<   r&   r%   r#   r	   r   r
   r   rC   rC   0  sV    yy

		!

		(
		&
q	
Hr
   rC   c                 n    \        V P                  V P                  P                  \        4      V VR 7      # ))r)   r   rD   rE   )rC   r)   r*   r+   )r-   rE      &&r   select_inputrH   :  s.    ||//8	
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	^4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                   ! ^4      ]P"                  ! R	]4      4      tRtR# )GetScreenInfoiC  r   rD   Zset_of_rotationsr   r9   r2   r3   Zsizesr4   r5   r@   Zn_rate_entsr   N)r   r   r   r   r   r   r   r    r!   r<   r#   r$   r&   r'   r"   LengthOfr%   ListRandR_ScreenSizesr(   r	   r   r
   r   rI   rI   C  s    yy

		!

		(	
H YY

#$
		#$

		&
		+
		$%
GQ
		)
		*
		&
		- 
q	
*+
Fr
   rI   c                l    \        V P                  V P                  P                  \        4      V R7      # )zqRetrieve information about the current and available configurations for
the screen associated with this window.

r)   r   rD   )rI   r)   r*   r+   r,   r.   r   get_screen_inforO   \  s-    
 ||//8
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      4	      tR	tR
# )GetScreenSizeRangeij  r   rD   r   Z	min_widthZ
min_heightZ	max_widthZ
max_heightr   N)r   r   r   r   r   r   r   r    r!   r<   r#   r$   r%   r&   r'   r(   r	   r   r
   r   rP   rP   j  s    yy

		!

		(	
H YY

q	
		#$

		+
		,
		+
		,
r


Fr
   rP   c                rM   )zcRetrieve the range of possible screen sizes. The screen may be set to
any size within this range.

rN   )rP   r)   r*   r+   r,   r.   r   get_screen_size_rangerQ   }  s-    
 ||//8
 
r
   c                   sF   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      tRtR	# )
SetScreenSizei  r   rD   r   r   r   r   r   N)r   r   r   r   r   r   r   r    r!   r<   r&   r"   r#   r	   r   r
   r   rR   rR     sq    yy

		!

		(
		'
		(
		()
		)*	
Hr
   rR   Nc           
      st    \        V P                  V P                  P                  \        4      V VVVVR 7      # ))r)   r   rD   r   r   r   r   )rR   r)   r*   r+   )r-   r   r   r   r   r=   r   set_screen_sizerS     s7    ||//813
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                   ! R^4      ]P                   ! R^4      ]P                   ! R	^4      ]P                   ! R
^4      ]P                  ! ^4      ]P"                  ! R]P$                  4      ]P"                  ! R]P$                  4      ]P"                  ! R	]4      ]P(                  ! R
4      4      tRtR# )GetScreenResourcesi  r   rD   r   r2   r3   r   outputsmodesZ
mode_namesr   Nr   r   r   r   r   r   r   r    r!   r<   r#   r$   r%   r&   r'   r"   rJ   rK   	Card32ObjRandR_ModeInfoString8r(   r	   r   r
   r   rT   rT     s   yy

		!

		(	
H YY

q	
		#$

		+
		$%
GQ
Iq!
GQ
L!$
q	
&
	2<<(
(


< 
Fr
   rT   c                 l    \        V P                  V P                  P                  \        4      V R 7      # rN   )rT   r)   r*   r+   r,   r.   r   get_screen_resourcesr]     s+    ||//8
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^	4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R^4      ]P                  ! R^4      ]P                  ! R4      ]P                  ! R^4      ]P                  ! R^4      ]P                  ! R]P                   4      ]P                  ! R]P                   4      ]P                  ! R]P                   4      ]P"                  ! R4      4      tRtR# )GetOutputInfoi  r   outputr3   r6   r   r2   crtcZmm_widthZ	mm_height
connectionr:   r   rV   Znum_preferredZclonesr   r   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r&   r'   rJ   rK   rX   rZ   r(   r	   r   r
   r   r^   r^     sW   yy

		!

		(
		$%
H YY


		#$

		+
		&
		*
		+

!"
GQ
GQ
		/"
Ha 
FA
&
&
",,'


6'
Fr
   r^   c                 n    \        V P                  V P                  P                  \        4      VVR 7      # ))r)   r   r_   r3   )r^   r)   r*   r+   )r-   r_   r3      &&&r   get_output_inford     s.    ||//8)	
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^
4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R^4      ]P                  ! ^4      ]P                   ! R]P"                  4      4      tRtR# )ListOutputPropertiesi  r   r_   r   Zatomsr   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   rJ   rK   rX   r(   r	   r   r
   r   re   re     s    yy

		"

		(	
H YY

q	
		#$

GQ
r

&
Fr
   re   c                 l    \        V P                  V P                  P                  \        4      VR 7      # ))r)   r   r_   )re   r)   r*   r+   r-   r_   rG   r   list_output_propertiesrh     s+    ||//8
 
r
   c                   sF   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      ]P                   ! R	]P"                  4      4	      tR
tR# )QueryOutputPropertyi  r   r_   propertyr   pendingrangeZ	immutablevalid_valuesr   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   BoolrK   rX   r(   r	   r   r
   r   ri   ri     s    yy

		"

		(
		*
H YY

q	
		#$

	


r

-

Fr
   ri   c                 rb   )r)   r   r_   rj   )ri   r)   r*   r+   r-   r_   rj   rc   r   query_output_propertyrq     s.    ||//8	
 
r
   c                   s~   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      ]P                  ! R]P                  4      4	      tRtR	# )
ConfigureOutputPropertyi  r   r_   rj   rk   rl   rm   r   N)r   r   r   r   r   r   r   r    r!   r"   rn   r%   rK   rX   r#   r	   r   r
   r   rr   rr     s    yy

		"

		(
		*
	

q	
-

Hr
   rr   c                 rb   ro   )rr   r)   r*   r+   rp   rc   r   configure_output_propertyrs   ,  s.    "||//8	
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R^4      ]P                  ! R4      ]P                  ! ^4      ]P                  ! R^4      ]P                  ! R4      4      tRtR	# )
ChangeOutputPropertyi5  r   r_   rj   typevaluemoder   N)r   r   r   r   r   r   r   r    r!   r"   Formatr%   rJ   ZPropertyDatar#   r	   r   r
   r   rt   rt   5  s    yy

		"

		(
		*
		&
		'1

q	
GQ
 
Hr
   rt   c           
      t    \        V P                  V P                  P                  \        4      VVVVVR 7      # ))r)   r   r_   rj   ru   rw   rv   )rt   r)   r*   r+   )r-   r_   rj   ru   rw   rv   rA   r   change_output_propertyrz   D  s7    ||//8
 
r
   c            	       s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
RtR# )DeleteOutputPropertyiP  r   r_   rj   r   Nr   r   r   r   r   r   r   r    r!   r"   r#   r	   r   r
   r   r{   r{   P  sK    yy

		"

		(
		*
Hr
   r{   c                 rb   ro   )r{   r)   r*   r+   rp   rc   r   delete_output_propertyr}   Y  s.    ||//8	
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! ^4      4      t]P
                  ! ]P                  ! 4       ]P                  ! R
^4      ]P                  ! R4      ]P                   ! 4       ]P                  ! R4      ]P                  ! R4      ]P"                  ! R
^4      ]P                  ! ^4      ]P$                  ! R
]P&                  4      4	      tRtR# )GetOutputPropertyib  r   r_   rj   ru   long_offsetlong_lengthdeleterk   rv   r   Zproperty_typeZbytes_afterr   N)r   r   r   r   r   r   r   r    r!   r"   rn   r%   r#   r$   rx   r&   r'   rJ   rK   ZCard8Objr(   r	   r   r
   r   r~   r~   b  s   yy

		"

		(
		*
		&
		- 
		- 

	
q	
H YY

		'1
		#$

		/"
		- 
GQ
r

%

Fr
   r~   c                 sx    \        V P                  V P                  P                  \        4      VVVVVVVR 7	      # ))	r)   r   r_   rj   ru   r   r   r   rk   )r~   r)   r*   r+   )r-   r_   rj   ru   r   r   r   rk   s   &&&&&&&&r   get_output_propertyr   |  s=    ||//8

 

r
   c            
       s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R]4      ]P                  ! R4      4      t]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                   ! R4      ]P"                  ! 4       ]P$                  ! R4      ]P                  ! ^4      4      tRtR# )	
CreateModei  r   rD   rw   r   r   r   N)r   r   r   r   r   r   r   r    r!   r<   ObjectrY   rZ   r#   r$   r%   r&   r'   r"   r(   r	   r   r
   r   r   r     s    yy

		"

		(
		&.)


6
H YY

q	
		#$

		&
r

Fr
   r   c                 sp    \        V P                  V P                  P                  \        4      V VVR 7      # ))r)   r   rD   rw   r   )r   r)   r*   r+   )r-   rw   r   rc   r   create_moder     s1    ||//8
 
r
   c                   s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
RtR# )DestroyModei  r   rw   r   Nr|   r   r
   r   r   r     s?    yy

		"

		&	
Hr
   r   c                 rf   ))r)   r   rw   )r   r)   r*   r+   )r-   rw   rG   r   destroy_moder     s+    ||//8
 
r
   c            	       s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
RtR# )AddOutputModei  r   r_   rw   r   Nr|   r   r
   r   r   r     K    yy

		"

		(
		&
Hr
   r   c                 rb   )r)   r   r_   rw   )r   r)   r*   r+   r-   r_   rw   rc   r   add_output_moder     s.    ||//8	
 
r
   c            	       s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
RtR# )DeleteOutputModei  r   r_   rw   r   Nr|   r   r
   r   r   r     r   r
   r   c                 rb   r   )r   r)   r*   r+   r   rc   r   delete_output_moder     s.    ||//8	
 
r
   c                   sN   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R^4      ]P                  ! R^4      ]P                   ! R]P"                  4      ]P                   ! R]P"                  4      4      tRtR# )GetCrtcInfoi  r   r`   r3   r6   r   r2   r   r   r   r   rw   r5   Zpossible_rotationsrU   Zpossible_outputsr   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r&   r'   Int16rJ   rK   rX   r(   r	   r   r
   r   r   r     s)   yy

		"

		&
		$%
H YY


		#$

		+


		'
		(
		&
		*
		&'
Iq!
&*
	2<<(
"BLL1!
Fr
   r   c                 rb   ))r)   r   r`   r3   )r   r)   r*   r+   )r-   r`   r3   rc   r   get_crtc_infor     s.    ||//8)	
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! ^4      ]P                  ! R
]P                  4      4      t]P
                  ! ]P                   ! 4       ]P                  ! R4      ]P                  ! R4      ]P"                  ! 4       ]P                  ! R4      ]P                  ! ^4      4      tRtR# )SetCrtcConfigi  r   r`   r2   r3   r   r   rw   r5   rU   r6   r   r7   r   N)r   r   r   r   r   r   r   r    r!   r"   r   r&   r%   rK   rX   r#   r$   r'   r(   r	   r   r
   r   r   r     s    yy

		"

		&
		+
		$%


		&
		*
q	
	2<<(
H YY


		#$

		/"
r

Fr
   r   c	                 sz    \        V P                  V P                  P                  \        4      VVVVVVVVR 7
      # ))
r)   r   r`   r3   r   r   rw   r5   rU   r2   )r   r)   r*   r+   )	r-   r`   r3   r   r   rw   r5   rU   r2   s	   &&&&&&&&&r   set_crtc_configr     s@    ||//8)


 
r
   c            
       s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! ^4      4      tRtR# )	GetCrtcGammaSizei%  r   r`   r6   r   sizer   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r&   r'   r%   r(   r	   r   r
   r   r   r   %  s    yy

		"

		&	
H YY


		#$

		&
r

Fr
   r   c                 rf   )r)   r   r`   )r   r)   r*   r+   r-   r`   rG   r   get_crtc_gamma_sizer   5  +    ||//8
 
r
   c                   sR   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R^4      ]P                  ! ^4      ]P                   ! R]P"                  4      ]P                   ! R]P"                  4      ]P                   ! R]P"                  4      4	      tR	tR
# )GetCrtcGammai=  r   r`   r6   r   redgreenbluer   N)r   r   r   )r   r   r   r   r   r   r   r    r!   r"   r#   r$   r&   r'   rJ   r%   rK   	Card16Objr(   r	   r   r
   r   r   r   =  s    yy

		"

		&	
H YY


		#$

,a0
r

r||$
&
%

Fr
   r   c                 rf   r   )r   r)   r*   r+   r   rG   r   get_crtc_gammar   P  s+    ||//8
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      ]P                  ! R]P                  4      ]P                  ! R]P                  4      ]P                  ! R]P                  4      4	      tRtR	# )
SetCrtcGammaiX  r   r`   r   r   r   r   r   N)r   r   r   r   r   r   r   r    r!   r"   r&   r%   rK   r   r#   r	   r   r
   r   r   r   X  s    yy

		"

		&
		&
q	
r||$
&
%

Hr
   r   c           
      ry   ))r)   r   r`   r   r   r   r   )r   r)   r*   r+   )r-   r`   r   r   r   r   rA   r   set_crtc_gammar   e  s7    ||//8
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                   ! R^4      ]P                   ! R^4      ]P                   ! R	^4      ]P                   ! R
^4      ]P                  ! ^4      ]P"                  ! R]P$                  4      ]P"                  ! R]P$                  4      ]P"                  ! R	]4      ]P(                  ! R
4      4      tRtR# )GetScreenResourcesCurrentis  r   rD   r   r2   r3   r   rU   rV   Znamesr   NrW   r   r
   r   r   r   s  s   yy

		"

		(	
H YY

q	
		#$

		+
		$%
GQ
Iq!
GQ
GQ
q	
&
	2<<(
(


7
Fr
   r   c                 r[   r\   )r   r)   r*   r+   r,   r.   r   get_screen_resources_currentr     s+    $||//8
 
r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R]4      ]P                  ! R^4      ]P                  ! ^4      ]P                  ! R4      ]P                  ! R]P                   4      4	      tRtR# )	SetCrtcTransformi  r   r`   Z	transformZfilter_nameZfilter_paramsr   N)r   r   r   r   r   r   r   r    r!   r"   r   Render_TransformrJ   r%   rZ   rK   rX   r#   r	   r   r
   r   r   r     s    yy

		"

		&
		+/0
M1%
q	


=!
.

Hr
   r   c                 rb   ))r)   r   r`   n_bytes_filter)r   r)   r*   r+   )r-   r`   r   rc   r   set_crtc_transformr     s.    ||//8%	
 
r
   c                   sV   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R]4      ]P                   ! R4      ]P"                  ! ^4      ]P                  ! R]4      ]P"                  ! ^4      ]P$                  ! R	^4      ]P$                  ! R
^4      ]P$                  ! R^4      ]P$                  ! R^4      ]P&                  ! R	4      ]P(                  ! R
]P*                  4      ]P&                  ! R4      ]P(                  ! R]P*                  4      4      tRtR# )GetCrtcTransformi  r   r`   r6   r   Zpending_transformZhas_transformsZcurrent_transformZpending_filter_nameZpending_filter_paramsZcurrent_filter_nameZcurrent_filter_paramsr   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r&   r'   r   r   rn   r%   rJ   rZ   rK   rX   r(   r	   r   r
   r   r   r     s:   yy

		"

		&	
H YY


		#$

		%'78
 !
q	
		%'78
q	
)1-
+Q/
)1-
+Q/


()
'6


()
'6#
Fr
   r   c                 rf   r   )r   r)   r*   r+   r   rG   r   get_crtc_transformr     r   r
   c                   s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      tRtR# )
GetPanningi  r   r`   r6   r   r2   lefttopr   r   
track_left	track_toptrack_widthtrack_heightborder_left
border_topborder_rightborder_bottomr   N)r   r   r   r   r   r   r   r    r!   r"   r#   r$   r&   r'   r   r(   r	   r   r
   r   r   r     s   yy

		"

		&	
H YY


		#$

		+
		&
		%
		'
		(
		,
		+
		- 
		.!


 
!#
Fr
   r   c                 rf   r   )r   r)   r*   r+   r   rG   r   get_panningr     s+    ||//8
 
r
   c                   sb   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      t]P
                  ! ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! ^4      4      tRtR# )
SetPanningi  r   r`   r2   r   r   r   r   r   r   r   r   r   r   r   r   r6   r   r7   r   N)r   r   r   r   r   r   r   r    r!   r"   r&   r   r#   r$   r'   r%   r(   r	   r   r
   r   r   r     s.   yy

		"

		&
		+
		&
		%
		'
		(
		,
		+
		- 
		.!


 
!#
H& YY


		#$

		/"
r

Fr
   r   c                 s    \        R/ R V P                  bRV P                  P                  \        4      bRVbRVbRVbRVbRVbRVbRVbR	VbR
V	bRV
bRVbRVbRVbRVb # )r)   r   r`   r   r   r   r   r   r   r   r   r   r   border_widthborder_heightr2   r   )r   r)   r*   r+   )r-   r`   r   r   r   r   r   r   r   r   r   r   r   r   r2   s   &&&&&&&&&&&&&&&r   set_panningr     s     

||//8
 
 	

 
 
 
 
 
  
 "
  
 
 "
 $
  !
 
r
   c            	       s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      tRtR# )SetOutputPrimaryi"  r   rD   r_   r   Nr   r   r   r   r   r   r   r    r!   r<   r"   r#   r	   r   r
   r   r   r   "  sK    yy

		"

		(
		(
Hr
   r   c                 rF   ))r)   r   rD   r_   )r   r)   r*   r+   rg   rG   r   set_output_primaryr   +  s.    ||//8	
 
r
   c            
       s   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^4      ]P                  ! 4       ]P                  ! R4      4      t
]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                  ! R4      ]P                  ! ^4      4      tRtR# )GetOutputPrimaryi4  r   rD   r   r_   r   N)r   r   r   r   r   r   r   r    r!   r<   r#   r$   r%   r&   r'   r"   r(   r	   r   r
   r   r   r   4  s    yy

		"

		(	
H YY

q	
		#$

		(
r

Fr
   r   c                 r[   r\   )r   r)   r*   r+   r,   r.   r   get_output_primaryr   D  s+    ||//8
 
r
   c                   sV   ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^*4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      ]P                  ! ^4      4      t]P
                  ! ]P                  ! 4       ]P                  ! ^4      ]P                  ! R4      ]P                  ! 4       ]P                   ! R4      ]P"                  ! R^4      ]P                   ! R4      ]P                  ! ^4      ]P$                  ! R]4      4	      tR	tR
# )GetMonitorsiN  r   rD   	is_activer   r2   ZmonitorsrU   r   N)r   r   r   r   r   r   r   r    r!   r<   rn   r%   r#   r$   r&   r'   r"   rJ   rK   MonitorInfor(   r	   r   r
   r   r   r   N  s    yy

		"

		(

q	H YY

q	
		#$

		+
J"
		)
r


K(
Fr
   r   c                 rF   ))r)   r   rD   r   )r   r)   r*   r+   )r-   r   rG   r   get_monitorsr   e  s.    ||//8	 r
   c            
       s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^+4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R]4      4      tRtR# )
SetMonitorim  r   rD   monitor_infor   N)r   r   r   r   r   r   r   r    r!   r<   r   r   r#   r	   r   r
   r   r   r   m  sM    yy

		"

		(
		.+.Hr
   r   c                 rF   ))r)   r   rD   r   )r   r)   r*   r+   )r-   r   rG   r   set_monitorr   w  s.    ||//8!	 r
   c            	       s    ] tR tRt]P
                  ! ]P                  ! R4      ]P                  ! ^,4      ]P                  ! 4       ]P                  ! R4      ]P                  ! R4      4      tRtR# )DeleteMonitori  r   rD   r   r   Nr   r   r
   r   r   r     sK    yy

		"

		(
		&Hr
   r   c                 rF   ))r)   r   rD   r   )r   r)   r*   r+   )r-   r   rG   r   delete_monitorr     s.    ||//8	 r
   c                   s   ] tR tRtRt]P                  ! ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      tRtR# )ScreenChangeNotifyi  Nru   r5   r   r2   r3   r9   rD   r4   r:   r   r   r   r   r   r   r   r   r   _coder   r   r   r&   r"   r<   _fieldsr	   r   r
   r   r   r     s    Eii


		#$
		+
		$%
		&
		(
		)
		"#
		#$
		$%
		()
		)*
Gr
   r   c                   s   ] tR tRtRt]P                  ! ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! ^4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      tRtR# )CrtcChangeNotifyi  Nru   sub_coder   r2   rD   r`   rw   r5   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     s    Eii


		#$
		+
		(
		&
		&
		*
q	


		'
		(
Gr
   r   c                   s   ] tR tRtRt]P                  ! ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      4      tRtR# )OutputChangeNotifyi  Nru   r   r   r2   r3   rD   r_   r`   rw   r5   ra   r:   r   r   r   r
   r   r   r     s    Eii


		#$
		+
		$%
		(
		(
		&
		&
		*

!"
Gr
   r   c                   sn   ] tR tRtRt]P                  ! ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R4      ]P                  ! R	4      ]P                  ! R
4      ]P                  ! ^4      4	      tRtR# )OutputPropertyNotifyi  Nru   r   r   rD   r_   Zatomr2   Zstater   )r   r   r   r   r   r   r   r   r&   r<   r"   r%   r   r	   r   r
   r   r   r     s    Eii


		#$
		(
		(
		&
		+

r


Gr
   r   c                 s   V P                  R R\        4       V P                  RR\        4       V P                  RR\        4       V P                  RR\        4       V P                  RR\
        4       V P                  RR\        4       V P                  RR	\        4       V P                  RR
\        4       V P                  R R\        4       V P                  R R\        4       V P                  R R\        4       V P                  R R\        4       V P                  R R\        4       V P                  R R\        4       V P                  R R\        4       V P                  RR\         4       V P                  R R\"        4       V P                  R R\$        4       V P                  R R\&        4       V P                  R R\(        4       V P                  R R\*        4       V P                  R R\,        4       V P                  R R\.        4       V P                  R R\0        4       V P                  RR\2        4       V P                  R R\4        4       V P                  R R\6        4       V P                  RR\8        4       V P                  RR\:        4       V P                  R R \<        4       V P                  R R!\>        4       \        V 4      pVP@                  ^8X  Ede   VPB                  ^8  EdQ   V P                  RR"\D        4       V P                  RR#\F        4       V P                  RR$\H        4       V PK                  VPL                  \N        ,           \P        4       V PS                  VPL                  \T        ,           \V        \X        4       V PS                  VPL                  \T        ,           \Z        \\        4       V PS                  VPL                  \T        ,           \^        \`        4       V Pc                  \d        \f        4       V Pc                  \h        \j        4       V Pc                  \l        \n        4       R%# R%# R%# )&r)   Zxrandr_query_versionrD   Zxrandr_select_inputZxrandr_get_screen_infor1   Zxrandr_1_0set_screen_configZxrandr_set_screen_configZxrandr_get_screen_size_rangeZxrandr_set_screen_sizeZxrandr_get_screen_resourcesZxrandr_get_output_infoZxrandr_list_output_propertiesZxrandr_query_output_propertyz!xrandr_configure_output_property Zxrandr_change_output_propertyZxrandr_delete_output_propertyZxrandr_get_output_propertyZxrandr_create_modeZxrandr_destroy_modeZxrandr_add_output_modeZxrandr_delete_output_modeZxrandr_get_crtc_infoZxrandr_set_crtc_configZxrandr_get_crtc_gamma_sizeZxrandr_get_crtc_gammaZxrandr_set_crtc_gammaZ#xrandr_get_screen_resources_currentZxrandr_set_crtc_transformZxrandr_get_crtc_transformZxrandr_set_output_primaryZxrandr_get_output_primaryZxrandr_get_panningZxrandr_set_panningZxrandr_get_monitorsZxrandr_set_monitorZxrandr_delete_monitorN)8Zextension_add_methodr/   rH   rO   r>   rB   rQ   rS   r]   rd   rh   rq   rs   rz   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Zextension_add_eventZfirst_eventRRScreenChangeNotifyr   Zextension_add_subeventRRNotifyRRNotify_CrtcChanger   RRNotify_OutputChanger   RRNotify_OutputPropertyr   Zextension_add_errorBadRROutputr   	BadRRCrtcr   	BadRRModer   )ZdispZinfoZversions   && r   initr     st   i)?Oh(=|Lh(@/Rj*GI^_j*DFWXh(FH]^h(@/Rh(EG[\i)A?Si)HJ`ai)GI^_i)LNgii)HJ`ai)HJ`ai)EGZ[h(<kJi)>Mi)A?Si)DFXYi)?Oi)A?Si)EGZ[i)@.Qi)@.Qh(MOkli)DFXYi)DFXYh(CEWXh(CEWXi)={Ki)={K D!G!g&;&;q&@!!(,A<P!!(,@+N!!(,C^T  !1!14H!HJ\]##D$4$4x$?ATVfg##D$4$4x$?AVXjk##D$4$4x$?AXZno  .>?  N;  N; 'A!r
   )NN)FF)T)Z__doc__ZXlibr    ZXlib.protocolr   r+   r   r   r   r   r   ZRRScreenChangeNotifyMaskZRRCrtcChangeNotifyMaskZRROutputChangeNotifyMaskZRROutputPropertyNotifyMaskZSetConfigSuccessZSetConfigInvalidConfigTimeZSetConfigInvalidTimeZSetConfigFailedZRotate_0Z	Rotate_90Z
Rotate_180Z
Rotate_270Z	Reflect_XZ	Reflect_YZHSyncPositiveZHSyncNegativeZVSyncPositiveZVSyncNegativeZ	InterlaceZ
DoubleScanZCSyncZCSyncPositiveZCSyncNegativeZHSkewPresentZBCastZPixelMultiplexZDoubleClockZClockDivideBy2Z	ConnectedZDisconnectedZUnknownConnectionZPROPERTY_RANDR_EDIDZPROPERTY_SIGNAL_FORMATZPROPERTY_SIGNAL_PROPERTIESZPROPERTY_CONNECTOR_TYPEZPROPERTY_CONNECTOR_NUMBERZPROPERTY_COMPATIBILITY_LISTZPROPERTY_CLONE_LISTZSubPixelUnknownZSubPixelHorizontalRGBZSubPixelHorizontalBGRZSubPixelVerticalRGBZSubPixelVerticalBGRZSubPixelNoner   r   r   Z	Exceptionr   r   r   r   r&   rL   r"   rY   rJ   rK   r   ZRandR_Ratesr   rn   r   rX   r   ZReplyRequestr   r/   r0   ZCurrentTimer>   r?   rB   ZRequestrC   rH   rI   rO   rP   rQ   rR   rS   rT   r]   r^   rd   re   rh   ri   rq   rr   rs   rt   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   ZEventr   r   r   r   r   r   r
   r   <module>r      s  .  
            &   & % %        	

 !	 	 )((((	(
((((((((  	  % , 0 - / 1 )         		 (y ' %Y % %Y % II
		#$
		$%
		()
		)*	
  
		$
		'
		(
		+
		.!
		,
		)
		(
		.!
		,
		)
		- 
		'
  ii
GQ
&
 99
		*
		*
		*
		*
		*
		*
		*
		*
		*

  iiIIfGGIGGKKKHHSMHHSMII II !II$%II%&GGGR\\" 
2?? 
$	

"// 
. PQ}} 

boo 
2 GHSTS`S` 
$
"** 


BOO 
2	

 
&	


BJJ 

	

 
2

BOO 
<

2?? 
"

"// 
(

rzz 


2:: 
	

2:: 


 
4

 
$

"** 


BJJ 


rzz 


"// 
6

BOO 
0 \][h[h 

r 
 

2?? 
&

2:: 
	

 
2

rzz 


r 
6

 
6

 
: ij  iv  iv 
*
rzz 


r 
 
"// . BJJ 
 
&
rxx 
&
 
$
288 
1<r
   