menu: with `menu_list = true`, left-clicking an application does nothing (GTK 4.18)

Offen Anfängerfreundlich
#577 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

  • #579 von @borisi1 — ohne Merge geschlossen

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
82/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
cpp
Bereich
desktop, frontend

Rechercherichtung

Beginne in src/panel/widgets/menu/item.cpp und verfolge, wie der Listenmodus list_item in Gtk::Button platziert und den Linksklick-GestureClick verbindet. Reproduziere dies mit [panel] → menu_list = true unter GTK 4.18.6 und bestätige anschließend, dass ein Linksklick auf eine Anwendung sie startet und der Rastermodus weiterhin funktioniert.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

With the menu widget in list mode (menu_list = true), left-clicking an application entry doesn't launch it. Grid mode is not affected.

In list mode, WfMenuItem puts its content box (list_item) inside a Gtk::Button and attaches the left-click GestureClick to that inner box (src/panel/widgets/menu/item.cpp). With GTK 4.18 the button claims the primary click itself, so the gesture on its child never fires and on_click() isn't called.

Steps to reproduce:

  1. In wf-shell.ini, [panel] → menu_list = true, restart wf-panel.
  2. Open the menu, left-click any application.
  3. Nothing is launched.

Environment: wf-shell master f317d07, GTK 4.18.6 (Debian 13). Other GTK versions not tested; older GTK may have let the click through to the child.

Vorherrschende Sprache
C++
Sterne
182
Forks
57
Ø Merge
1 T. 8 Std.
Gemergte PRs (30 T.)
8

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus WayfireWM/wf-shell

Alle Issues in WayfireWM/wf-shell

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.