+
    KiV	  c                   sB    ^ RI Ht R t ! R R]P                  4      tR# )i    )Gtkc                s    ^ pRpV  FN  pV! V4      pV'       d
   V^,           pVf   Vf   RpM
V! V4      RJpVP                  V4       V'       g   KL  TpKP  	  V'       d   V! V4      f   VP                  R4       V# )zThis sets the visibility on a set of widgets, like menu items. You provide a function
that indicates if an item is visible, or None for separators that are visible based on
their neighbors. Returns the count of visible widgets that are not separators.NF)Zset_visible)ZwidgetsZvisible_predicatevisible_countZprevious_visible_widgetwZvisibles   &&    G/usr/lib/python3.14/site-packages/lutris/gui/widgets/contextual_menu.pyupdate_action_widget_visibilityr      s     M"#A&)A-M?&.+,CDDP	g7&'#   #45L#M#U++E2    c                   s>   a a ] tR t^t oV 3R ltR tR tRtVtV ;t	# )ContextualMenuc                s0   < \         SV `  4        Wn        R # )N)Zsuper__init__main_entries)selfr   	__class__s   &&r   r   ZContextualMenu.__init__    s    (r   c                s   Vw  r#pVR8X  d)   \         P                  ! 4       pV P                  V4       V# \         P                  ! W#R7      pVP	                  RV4       VP                  4       pW'n        V P                  V4       V# )zAdd a menu item to the current menu

Params:
    entry (tuple): tuple containing name, label and callback

Returns:
    Gtk.MenuItem
Z-)namelabelZactivate)r    SeparatorMenuItemZappendZActionZconnectZcreate_menu_item	action_id)r	   entryr   r   ZcallbackZ	separatorZactionZ	menu_items   &&      r   add_menuitemZContextualMenu.add_menuitem$   sw     !&XC<--/IKK	"3z8,++-	"Ir   c                sT  a V P                  4        F  pV P                  V4       K  	  V P                   F  pV P                  V4       K  	  V P	                  4        VP                  4       oV3R  lp\        V P                  4       V4      pV^ 8  d   V P                  V4       R# R# )c                 s   < \        V \        P                  4      '       d   R # SP                  V P                  R4      # )NT)Z
isinstancer    r   Zgetr   )r   	displayeds   &r   
is_visibleZ(ContextualMenu.popup.<locals>.is_visibleF   s.    !S2233==d33r   N)Zget_childrenZremover   r   Zshow_allZget_displayed_entriesr   Zpopup_at_pointer)r	   ZeventZgame_actionsZitemr   r   r   r   s   &&&    @r   popupZContextualMenu.popup;   s    %%'DKK ( &&Ee$ ' 	 668		4 88I8I8KZX1!!%( r   )r   )
Z__name__Z
__module__Z__qualname__Z__firstlineno__r   r   r   Z__static_attributes__Z__classdictcell__Z__classcell__)r
   Z__classdict__s   @@r   r   r      s     ).) )r   r   N)Zgi.repositoryr    r   ZMenur   ) r   r   <module>r      s    60)SXX 0)r   