Open
Conversation
Closes jupyterlab#328 Add the ability to delete chats from both the side panel toolbar and the file browser context menu. The delete action shows a confirmation dialog before removing the .chat file via ContentsManager. Changes: - Add deleteChat command ID to token.ts - Add delete toolbar button with trash icon and warn dialog to ChatSection - Register deleteChat command in extension plugin using contents.delete() - Wire deleteChat callback into MultiChatPanel creation - Add context menu entry for .chat files in file browser
Contributor
Contributor
Author
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.
Closes #328
This adds a way to delete chats directly from the side panel (via a trash icon in the section toolbar) and from the file browser context menu.
When you click the trash icon, a confirmation dialog pops up before anything gets deleted. The actual deletion goes through
contents.delete(), and the existingfileChangedhandler already takes care of refreshing the chat list and cleaning up the side panel section — so no extra cleanup logic was needed.I followed the same patterns already used by the rename feature: optional callback passed through
MultiChatPanel→ChatSection, guarded with anif (options.deleteChat)check, and usingDialog.warnButtonfor the confirmation (standard JupyterLab approach for destructive actions).What changed:
token.ts— addeddeleteChatcommand IDmultichat-panel.tsx— delete button with confirmation dialog, disposal on successindex.ts— command registration + callback wiringcommands.json— context menu entry for.chatfilesTesting:
.chatfile in the file browser → "Delete chat" option works