Skip to content

Issue 148: add horizontal tab context menu actions - #225

Merged
lawrencecchen merged 6 commits into
mainfrom
issue-148-tab-context-menu
Feb 21, 2026
Merged

lawrencecchen merged 6 commits into
mainfrom
issue-148-tab-context-menu

Conversation

@lawrencecchen

@lawrencecchen lawrencecchen commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Testing

  • cd vendor/bonsplit && swift test ✅
  • xcodebuild -project GhosttyTabs.xcodeproj -scheme cmux -configuration Debug -destination 'platform=macOS' build ✅
  • xcodebuild -project GhosttyTabs.xcodeproj -scheme cmux-unit -configuration Debug -destination 'platform=macOS' test ❌ fails due to pre-existing missing symbol UpdateChannelSettings in cmuxTests/CmuxWebViewKeyEquivalentTests.swift (unrelated to this change).

Notes

@vercel

vercel Bot commented Feb 21, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cmux Ready Ready Preview, Comment Feb 21, 2026 4:20am

@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit 31aceb3.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@lawrencecchen
lawrencecchen force-pushed the issue-148-tab-context-menu branch from 31aceb3 to d9b7511 Compare February 21, 2026 02:46
@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Diff Heatmap

⏳ Preview screenshots are being captured...

Workspace and dev browser links will appear here once the preview environment is ready.


Generated by manaflow preview system

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 31aceb3e36

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread Sources/TabManager.swift Outdated
Comment on lines +495 to +496
let targetIndex = min(anchorIndex + 1, max(0, tabs.count - 1))
_ = reorderWorkspace(tabId: tabId, toIndex: targetIndex)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Correct insertion index when placing workspace to anchor right

moveWorkspace(_:toRightOf:) derives targetIndex from the pre-move anchorIndex and feeds it directly to reorderWorkspace. When the new workspace currently sits before the anchor (which happens with the default afterCurrent placement if a different tab is selected), removing it shifts the anchor left, so inserting at anchorIndex + 1 lands one slot too far right. In that state, the new "to Right" actions place the tab after the wrong workspace.

Useful? React with 👍 / 👎.

Comment thread Sources/TabManager.swift Outdated

@discardableResult
func addWorkspace(toRightOf anchorTabId: UUID) -> Workspace {
let newWorkspace = addWorkspace()

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Use anchor tab context for new workspace working directory

addWorkspace(toRightOf:) creates the workspace via plain addWorkspace(), which picks its working directory from selectedTabId. If a user right-clicks a non-selected workspace, the new tab is inserted next to the clicked workspace but inherits CWD from the active workspace instead, so "New Terminal to Right" (and browser creation via this path) can open in the wrong project directory.

Useful? React with 👍 / 👎.

@lawrencecchen lawrencecchen reopened this Feb 21, 2026
@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Diff Heatmap

⏳ Preview screenshots are being captured...

Workspace and dev browser links will appear here once the preview environment is ready.


Generated by manaflow preview system

@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit 3516b15.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@lawrencecchen lawrencecchen changed the title Add tab context menu actions for issue 148 Issue 148: add horizontal tab context menu actions Feb 21, 2026
@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit 8017fa9.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit d7912f1.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit 6a7ac03.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor
Older manaflow preview screenshots (latest comment is below)

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit e776e02.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@lawrencecchen

Copy link
Copy Markdown
Contributor Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🎉

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@lawrencecchen
lawrencecchen force-pushed the issue-148-tab-context-menu branch from e776e02 to 279b8b9 Compare February 21, 2026 04:18
@cmux-agent

cmux-agent Bot commented Feb 21, 2026 •

Copy link
Copy Markdown
Contributor

Preview Videos and Screenshots

Open Workspace (1 hr expiry) · Open Dev Browser (1 hr expiry) · Open Diff Heatmap

Failed to capture screenshots for commit 279b8b9.

Claude Code native binary not found at /root/.bun/bin/claude. Please ensure Claude Code is installed via native installer or specify a valid path with options.pathToClaudeCodeExecutable.


Generated by manaflow preview system

@lawrencecchen
lawrencecchen merged commit daa54f9 into main Feb 21, 2026
5 checks passed
@lawrencecchen
lawrencecchen deleted the issue-148-tab-context-menu branch February 21, 2026 04:27
bn-l pushed a commit to bn-l/cmux that referenced this pull request Apr 3, 2026
…text-menu

Issue 148: add horizontal tab context menu actions

This branch was successfully deployed

1 active deployment
Preview — 279b8b91 Deployed Feb 21, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant