Commit Graph

7 Commits

Author SHA1 Message Date
Ryan Foster
423d3dfc9c frontend: Update parent logic for systray menu projector items
Adding some more cleanup with Qt Widget/Object parenting and manual
deletes.
2026-02-24 18:55:26 -05:00
Lordmau5
336261c868 frontend: Update parent logic, remove explicit delete calls
Not necessary anymore in Windows tests at least since the parent widget
(in this case OBSBasic) is taking care of cleaning up its children.
2026-02-24 18:55:26 -05:00
Lordmau5
c1f8cbb9d5 frontend: Fix unclean shutdown on Windows
This issue was brought back by a somewhat recent change to fix slow
shutdown times in Linux.

To paraphrase tfo from the OBS Discord:
"I think the issue is that all the tray actions are parented to
trayIcon, so when it's deleted, Qt auto deletes them as children, then
delete trayMenu on the next line accesses those dead actions."

We now create the tray menu first, then setting the parent of the
actions (show / hide, stop / start streaming, etc.) to the tray menu.
2026-02-24 18:55:26 -05:00
Hoshino Lina
2b53fe0e65 frontend: Fix QSystemTrayIcon and QMenu delete order
QSystemTrayIcon holds a non-owning pointer to the QMenu, so it needs to
be deleted first.

Fixes: #12948
2026-01-12 17:48:14 -05:00
Warchamp7
69ecfcd9f6 frontend: Reorganize Preview/Source context menu 2025-04-15 15:00:43 -07:00
PatTheMav
654ddcd409 frontend: Split Qt UI Widget implementations into single files per class 2025-01-08 17:33:13 +01:00
PatTheMav
9f887c76d3 frontend: Prepare Qt UI Widgets for splits 2025-01-08 17:33:13 +01:00