Skip to content

fix(mac): App hängt beim Start mit dem Menüleisten-Symbol #64

Closed

Description

@502Proxy

Die App hängt auf main beim Start und stürzt ab („lädt sich tot“).

Auf der CI hing aus demselben Grund der Test-Host: Die Probe ohne MenuBarExtra-Szene war grün, mit Szene hing sie (siehe #62).

Vermutete Ursache: MenuBarExtra(isInserted: $showsMenuBarItem) ist an @AppStorage im App-body gebunden. Schreibt SwiftUI beim Einfügen über die Bindung, wird der body neu ausgewertet, die Szene neu aufgebaut, und das endet in einer Endlosschleife.

Lösung: Die Szene wird nur noch per if showsMenuBarItem { MenuBarExtra … } eingeblendet, ohne isInserted-Bindung. Prüfung per CI-Probe, in der die Test-App die echte App ist (also ohne #63).


Generated by Claude Code

Activity

  1. added this to the 1.12 milestone on Oct 28, 2026
  2. added
    bugSomething does not work as intended
    on Oct 28, 2026
  3. 502Proxy commented on Oct 28, 2026

    @502Proxy
    OwnerAuthor

    Neuer Befund durch den Stack vom Mac (bt): Der Haupt-Thread läuft in einer SwiftUI-Update-Schleife um die Fenster-Toolbar (ToolbarModifier.TransformToolbar → ToolbarStorage.merge → AppKitWindowController.scenesDidChange), nicht in der Menüleiste.

    Die Menüleiste blockiert nur die CI (auch mit rein statischem Inhalt, probe/menu-bar-static). Das ist mit #63 erledigt.

    Fix in fix/launch-toolbar-loop:

    • Das Sitzungs-Banner steht über dem Inhalt statt im safeAreaInset(edge: .top) unter der Toolbar.
    • Es gibt nur noch einen .toolbar-Block, der Lerntimer ist dort mit drin.

    Der Fehler tritt vermutlich nur mit abgelaufener Stud.IP-Sitzung auf (Banner sichtbar), deshalb nicht auf der CI.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething does not work as intended

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions