Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

[Windows] Application::Quit posts WM_QUIT before destroying windows

Offen
#57 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
72/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
cpp

Rechercherichtung

Start in src/platform/windows/application_windows.cpp and trace Application::Quit() through the window teardown and message-loop handling. Check the behavior in a Flutter app, including a close handler that intercepts the system close button. Done means the windows and Flutter engine are destroyed while messages are still pumped, before WM_QUIT is posted, and the app exits promptly.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug

On Windows, Application::Quit() ends in PostQuitMessage() (src/platform/windows/application_windows.cpp) without destroying the application's windows first.

window_manager had the same pattern in destroy(), and there it made apps take several seconds to exit, or stop responding, since Flutter 3.24. The window and the Flutter engine were torn down after the message loop had already stopped.

Expected: destroy the windows (so the Flutter view controller shuts down its engine while messages are still pumped), then post WM_QUIT. Needs checking in a Flutter app, including with a close handler that intercepts the system close button.

Background:

  • leanflutter/window_manager#478: destroy() takes several seconds (also #452)
  • leanflutter/window_manager#590: a PR that destroys the window before quitting the message loop
Vorherrschende Sprache
C++
Sterne
34
Forks
7
Ø Merge
3 T. 1 Std.
Gemergte PRs (30 T.)
1

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

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 libnativeapi/nativeapi

Alle Issues in libnativeapi/nativeapi

Ähnliche Issues

Weitere Issues zu C++

Neue Issues direkt in Ihr Postfach

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