
    ]Hj1                         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.             SS jjjrSS	 jrg)    )annotationsN   )ImageF)ImageWin)
scale_downc          
     
   UGc  [         R                  S:X  GaG  [        R                  " S5      u  pg[        R
                  " U5        S/nUb  US[        U5      /-  nO"U (       a  U u  ppUSU	 SU
 SX-
   SX-
   3/-  nUSU/-  n[        R                  " U5      nU(       a  [        R                  " X5      e[        R                  " U5      nUR                  5         [        R                  " U5        U (       Ga`  UGb*  [        R                  " S5      u  pg[        R
                  " U5        SS[        U5      SSU/n[        R                  " U5      nU(       a  [        R                  " X5      e[        R                  " U5       nUR                  UR                  -
  S	:  nS S S 5        [        R                  " U5        W(       a=  U u  ppU(       a  S
OSnUR                  X-
  U-  X-
  U-  4[!        S U  5       5      S9nOUR#                  U 5      nUR                  5         U$ 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  nnn[        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$                  R1                  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$ ! , (       d  f       GN= f! [.         GaY    UGcS  [         R                  S;  Ga>  [2        R4                  " S5      (       a  SS/nO@[2        R4                  " S5      (       a  S/nO![2        R4                  " S5      (       a  / SQnOe [        R                  " S5      u  pg[        R
                  " U5        UR7                  U5        [        R                  " U5      nU(       a  [        R                  " X5      e[        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-lz-R,z-x-od   r      c              3  *   #    U  H	  oS -  v   M     g7f)r   N ).0coords     O/Users/admin/workspace/tools/venv/lib/python3.13/site-packages/PIL/ImageGrab.py	<genexpr>grab.<locals>.<genexpr>R   s     %BTEaiTs   )boxwin32r   RGBrawBGR   z$Pillow was built without XCB supportBGRX   )r	   r   zgnome-screenshot-fgrim	spectacle)r"   z-nz-br    r   )sysplatformtempfilemkstemposclosestr
subprocesscallCalledProcessErrorr   openloadunlinkwidthresizetuplecropcoregrabscreen_win32int	frombytesHAVE_XCBOSErrorgrabscreen_x11shutilwhichappend)bboxinclude_layered_windowsall_screensxdisplaywindowr   fhfilepathargslefttoprightbottomretcodeimim_no_shadowretinascale
im_cropped
im_resizedoffsetsizedatax0y0display_namemsgs                              r   grabrX   !   sV    <<8##++F3LBHHRL#$D!s6{+++/(5$qQuzl!FJ<HIIT8$$D ood+G 33GBBH%BGGIIIh% $,#3#3F#;LBHHRL+T3v;dHUD(ood3G(;;GJJH-!#L,>,>!>!D .IIh' 3705%/Q%'YY#le3fle5KL %%BT%B B &/ &

 &(WWT]
HHJ%%!#EDL&3,+G!HJHHJ%%I\\W$! !&!<!<'%1Fq"FD$
 a1qB&	B B+/(5WWdRir52:v{KLI'L#zz""8C#,ZZ..|<
d8 __UD$vtAw{ANB	e .-h  CLL8K$K||.//*D1f%%xk**<#++F3LBHHRLKK! ood+G 33GBBH%BGGIIIhWWT]

!!I3s&   NAN( 
N%(ETT
T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)ri   N)rl   -timagexclip)rk   N)ro   z
-selection	clipboardrm   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-   r4   grabclipboard_win32structunpack_fromdecodesplitindex
isinstancebytesrc   re   PngImageFilerg   DibImageFiler'   getenvr;   r<   NotImplementedErrorstderrstripChildProcessErrorr.   )prs   rS   fmtry   ofilesre   rg   session_typerE   rW   errsilent_errorrK   s                  r   grabclipboardr      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?   boolr@   r   rA   z
str | NonerB   zint | ImageWin.HWND | Noner   r   returnzImage.Image)r   zImage.Image | list[str] | None)
__future__r   rt   r'   r;   r*   r#   r%   rc   r   TYPE_CHECKINGr   rX   r   r   r   r   <module>r      s   " # 	 	   
   .2$))-x x
*x!x x 	x
 'x x xvNr   