
    zvgr                    h    d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZddlm	Z	 	 	 	 	 dddZ
ddZdS )    )annotationsN   )ImageFbbox tuple[int, int, int, int] | Noneinclude_layered_windowsboolall_screensxdisplay
str | NonereturnImage.Imagec           
        |}t           j        dk    rt          j        d          \  }}t	          j        |           dg}| r| \  }}}	}
|d| d| d|	|z
   d|
|z
   gz  }t          j        |d|gz              t          j	        |          }|
                                 t	          j        |           | r3|                    |	|z
  |
|z
  f          }|                                 |S |S t           j        dk    rt          j                            ||          \  }}}t          j        d||d	d
|d         dz  dz   dz  d          }| r1|\  }}| \  }}}	}
|                    ||z
  ||z
  |	|z
  |
|z
  f          }|S |}	 t          j        j        sd}t%          |          t          j                            |          \  }}t          j        d||d	d|d         dz  d          }| r|                    |           }|S # t$          $ r |t           j        dvrt)          j        d          rt          j        d          \  }}t	          j        |           t          j        dd|g           t          j	        |          }|
                                 t	          j        |           | r-|                    |           }|                                 |cY S |cY S  w xY w)Ndarwinz.pngscreencapturez-R,z-xwin32RGBrawBGRr      z$Pillow was built without XCB supportBGRX   r   )r   r   zgnome-screenshotz-f)sysplatformtempfilemkstemposclose
subprocesscallr   openloadunlinkresizecoregrabscreen_win32	frombytescropHAVE_XCBOSErrorgrabscreen_x11shutilwhich)r   r   r
   r   fhfilepathargslefttoprightbottomim
im_resizedoffsetsizedatax0y0display_namemsg
im_croppeds                        J/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/PIL/ImageGrab.pygrabrC      s3    <8###+F33LBHRLLL#$D J+/(c5&$HHHHuTzHHF3JHHIIODD(#33444H%%BGGIIIIh "YYfsl'CDD



!!I\W$$!&!<!<'" "FD$ a1qB&	 	B  MB+/(c5&WWdRir52:v{KLLI'Lz" 	8C#,,Z..|<<
d* _UD$vtAw{ANN 	B	/     $777/00 8 $+F33LBHRLLLO/x@AAAH%%BGGIIIIh "WWT]]



!!!!III%s   AH CK%K%#K%Image.Image | list[str] | Nonec                    t           j        dk    rqt          j        g dd          } | j        dk    rd S dd l}t          j        |                    | j	        dd                             }t          j        |          S t           j        dk    r>t          j                                        \  }}|d	k    rdd l}|                    d
|          d         }|d         dk    r1||d                              d                              d          }n0||d                              d                              d          }|d |                    d                   S t'          |t(                    rVt          j        |          }|dk    rddlm} |                    |          S |dk    rddlm} |                    |          S d S t5          j        d          rd}	nt5          j        d          rd}	nd }	t9          j        d          r	|	dv rg d}
n.t9          j        d          r	|	dv rg d}
nd}t=          |          t          j        |
d          } | j        dk    r[| j        }d D ]	}||v r d S 
|
d          d!}|r,|d"|                                                                  z  }tC          |          t          j        | j	                  }t          j        |          }|"                                 |S )#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/pngz-ozDwl-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/   r0   NotImplementedErrorstderrstripChildProcessErrorr%   )pr_   r<   fmtre   ofilesrQ   rS   session_typer3   r@   errsilent_errorr8   s                  rB   grabclipboardrz   i   sB   
|xNFFF
 
 
 <14z(,,QXbe_==>>z$		 	 J2244	T&==MMM""3--a0ABx1}}QRR
3399$??QRR//55d;;*5;;r??*++dE"" 		9:d##De||,,,,,,%224888,,,,,,%224888t9&'' 	 $LLYy!! 	  LLL<
## 	+8I(I(I...DD\'"" 	+|}'D'DPPPDDXC%c***N4555<1(C!      3&&44 '!W$$$C 32CIIKK..00222#C(((z!(##Z
				    )NFFN)
r   r   r   r	   r
   r	   r   r   r   r   )r   rD   )
__future__r   r`   r    r/   r"   r   r   rO   r   rC   rz    r{   rB   <module>r~      s   " # " " " " " 				 				      



        .2$)	I I I I IXN N N N N Nr{   