Skip to content

Commit

Permalink
leave layers in use
Browse files Browse the repository at this point in the history
  • Loading branch information
Cisphyx committed Jun 3, 2024
1 parent 54ddc46 commit 6b6b4c6
Showing 1 changed file with 15 additions and 12 deletions.
27 changes: 15 additions & 12 deletions synapse/cortex.py
Original file line number Diff line number Diff line change
Expand Up @@ -4538,16 +4538,24 @@ async def _delViewWithLayer(self, viewiden, layriden, nexsitem, newparent=None):
if newparent is not None:
newview = self.views.get(newparent)

for cview in self.views.values():
if cview.parent is not None and cview.parent.iden == viewiden:
layrinuse = False
for view in self.viewsbylayer[layriden]:
if not view.isForkOf(viewiden):
layrinuse = True
continue

Check warning on line 4545 in synapse/cortex.py

View check run for this annotation

Codecov / codecov/patch

synapse/cortex.py#L4544-L4545

Added lines #L4544 - L4545 were not covered by tests

view.layers = [lyr for lyr in view.layers if lyr.iden != layriden]
await view.info.set('layers', [lyr.iden for lyr in view.layers])

if view.parent.iden == viewiden:
if newparent is None:
cview.parent = None
await cview.info.pop('parent')
view.parent = None
await view.info.pop('parent')

Check warning on line 4553 in synapse/cortex.py

View check run for this annotation

Codecov / codecov/patch

synapse/cortex.py#L4552-L4553

Added lines #L4552 - L4553 were not covered by tests
else:
cview.parent = newview
await cview.info.set('parent', newparent)
view.parent = newview
await view.info.set('parent', newparent)

if (layr := self.layers.get(layriden)) is not None:
if not layrinuse and (layr := self.layers.get(layriden)) is not None:
del self.layers[layriden]

for pdef in layr.layrinfo.get('pushs', {}).values():
Expand All @@ -4566,11 +4574,6 @@ async def _delViewWithLayer(self, viewiden, layriden, nexsitem, newparent=None):

layr.deloffs = nexsitem[0]

for cview in self.views.values():
if layr in cview.layers:
cview.layers.remove(layr)
await cview.info.set('layers', [lyr.iden for lyr in cview.layers])

async def delView(self, iden):
view = self.views.get(iden)
if view is None:
Expand Down

0 comments on commit 6b6b4c6

Please sign in to comment.