
     fOA                     F.   d dl Z d dlZd dlZd dlZd dl mZmZmZ d dlmZ d dl	m
Z
 d dlmZ d dlZ	edededddddddd	d	d
d
ddddi
Zej        dv r ed          	 d Zd ZddZddZddZd Zdad Zd Zd Zd Zd Zd Z eej        d                   Z	  e d e j!        D                       Z"e"#                    i de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    d e$                    e	j%        &                    d!                    d"e$                    e	j%        &                    d#                    d$e$                    e	j%        &                    d#                    d%e$                    e	j%        &                    d&                    d'e$                    e	j%        &                    d(                    d)e$                    e	j%        &                    d*                    d+e$                    e	j%        &                    d,                    d-e$                    e	j%        &                    d.                    d/e$                    e	j%        &                    d0                    d1e$                    e	j%        &                    d0                    d2e$                    e	j%        &                    d3                    d4e$                    e	j%        &                    d5                    d6e$                    e	j%        &                    d3                    d7e$                    e	j%        &                    d5                    d8e$                    e	j%        &                    d9                    i d:e$                    e	j%        &                    d;                    d<e$                    e	j%        &                    d=                    d>e$                    e	j%        &                    d?                    d@e$                    e	j%        &                    dA                    dBe$                    e	j%        &                    dC                    dDe$                    e	j%        &                    dE                    dFe$                    e	j%        &                    dG                    dHe$                    e	j%        &                    dI                    dJe$                    e	j%        &                    dG                    dKe$                    e	j%        &                    dG                    dLe$                    e	j%        &                    dG                    dMe$                    e	j%        &                    dG                    dNe$                    e	j%        &                    dO                    dPe$                    e	j%        &                    dQ                    dRe$                    e	j%        &                    dQ                    dSe$                    e	j%        &                    dT                    dUe$                    e	j%        &                    dV                    i dWe$                    e	j%        &                    dV                    dXe$                    e	j%        &                    dY                    dZe$                    e	j%        &                    d[                    d\e$                    e	j%        &                    d]                    d^e$                    e	j%        &                    d_                    d`e$                    e	j%        &                    da                    dbe$                    e	j%        &                    dc                    dde$                    e	j%        &                    de                    dfe$                    e	j%        &                    dg                    dhe$                    e	j%        &                    di                    dje$                    e	j%        &                    dk                    dle$                    e	j%        &                    dm                    dne$                    e	j%        &                    do                    dpe$                    e	j%        &                    dq                    dre$                    e	j%        &                    ds                    dte$                    e	j%        &                    du                    dve$                    e	j%        &                    dw                    i dxe$                    e	j%        &                    dy                    dze$                    e	j%        &                    d{                    d|e$                    e	j%        &                    d}                    d~e$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    i de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d&                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d(                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d*                    de$                    e	j%        &                    d                    i de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d!                    de$                    e	j%        &                    d#                    de$                    e	j%        &                    d#                    de$                    e	j%        &                    d0                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d¦                    de$                    e	j%        &                    dĦ                    de$                    e	j%        &                    dƦ                    de$                    e	j%        &                    dȦ                    de$                    e	j%        &                    dʦ                    de$                    e	j%        &                    d̦                    de$                    e	j%        &                    dΦ                    de$                    e	j%        &                    dЦ                    de$                    e	j%        &                    dҦ                    de$                    e	j%        &                    dԦ                    i de$                    e	j%        &                    d֦                    de$                    e	j%        &                    dئ                    de$                    e	j%        &                    dڦ                    de$                    e	j%        &                    dܦ                    de$                    e	j%        &                    dަ                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    de$                    e	j%        &                    d                    e$                    e	j%        &                    d                    e$                    e	j%        &                    d                    e$                    e	j%        &                    d                    e$                    e	j%        &                    d                    d           dD ]2Z'e$                    e	j%        &                    e'                    e"e'<   3dS )    N)LEFTMIDDLERIGHT)Display)X)
fake_input                     )javadarwinwin32zRThe pyautogui_x11 module should only be loaded on a Unix system that supports X11.c                      t                                           j                                        j        } | d         | d         fS )zReturns the current xy coordinates of the mouse cursor as a two-integer
    tuple.

    Returns:
      (x, y) tuple of the current xy coordinates of the mouse cursor.
    root_xroot_y)_displayscreenrootquery_pointer_data)coords    [/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/pyautogui/_pyautogui_x11.py	_positionr      s8     OO"00228E?E(O++    c                  z    t                                           j        t                                           j        fS N)r   r   width_in_pixelsheight_in_pixels r   r   _sizer$   %   s'    ??,hoo.?.?.PPPr   c                     t          |           } | dk    rd S | dk    rd}nd}t          t          |                     D ]}t          |||           d S )Nr   r   r   buttonintrangeabs_clickclicksxyr'   is        r   _vscrollr2   *   o    [[F{{	!3v;; $ $q!F#####$ $r   c                     t          |           } | dk    rd S | dk    rd}nd}t          t          |                     D ]}t          |||           d S )Nr   r   r   r&   r(   r-   s        r   _hscrollr5   7   r3   r   c                 $    t          | ||          S r    )r2   )r.   r/   r0   s      r   _scrollr7   D   s    FAq!!!r   c                     |t                                           v s
J d            t           |         }t          | ||           t          | ||           d S Nz>button argument not in ('left', 'middle', 'right', 4, 5, 6, 7))BUTTON_NAME_MAPPINGkeys
_mouseDown_mouseUpr/   r0   r'   s      r   r,   r,   H   s]    (--/////1q/// (Fq!VQ6r   c                      t           f	 t          j        g dt          j                  } |                                 \  }}|                    d          dk    a n# t          $ r da Y nw xY wt           S )N)dconfreadz0/org/gnome/desktop/peripherals/mouse/left-handed)stdoutzutf-8ztrue
F)_mouse_is_swapped_setting
subprocessPopenPIPEcommunicatedecodeFileNotFoundError)procstdout_bytesstderr_bytess      r   _mouse_is_swappedrM   S   s     !(	.#$i$i$ir|  sB  C  C  CD)-)9)9););&L,(4(;(;G(D(D(P%%  	. 	. 	.(-%%%	. %$s   AA A+*A+c                 |    t          t          t          j        | |           t                                           d S )Nr/   r0   )r   r   r   MotionNotifysyncrO   s     r   _moveTorR   d   s,    x12222MMOOOOOr   c                     t          | |           |t                                          v s
J d            t          |         }t          t          t
          j        |           t                                           d S r9   )rR   r:   r;   r   r   r   ButtonPressrQ   r>   s      r   r<   r<   i   se    AqMMM(--/////1q/// (Fx///MMOOOOOr   c                     t          | |           |t                                          v s
J d            t          |         }t          t          t
          j        |           t                                           d S r9   )rR   r:   r;   r   r   r   ButtonReleaserQ   r>   s      r   r=   r=   q   se    AqMMM(--/////1q/// (Fx&111MMOOOOOr   c                 @   | t           vst           |          dS t          |           t          k    r;t          t          t
          j        |            t                                           dS t          j	        |           }|r+t          t          t
          j        t           d                    t          t          t
          j        t           |                     |r+t          t          t
          j
        t           d                    t                                           dS )a}  Performs a keyboard key press without the release. This will put that
    key in a held down state.

    NOTE: For some reason, this does not seem to cause key repeats like would
    happen if a keyboard key was held down on a text field.

    Args:
      key (str): The key to be pressed down. The valid names are listed in
      pyautogui.KEY_NAMES.

    Returns:
      None
    Nshift)keyboardMappingtyper)   r   r   r   KeyPressrQ   	pyautoguiisShiftCharacter
KeyRelease)key
needsShifts     r   _keyDownra   y   s     /!!_S%9%ACyyC8QZ---+C00J C8QZ)ABBBx_S%9::: E8Q\?7+CDDDMMOOOOOr   c                     	 | t           vst           |          dS t          |           t          k    r| }nt           |          }t          t          t
          j        |           t                                           dS )zPerforms a keyboard key release (without the press down beforehand).

    Args:
      key (str): The key to be released up. The valid names are listed in
      pyautogui.KEY_NAMES.

    Returns:
      None
    N)rY   rZ   r)   r   r   r   r^   rQ   )r_   keycodes     r   _keyUprd      sj     /!!_S%9%ACyyC!#&xw///MMOOOOOr   DISPLAYc                     g | ]}|d fS r    r#   ).0r_   s     r   
<listcomp>rh      s    CCCdCCCr   	backspace	BackSpacetabTabenterReturnreturnrX   Shift_Lctrl	Control_LaltAlt_LpausePausecapslock	Caps_LockescEscapeescapepgupPage_Uppgdn	Page_DownpageuppagedownendEndhomeHomeleftLeftupUprightRightdownDownselectSelectprintPrintexecuteExecuteprtscprtscrprntscrnprintscreeninsertInsertdelDeletedeletehelpHelpwinSuper_LwinleftwinrightSuper_RappsMenunum0KP_0num1KP_1num2KP_2num3KP_3num4KP_4num5KP_5num6KP_6num7KP_7num8KP_8num9KP_9multiplyKP_MultiplyaddKP_Add	separatorKP_SeparatorsubtractKP_Subtractdecimal
KP_Decimaldivide	KP_Dividef1F1f2F2f3F3f4F4f5F5f6F6f7F7f8F8f9F9f10F10f11F11f12F12f13F13f14F14f15F15f16F16f17F17f18F18f19F19f20F20f21F21f22F22f23F23f24F24numlockNum_Lock
scrolllockScroll_Lock	shiftleft
shiftrightShift_Rctrlleft	ctrlright	Control_RaltleftaltrightAlt_R space	
z\e!exclam#
numbersign%percent$dollar&	ampersand"quotedbl'
apostrophe(	parenleft)
parenright*asterisk=equal+plus,comma-minus.period/slash:colon;	semicolon<less>greater?question@at[bracketleft]bracketright\	backslash^asciicircum_
underscore`grave	braceleftbar
braceright
asciitilde){|}~>abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890)NN)(r\   sysosrD   r   r   r   Xlib.displayr   Xlibr   Xlib.ext.xtestr   Xlib.XKr:   platform	Exceptionr   r$   r2   r5   r7   r,   rC   rM   rR   r<   r=   ra   rd   environr   dict	KEY_NAMESrY   updatekeysym_to_keycodeXKstring_to_keysymcr#   r   r   <module>rZ     s       



 				     ) ) ) ) ) ) ) ) ) )                   % % % % % % Q5!Q1aAq!QPQSTVWYZ\]^  <...
)h
i
ii, , ,Q Q Q

$ 
$ 
$ 
$
$ 
$ 
$ 
$" " " "   ! % % %"  
      B  8 72:i())V $CCy/BCCCDD    }33DG4L4L[4Y4YZZ}33DG4L4L[4Y4YZZ} 
33DG4L4LU4S4STT} 33DG4L4LX4V4VWW	}
 33DG4L4LX4V4VWW} 33DG4L4LY4W4WXX} 33DG4L4L[4Y4YZZ} 
33DG4L4LW4U4UVV} 33DG4L4LW4U4UVV} 33DG4L4L[4Y4YZZ} 
33DG4L4LX4V4VWW} 33DG4L4LX4V4VWW} 33DG4L4LY4W4WXX} 33DG4L4L[4Y4YZZ} 33DG4L4LY4W4WXX}  33DG4L4L[4Y4YZZ!}" 
33DG4L4LU4S4STT#} }$ 33DG4L4LV4T4TUU%}& 33DG4L4LV4T4TUU'}( 	33DG4L4LT4R4RSS)}* 33DG4L4LW4U4UVV+}, 33DG4L4LV4T4TUU-}. 33DG4L4LX4V4VWW/}0 33DG4L4LW4U4UVV1}2 33DG4L4LY4W4WXX3}4 33DG4L4LW4U4UVV5}6 33DG4L4LW4U4UVV7}8 33DG4L4LW4U4UVV9}: 33DG4L4LW4U4UVV;}< 33DG4L4LX4V4VWW=}> 
33DG4L4LX4V4VWW?}@ 33DG4L4LX4V4VWWA}B 33DG4L4LV4T4TUUC}D 
33DG4L4LY4W4WXXE} } }F 33DG4L4LY4W4WXXG}H 33DG4L4LY4W4WXXI}J 33DG4L4LV4T4TUUK}L 33DG4L4LV4T4TUUM}N 33DG4L4LV4T4TUUO}P 33DG4L4LV4T4TUUQ}R 33DG4L4LV4T4TUUS}T 33DG4L4LV4T4TUUU}V 33DG4L4LV4T4TUUW}X 33DG4L4LV4T4TUUY}Z 33DG4L4LV4T4TUU[}\ 33DG4L4LV4T4TUU]}^ 33DG4L4LV4T4TUU_}` 33DG4L4L]4[4[\\a}b 
33DG4L4LX4V4VWWc}d 33DG4L4L^4\4\]]e}f 33DG4L4L]4[4[\\g} } }h 33DG4L4L\4Z4Z[[i}j 33DG4L4L[4Y4YZZk}l 	33DG4L4LT4R4RSSm}n 	33DG4L4LT4R4RSSo}p 	33DG4L4LT4R4RSSq}r 	33DG4L4LT4R4RSSs}t 	33DG4L4LT4R4RSSu}v 	33DG4L4LT4R4RSSw}x 	33DG4L4LT4R4RSSy}z 	33DG4L4LT4R4RSS{}| 	33DG4L4LT4R4RSS}}~ 
33DG4L4LU4S4STT}@ 
33DG4L4LU4S4STTA}B 
33DG4L4LU4S4STTC}D 
33DG4L4LU4S4STTE}F 
33DG4L4LU4S4STTG}H 
33DG4L4LU4S4STTI} } }J 
33DG4L4LU4S4STTK}L 
33DG4L4LU4S4STTM}N 
33DG4L4LU4S4STTO}P 
33DG4L4LU4S4STTQ}R 
33DG4L4LU4S4STTS}T 
33DG4L4LU4S4STTU}V 
33DG4L4LU4S4STTW}X 
33DG4L4LU4S4STTY}Z 
33DG4L4LU4S4STT[}\ 33DG4L4LZ4X4XYY]}^ 33DG4L4L]4[4[\\_}` 33DG4L4LY4W4WXXa}b 33DG4L4LY4W4WXXc}d 33DG4L4L[4Y4YZZe}f 33DG4L4L[4Y4YZZg}h 33DG4L4LW4U4UVVi}j 33DG4L4LW4U4UVVk} } }n 	#	#DG$<$<W$E$E	F	Fo}p X''(@(@(I(IJJq}r 	(
$
$TW%=%=e%D%D
E
Es}t 	(
$
$TW%=%=h%G%G
H
Hu}v 	(
$
$TW%=%=h%G%G
H
Hw}x 	(
$
$TW%=%=h%G%G
H
Hy}z 	#	#DG$<$<X$F$F	G	G{}| 	#	#DG$<$<\$J$J	K	K}}~ 	#	#DG$<$<Y$G$G	H	H}@ 	#	#DG$<$<X$F$F	G	GA}B 	#	#DG$<$<[$I$I	J	JC}D 	#	#DG$<$<Z$H$H	I	IE}F 	#	#DG$<$<\$J$J	K	KG}H 	#	#DG$<$<[$I$I	J	JI}J 	#	#DG$<$<\$J$J	K	KK}L 	#	#DG$<$<Z$H$H	I	IM}N 	#	#DG$<$<W$E$E	F	FO} } }P 	#	#DG$<$<V$D$D	E	EQ}R 	#	#DG$<$<W$E$E	F	FS}T 	#	#DG$<$<W$E$E	F	FU}V 	#	#DG$<$<X$F$F	G	GW}X 	#	#DG$<$<W$E$E	F	FY}Z 	#	#DG$<$<W$E$E	F	F[}\ 	#	#DG$<$<[$I$I	J	J]}^ 	#	#DG$<$<V$D$D	E	E_}` 	#	#DG$<$<Y$G$G	H	Ha}b 	#	#DG$<$<Z$H$H	I	Ic}d 	#	#DG$<$<T$B$B	C	Ce}f 	#	#DG$<$<]$K$K	L	Lg}h 	#	#DG$<$<^$L$L	M	Mi}j 	(
$
$TW%=%=k%J%J
K
Kk}l 	#	#DG$<$<]$K$K	L	Lm}n 	#	#DG$<$<\$J$J	K	Ko}p 	#	#DG$<$<W$E$E	F	Fq} }r 
	#	#DG$<$<[$I$I	J	J		#	#DG$<$<U$C$C	D	D		#	#DG$<$<\$J$J	K	K		#	#DG$<$<\$J$J	K	Ky} } } } } }@ 
N Q QA!33DG4L4LQ4O4OPPOAQ Qr   