
    ce                     >   U d Z ddlZddlZddlZddlmZ ddlmZ ddlmZ ddlm	Z	m
Z
mZmZmZmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZmZ ddlmZ ddlmZ ddl m!Z! ddl"m#Z# ej$        e%d<    e	j&        dd          rj e'ej(        d          r$ej)        *                    ej(        j+                    e'ej(        d          r$ej)        *                    ej(        j,                   d Z-d Z.d Z/ G d dej0                  Z1d Z2d Z3dS )zApplication start.    N)QtCore)QtGui)	QtWidgets)CONFLINUXLOCKFILEMACPIDFILEUBUNTU)filelock)images)
load_fonts)misc)styles)workers)setup_loggerLOGGER_CONFIG)qapplication)MessageBoxInformation)SplashScreen
MainWindowappmainenable_high_dpi_scalingAA_UseHighDpiPixmapsAA_EnableHighDpiScalingc                 2    t          j        | ||           dS )z-Custom except hook to avoid crashes on PyQt5.N)sys__excepthook__)cls	exception	tracebacks      <lib/python3.11/site-packages/anaconda_navigator/app/start.pyexcept_hookr%   -   s    sIy11111    c                      t           r&t          rt          j        t          j                  } nt          j        t          j                  } t                              |            dS )zSet application icon.N)	r   r   r   QIconr   ANACONDA_LOGO_WHITEANACONDA_LOGOr   setWindowIcon)app_icons    r$   set_application_iconr-   2   sS      5 5;v9::;v344hr&   c                 &    t          |           }|S )z(Create and show Navigator's main window.)splashr   )r/   windows     r$   run_appr1   <   s    v&&&FMr&   c                   ,     e Zd ZdZ fdZ fdZ xZS )
EventEater#Event filter for application state.c                 V    t                                                       || _        dS )r4   N)super__init__r   )selfapplication	__class__s     r$   r7   zEventEater.__init__F   s$    r&   c                 6   |                                 t          j        j        k    rt          r| j        j        j        r| j        j                                         | j        j        	                                r| j        j        
                                 n[| j        j                                        r| j        j                                         n| j        j                                         dS t                                          ||          S )zQt override.T)typer   QEventApplicationActivater	   r   r0   setup_readyshowisMaximizedshowMaximizedisFullScreenshowFullScreen
showNormalr6   eventFilter)r8   obeventr:   s      r$   rF   zEventEater.eventFilterK   s    JJLLFM===3=48?Kf=HO  """x**,, ---////--// -..0000**,,,4ww""2u---r&   )__name__
__module____qualname____doc__r7   rF   __classcell__)r:   s   @r$   r3   r3   C   sW        --    
. . . . . . . . .r&   r3   c                      t                      at          j        t          j        t          j                   t                              t          j                               d S )N)r   r   signalSIGINTSIG_DFLsetStyleSheetr   load_style_sheet r&   r$   start_core_apprU   Z   sD    
..C
M&-000f-//00000r&   c                    | j         t          _        t                       t	                       t                       t          t                     t          st          rWt          j                            dd          7t          dd          }t          j        |                                           t#          j        t&                    }	 t)          j                    }|du rIt          ddt&           d	t,           d
          }t          j        |                                           n|t)          j                     |                    d          5  t)          j                     t5                      }|                    d           t9          |          }|t          _        t=          t                    }t                              |           t          j         !                    tD          j#                   t          j                            d          MtI          j%        t                    }|j&        !                    |j'                   |(                    d           t          j        t                                                     ddd           dS # 1 swxY w Y   dS # t"          j)        $ r; t          dd          }t          j        |                                           Y dS w xY w)zMain application entry point.SUDO_UIDNzAnaconda Navigator Informationz;Anaconda Navigator cannot be run with root user privileges.)titletextFz Anaconda Navigator Startup ErrorzNavigator failed to start due to an incorrect shutdown. <br><br>We were unable to remove the pid & lock files. Please manually remove the following files and restart Anaconda Navigator:<br><ul><li><pre>z</pre></li><li><pre>z</pre></li></ul>g      @)timeoutzInitializing...TEST_CIi`  z;There is an instance of Anaconda Navigator already running.)*	log_levelr   levelr   rU   r-   r   r   r	   r   osenvirongetr   r   exitexec_r   FileLockr   r   load_pidr
   remove_lockacquiresave_pidr   show_messager1   r0   r3   installEventFilteraboutToQuitconnectr   teardownr   QTimerrZ   closestartTimeout)optionsmsgboxlockrd   r/   r0   event_eatertimer_shutdowns           r$   	start_apprv   a   s   !+MNNNsOOO 	 !u !"*..T::F&2N
 
 
 	    X&&D)!=?? u*8X
 !)X X
 ?FX X X
 
 
F HV\\^^$$$$\\#\&& 	" 	"MOOO!^^F 1222V__FCJ$S//K"";///O##G$4555z~~i((4!'s!3!3&..v|<<<$$V,,,HSYY[[!!!	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	" 	"   ! ! !&2N
 
 
 	      !s9   BJ4 E J'J4 'J++J4 .J+/J4 4AK>=K>)4rL   r^   rO   r   qtpyr   r   r   anaconda_navigator.configr   r   r   r	   r
   r   anaconda_navigator.externalr   anaconda_navigator.staticr   anaconda_navigator.static.fontsr   anaconda_navigator.utilsr   r   r   anaconda_navigator.utils.logsr   r   "anaconda_navigator.utils.qthelpersr   "anaconda_navigator.widgets.dialogsr   )anaconda_navigator.widgets.dialogs.splashr   &anaconda_navigator.widgets.main_windowr   QApplication__annotations__r`   hasattrQtQCoreApplicationsetAttributer   r   r%   r-   r1   QObjectr3   rU   rv   rT   r&   r$   <module>r      so      				  



                   Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q 0 0 0 0 0 0 , , , , , , 6 6 6 6 6 6 ) ) ) ) ) ) + + + + + + , , , , , , E E E E E E E E ; ; ; ; ; ; D D D D D D B B B B B B = = = = = =    48F-.. Pwvy011 M,,VY-KLLLwvy344 P,,VY-NOOO2 2 2
       . . . . . . . ..1 1 1<! <! <! <! <!r&   