@@ -340,14 +340,6 @@ def __init__(self, monitor_id: int = 0, **kwargs):
340340 child_revealed = True ,
341341 child = self .notch_box ,
342342 )
343-
344- if data .PANEL_THEME == "Notch" :
345- self .notch_revealer .connect (
346- "enter-notify-event" , self .on_notch_hover_area_enter
347- )
348- self .notch_revealer .connect (
349- "leave-notify-event" , self .on_notch_hover_area_leave
350- )
351343
352344 self .notch_revealer .set_size_request (- 1 , 1 )
353345
@@ -391,7 +383,25 @@ def __init__(self, monitor_id: int = 0, **kwargs):
391383 children = self .notch_children ,
392384 )
393385
394- self .add (self .notch_wrap )
386+ # Create top-level EventBox that wraps the entire notch for hover detection
387+ if data .PANEL_THEME == "Notch" :
388+ self .hover_eventbox = Gtk .EventBox (name = "notch-hover-eventbox" )
389+ self .hover_eventbox .add (self .notch_wrap )
390+ self .hover_eventbox .set_visible (True )
391+ # Set minimum size to ensure hover detection area is always available
392+ self .hover_eventbox .set_size_request (260 , 4 ) # Width matches compact size, min height for hover
393+ self .hover_eventbox .add_events (
394+ Gdk .EventMask .ENTER_NOTIFY_MASK | Gdk .EventMask .LEAVE_NOTIFY_MASK
395+ )
396+ self .hover_eventbox .connect (
397+ "enter-notify-event" , self .on_notch_hover_area_enter
398+ )
399+ self .hover_eventbox .connect (
400+ "leave-notify-event" , self .on_notch_hover_area_leave
401+ )
402+ self .add (self .hover_eventbox )
403+ else :
404+ self .add (self .notch_wrap )
395405 self .show_all ()
396406
397407 self .add_keybinding ("Escape" , lambda * _ : self .close_notch ())
0 commit comments