
    h                         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;  a  [*        R,                  " S5      (       a  S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	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                         ?/var/www/html/env/lib/python3.13/site-packages/PIL/ImageGrab.pygrabrD   !   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..|<
d. __UD$vtAw{ANB	3  CLL8K$K||.//*D1k**<#++F3LBHHRLOOD:-.H%BGGIIIhWWT]

!!I)s   !AH+ +DM>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:w  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   zutf-16le mbcs pngr   )PngImagePluginDIB)BmpImagePluginWAYLAND_DISPLAYwaylandDISPLAYx11wl-paste)rU   N)rX   -timagexclip)rW   N)r[   z
-selection	clipboardrY   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bytesrO   rQ   PngImageFilerS   DibImageFiler   getenvr+   r,   NotImplementedErrorstderrstripChildProcessErrorr    )pr_   r=   fmtre   ofilesrQ   rS   session_typer4   rA   errsilent_errorr9   s                  rC   grabclipboardrz   t   sx   
||xNNF
 <<1zz(,,QXXb_=>zz$		 JJ224	&=""3-a0ABx1}R
399$?R/55d;*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.   boolr/   r|   r0   z
str | Noner1   zint | ImageWin.HWND | NonereturnzImage.Image)r}   zImage.Image | list[str] | None)
__future__r   r`   r   r+   r   r   r   rO   r   TYPE_CHECKINGr   rD   rz    r{   rC   <module>r      s   " # 	 	   
   .2$))-P
*P!P P 	P
 'P PfNr{   