Conversation
|
The panels behind Manage — a server's applications, its connected clients, its units, its extensions — were a modal on top of a modal, so they were the least durable thing on the screen. Anything that closed an overlay closed them; one of the things that closes an overlay is a window asking to be raised; and enabling an application in the Session tab starts an application that does exactly that. The panel dismissed itself one second after being used, and the way back in was two dialogs. They are now a BSP tile like any other: `manage:<conn>:`. It splits next to whatever it manages, it survives focus going elsewhere, the URL hash and the tab registry restore it, and it parks in the dock as a card. The card is a placeholder rather than a live panel — a parked tile that kept its client watch would cost a catalog a second for a picture nobody is reading. The trailing colon in the assignment is load-bearing: parseTileAssignment splits on the first ":" after the prefix, so "manage:hound" parses as nothing at all, and a tile that fails to parse renders an empty pane. ConnectionControl (the nested overlay) goes away with its only caller, and RemotesOverlay loses the props that fed it. What it gains is `onManage`, so a shell with nowhere to put a tile shows no button. e2e: remote-panels now asserts pane content and a hash that survives a reload instead of a second dialog. Every Manage locator is tightened to /^Manage$/ — a parked manage card is a button whose name ends in the same word, and it sits under the modal backdrop unclickably. Co-Authored-By: Claude <noreply@anthropic.com>
|
🔗 Preview: https://blit-3568jp1xk-indent.vercel.app |
Coverage
|
|
Found 7 test failures on Blacksmith runners: Failures
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light.png)
The panels behind Manage — a server's applications, its connected clients, its units, its extensions — were a modal on top of a modal, so they were the least durable thing on the screen. Anything that closed an overlay closed them; one of the things that closes an overlay is a window asking to be raised; and enabling an application in the Session tab starts an application that does exactly that. The panel dismissed itself one second after being used, and the way back in was two dialogs.
They are now a BSP tile like any other:
manage:<conn>:. It splits next to whatever it manages, it survives focus going elsewhere, the URL hash and the tab registry restore it, and it parks in the dock as a card. The card is a placeholder rather than a live panel — a parked tile that kept its client watch would cost a catalog a second for a picture nobody is reading.The trailing colon in the assignment is load-bearing: parseTileAssignment splits on the first ":" after the prefix, so "manage:hound" parses as nothing at all, and a tile that fails to parse renders an empty pane.
ConnectionControl (the nested overlay) goes away with its only caller, and RemotesOverlay loses the props that fed it. What it gains is
onManage, so a shell with nowhere to put a tile shows no button.e2e: remote-panels now asserts pane content and a hash that survives a reload instead of a second dialog. Every Manage locator is tightened to /^Manage$/ — a parked manage card is a button whose name ends in the same word, and it sits under the modal backdrop unclickably.