diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-04-10 15:36:44 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-04-10 15:36:44 +0200 |
| commit | 743efafbdea4bad87ab845472f0a8b063d4e4912 (patch) | |
| tree | e83a11ad68fb5f83fad8345fe35261b18384f427 /src/helpers/SubsurfaceTree.cpp | |
| parent | 3753f83f69597325ad0dc88dbc70e0e9a483e2d4 (diff) | |
finally fucking fixed #7
Diffstat (limited to 'src/helpers/SubsurfaceTree.cpp')
| -rw-r--r-- | src/helpers/SubsurfaceTree.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/helpers/SubsurfaceTree.cpp b/src/helpers/SubsurfaceTree.cpp index fa153fd0..d918979a 100644 --- a/src/helpers/SubsurfaceTree.cpp +++ b/src/helpers/SubsurfaceTree.cpp @@ -115,7 +115,7 @@ void Events::listener_newSubsurfaceNode(void* owner, void* data) { PNEWSUBSURFACE->pParent = pNode; PNEWSUBSURFACE->hyprListener_map.initCallback(&PSUBSURFACE->events.map, &Events::listener_mapSubsurface, PNEWSUBSURFACE, "Subsurface"); - PNEWSUBSURFACE->hyprListener_unmap.initCallback(&PSUBSURFACE->events.unmap, &Events::listener_unmapLayerSurface, PNEWSUBSURFACE, "Subsurface"); + PNEWSUBSURFACE->hyprListener_unmap.initCallback(&PSUBSURFACE->events.unmap, &Events::listener_unmapSubsurface, PNEWSUBSURFACE, "Subsurface"); PNEWSUBSURFACE->hyprListener_destroy.initCallback(&PSUBSURFACE->events.destroy, &Events::listener_destroySubsurface, PNEWSUBSURFACE, "Subsurface"); wlr_subsurface* existingWlrSubsurface; @@ -168,6 +168,9 @@ void Events::listener_commitSubsurface(void* owner, void* data) { void Events::listener_destroySubsurface(void* owner, void* data) { SSubsurface* subsurface = (SSubsurface*)owner; + if (subsurface->pChild) + listener_destroySubsurfaceNode(subsurface->pChild, nullptr); + Debug::log(LOG, "Subsurface %x destroyed", subsurface); subsurface->hyprListener_destroy.removeCallback(); |
