feat: close flyout when targeted session disappears
This commit is contained in:
@@ -1384,6 +1384,16 @@ function renderGrid(sessions) {
|
|||||||
var emptyState = $('empty-state');
|
var emptyState = $('empty-state');
|
||||||
var filterBar = $('filter-bar');
|
var filterBar = $('filter-bar');
|
||||||
|
|
||||||
|
// Close flyout if the targeted session no longer exists
|
||||||
|
if (_flyoutSessionKey) {
|
||||||
|
var flyoutStillExists = (sessions || []).some(function(s) {
|
||||||
|
return (s.sessionKey || s.name) === _flyoutSessionKey;
|
||||||
|
});
|
||||||
|
if (!flyoutStillExists) {
|
||||||
|
closeFlyoutMenu();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var visible = getVisibleSessions(sessions);
|
var visible = getVisibleSessions(sessions);
|
||||||
|
|
||||||
if (visible.length === 0) {
|
if (visible.length === 0) {
|
||||||
|
|||||||
@@ -3953,3 +3953,14 @@ def test_render_grid_has_add_sessions_affordance() -> None:
|
|||||||
assert "add-sessions" in fn_body.lower() or "openAddSessionsPanel" in fn_body, (
|
assert "add-sessions" in fn_body.lower() or "openAddSessionsPanel" in fn_body, (
|
||||||
"renderGrid must render an 'Add Sessions' affordance for user views"
|
"renderGrid must render an 'Add Sessions' affordance for user views"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
# ─── Task 12: Session death detection ────────────────────────────────────────
|
||||||
|
|
||||||
|
|
||||||
|
def test_render_grid_closes_stale_flyout() -> None:
|
||||||
|
"""renderGrid must close the flyout if the targeted session no longer exists."""
|
||||||
|
fn_body = _JS.split("function renderGrid")[1].split("\nfunction ")[0]
|
||||||
|
assert "_flyoutSessionKey" in fn_body or "closeFlyoutMenu" in fn_body, (
|
||||||
|
"renderGrid must check if the flyout's target session still exists and close if not"
|
||||||
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user