fix: grille CSS grid-row/column explicites pour 2/3/4 panneaux
CI / lint (push) Failing after 9s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Successful in 13s
Desktop Build / build-windows (push) Has been cancelled
Desktop Build / build-linux (push) Has been cancelled

Refonte complète du layout grid:
- _computePanePositions: positions explicites (row/col/span) selon n et layout
- _createPaneAt: grid-row/grid-column explicites sur chaque .pane-container
- _addAllResizeHandles: handles placés aux bonnes positions grid
- _rebuildResizeHandles: nettoie et recrée les handles après add/remove
- closePane: repositionne les panneaux restants + rebuild handles
- 3 panneaux horizontal: 2 en haut, 1 pleine largeur en bas
- 3 panneaux vertical: 1 pleine hauteur à gauche, 2 à droite
- 4 panneaux: grille 2×2

Fix aussi: _addPane avec positions explicites + rebuild handles
This commit is contained in:
2026-07-28 11:08:08 -04:00
parent 257e35198d
commit ffefe4eb16
2 changed files with 167 additions and 63 deletions
+4 -3
View File
@@ -44,8 +44,9 @@ class TestPaneManagerModuleStructure:
for method in ["splitRight", "splitDown", "closePane", "closeActivePane",
"closeOtherPanes", "isSplit", "getActiveContentArea",
"getActiveTabManager", "transferTab", "setActivePane",
"_buildGrid", "_createPane", "_addPane", "_collapseToSingle",
"_setupPaneDropZone", "_persist"]:
"_buildGrid", "_createPaneAt", "_addPane", "_collapseToSingle",
"_setupPaneDropZone", "_persist", "_computePanePositions",
"_rebuildResizeHandles"]:
assert method + "(" in self.content or method + " (" in self.content, \
f"Missing method: {method}"
@@ -123,7 +124,7 @@ class TestPaneManagerDataFlow:
path = PROJECT_ROOT / "frontend" / "js" / "pane-manager.js"
content = path.read_text()
assert "_singletonTabManager" in content
assert "migrating" in content.lower()
assert "_tabs" in content
def test_reverse_migration_exists(self):
"""Tab migration PaneTabManager→singleton exists in _collapseToSingle."""