+
    Ki  c                   s`    ^ RI Ht ^ RIHt ]! 4       t]! 4       t^ sR tR t ! R R]4      t	R# )i    )NotificationSource)	AsyncCallc                 sb    \         ^,          s \         ^8X  d   \        P                  4        R# R# )zsPut Lutris into the 'busy' state, which causes BUSY_STARTED to fire; LutrisWindow
will display a 'progress' cursor.N)_busy_countBUSY_STARTEDfire     5/usr/lib/python3.14/site-packages/lutris/util/busy.py
start_busyr   	   s'     1Ka r   c                 sb    \         ^,          s \         ^ 8X  d   \        P                  4        R# R# )zTakes Lutris out of the 'busy' state', which causes BUSY_STOPPED to fire. Note
that busy states can be nested or overlapped; business must be stopped as many times
as it is started.N)r   BUSY_STOPPEDr   r   r   r   	stop_busyr
      s'    
 1Ka r   c                   s6   a a ] tR t^t oRtV 3R ltRtVtV ;t# )BusyAsyncCallzThis is a version of AsyncCall that calls start_busy() and stop_busy(), which
will cause the LutrisWindow to show a progress cursor while the task runs.c                sR   <a V3R  lp\         SV `  ! W.VO5/ VB  \        4        R# )c                  s@   < \        4        S'       d   S! V / VB  R # R # )N)r
   )ZaZkwcallbacks   *,r   on_completionZ-BusyAsyncCall.__init__.<locals>.on_completion!   s    K!"r" r   N)Zsuper__init__r   )ZselfZfuncr   ZargsZkwargsr   	__class__s   &&f*, r   r   ZBusyAsyncCall.__init__    s&    	#
 	>t>v>r   r   )	Z__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__r   Z__static_attributes__Z__classdictcell__Z__classcell__)r   Z__classdict__s   @@r   r   r      s     R r   r   N)
Zlutris.gui.widgetsr    Zlutris.util.jobsr   r   r	   r   r   r
   r   r   r   r   <module>r      s6    1 &!#!#I r   