
    XhG                    ~    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           
     p   |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}n2t+          j        d          r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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)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                         _/var/www/tools.fuzzalab.pt/emblema-extractor/venv/lib/python3.11/site-packages/PIL/ImageGrab.pygrabrK   !   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..|<<
d2 _UD$vtAw{ANN 	B	7    CL8K$K$K|.// *D1f%% xk** <<<#+F33LBHRLLLODH:-...H%%BGGIIIIh "WWT]]



!!!!III-s   AH DL5/L53L5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   mbcs zutf-16le pngr   )PngImagePluginDIB)BmpImagePluginWAYLAND_DISPLAYwaylandDISPLAYx11wl-paste)r]   N)r`   -timagexclip)r_   N)rc   z
-selection	clipboardra   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bytesrW   rY   PngImageFiler[   DibImageFiler'   getenvr7   r8   NotImplementedErrorstderrstripChildProcessErrorr,   )prg   rD   fmtrm   ofilesrY   r[   session_typer;   rH   errsilent_errorr@   s                  rJ   grabclipboardr   v   sB   
|xNFFF
 
 
 <14z(,,QXbe_==>>z$		 	 J2244	T&==MMM""3--a0ABx1}}QRR//55d;;QRR
3399$??*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   rL   )
__future__r   rh   r'   r7   r)   r#   r%   rW   r   TYPE_CHECKINGr   rK   r    r   rJ   <module>r      s   " # " " " " " 				 				      



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