fix(editor): collapse the workspace split when the last buffer closes (T-459)
EditorRegistry.close() guarded its active-changed emit on `_activeId != null`, so closing the LAST buffer (active clears to null) emitted only editor.closed — never the active-changed(id:null) the editor extension listens for to call closeEditor(). editorOpen stayed true and the top split sat orphaned over the Claude pane. Always emit active-changed when the active buffer is removed, including the cleared-to-null case; the slot renderer already collapses correctly once editorOpen flips false. The existing extension test fabricated the null active-changed event, so it passed despite the registry never emitting it — that gap is why the bug shipped. Add a registry test that drives the real close() path, plus a slot_host widget test asserting the split (drag handle) drops out and the primary pane fills the column. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -25,6 +25,10 @@ heading, and (b) bumping `pubspec.yaml` `version:` in the same commit.
|
||||
- **Default window opens larger (1600×900) on Linux.** 720p was short enough
|
||||
that the welcome screen's version/theme footer overlapped the tips card;
|
||||
the taller default clears it, matching the macOS default. (T-477)
|
||||
- **Editor split collapses when the last buffer closes.** Closing the final
|
||||
editor buffer left the top split orphaned over the Claude pane; the daemon
|
||||
now emits the buffer-cleared event it was suppressing, so the split drops
|
||||
out and the primary pane fills the column. (T-459)
|
||||
|
||||
## [2.8.0] — 2026-06-19
|
||||
|
||||
|
||||
Reference in New Issue
Block a user