
    fhG                        S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKrSSKJ	r	  Sr
\
(       a  SSKJr       S	           S
S jjrSS jrg)    )annotationsN   )ImageF)ImageWinc           
        UGc  [         R                  S:X  a  [        R                  " S5      u  pV[        R
                  " U5        S/nU (       a  U u  ppUSU SU	 SX-
   SX-
   3/-  n[        R                  " USU/-   5        [        R                  " U5      nUR                  5         [        R                  " U5        U (       a+  UR                  W
W-
  WW	-
  45      nUR                  5         U$ U$ [         R                  S:X  a  Ub  Sn[        R                  R                  UUUb  [        U5      OS	5      u  pn[        R                   " S
UUSSUS	   S-  S-   S-  S5      nU (       a+  Uu  nnU u  ppUR#                  UU-
  U	U-
  U
U-
  UU-
  45      nU$ Un [        R                  R$                  (       d  Sn['        U5      e[        R                  R)                  U5      u  nn[        R                   " S
UUSSUS	   S-  S5      nU (       a  UR#                  U 5      nU$ ! [&         Ga.    UGc(  [         R                  S;  Ga  [*        R,                  " S5      (       a  SS/nO@[*        R,                  " S5      (       a  S/nO![*        R,                  " S5      (       a  / SQnOe [        R                  " S5      u  pV[        R
                  " U5        [        R                  " Xv/-   5        [        R                  " U5      nUR                  5         [        R                  " U5        U (       a%  UR#                  U 5      nUR                  5         Us $ Us $ e f = f)Ndarwinz.pngscreencapturez-R,z-xwin32r   RGBrawBGR   z$Pillow was built without XCB supportBGRX   r   )r   r   zgnome-screenshot-fgrim	spectacle)r   z-nz-br   -o)sysplatformtempfilemkstemposclose
subprocesscallr   openloadunlinkresizecoregrabscreen_win32int	frombytescropHAVE_XCBOSErrorgrabscreen_x11shutilwhich)bboxinclude_layered_windowsall_screensxdisplaywindowfhfilepathargslefttoprightbottomim
im_resizedoffsetsizedatax0y0display_namemsg
im_croppeds                         E/var/www/auris/envauris/lib/python3.13/site-packages/PIL/ImageGrab.pygrabrE   !   s    <<8##++F3LBHHRL#$D+/(5$qQuzl!FJ<HIIOODD(#334H%BGGIIIhYYfsl'CD

!!I\\W$! !&!<!<'%1Fq"F$
 a1qB&	B B+/(5WWdRir52:v{KLI'L zz""8C#,ZZ..|<
d2 __UD$vtAw{ANB	7  CLL8K$K||.//*D1f%%xk**<#++F3LBHHRLOOD:-.H%BGGIIIhWWT]

!!I-s   !AH+ +D1M$M$"M$c                    [         R                  S:X  at  [        R                  " / SQSS9n U R                  S:w  a  g SS Kn[        R                  " UR                  U R                  SS 5      5      n[        R                  " U5      $ [         R                  S:X  Ga  [        R                  R                  5       u  p2US	:X  a{  SS KnUR                  S
U5      S   nUS   S:X  a#  X%S  R!                  S5      R#                  S5      nO"X%S  R!                  S5      R#                  S5      nUS UR%                  S5       $ ['        U[(        5      (       aP  [        R                  " U5      nUS:X  a  SSKJn  UR/                  U5      $ US:X  a  SSKJn  UR3                  U5      $ g [4        R6                  " S5      (       a  Sn	O [4        R6                  " S5      (       a  Sn	OS n	[8        R:                  " S5      (       a  U	S;   a  / SQn
O3[8        R:                  " S5      (       a  U	S;   a  / SQn
OSn[=        U5      e[        R                  " U
SS9n U R                  S:w  aZ  U R>                  nS  H
  nX;   d  M
    g    U
S    S!3nU(       a$  US"URA                  5       R!                  5        3-  n[C        U5      e[        R                  " U R                  5      n[        R                  " U5      nURE                  5         U$ )#Nr   )	osascriptz-eu#   get the clipboard as «class PNGf»T)capture_outputr      r   fileI   mbcs zutf-16le pngr   )PngImagePluginDIB)BmpImagePluginWAYLAND_DISPLAYwaylandDISPLAYx11wl-paste)rV   N)rY   -timagexclip)rX   N)r\   z
-selection	clipboardrZ   z	image/pngr   zDwl-paste or xclip is required for ImageGrab.grabclipboard() on Linux)s   Nothing is copieds   No selections"   No suitable type of content copieds    not availables   cannot convert s(   xclip: Error: There is no owner for the z errorz: )#r   r   r   run
returncodebinasciiioBytesIO	unhexlifystdoutr   r    r$   grabclipboard_win32structunpack_fromdecodesplitindex
isinstancebytesrP   rR   PngImageFilerT   DibImageFiler   getenvr,   r-   NotImplementedErrorstderrstripChildProcessErrorr!   )pr`   r>   fmtrf   ofilesrR   rT   session_typer5   rB   errsilent_errorr:   s                  rD   grabclipboardr{   v   sx   
||xNNF
 <<1zz(,,QXXb_=>zz$		 JJ224	&=""3-a0ABx1}R/55d;R
399$?*5;;r?++dE""::d#De|,%22488,%2248899&''$LYYy!! LL<<
##8I(I.D\\'""|}'DPDXC%c**NN45<<1((C!  &!  !WIV$CCIIK..0122#C((zz!((#ZZ
		    )NFFNN)r.   z tuple[int, int, int, int] | Noner/   boolr0   r}   r1   z
str | Noner2   zint | ImageWin.HWND | NonereturnzImage.Image)r~   zImage.Image | list[str] | None)
__future__r   ra   r   r,   r   r   r   rP   r   TYPE_CHECKINGr   rE   r{    r|   rD   <module>r      s   " # 	 	   
   .2$))-R
*R!R R 	R
 'R RjNr|   