
    ZMh                     ~    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Z
e
rddlmZ 	 	 	 	 	 dddZddZdS )    )annotationsN   )ImageF)ImageWinbbox tuple[int, int, int, int] | Noneinclude_layered_windowsboolall_screensxdisplay
str | Nonewindowint | ImageWin.HWND | 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    r|d}t          j                            |||t          |          nd	          \  }}}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          rddg}nt+          j        d          rg d}n t          j        d          \  }}t	          j        |           t          j        ||gz              t          j	        |          }|
                                 t	          j        |           | r-|                    |           }|                                 |cY S |cY S  w xY w)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)r   r	   r   r   r   fhfilepathargslefttoprightbottomim
im_resizedoffsetsizedatax0y0display_namemsg
im_croppeds                         M/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/PIL/ImageGrab.pygrabrJ   !   s{    <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$$! !&!<!<'%1Fq" "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	3    CL8K$K$K|.// *D1k** <<<#+F33LBHRLLLODH:-...H%%BGGIIIIh "WWT]]



!!!!III)s   AH C9LLL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)r\   N)r_   -timagexclip)r^   N)rb   z
-selection	clipboardr`   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bytesrV   rX   PngImageFilerZ   DibImageFiler&   getenvr6   r7   NotImplementedErrorstderrstripChildProcessErrorr+   )prf   rC   fmtrl   ofilesrX   rZ   session_typer:   rG   errsilent_errorr?   s                  rI   grabclipboardr   t   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
				    )NFFNN)r   r   r	   r
   r   r
   r   r   r   r   r   r   )r   rK   )
__future__r   rg   r&   r6   r(   r"   r$   rV   r   TYPE_CHECKINGr   rJ   r    r   rI   <module>r      s   " # " " " " " 				 				      



         .2$))-P P P P PfN N N N N Nr   