feat(app): add tooltips to sidebar new session/workspace buttons (#9652)

This commit is contained in:
Rahul A Mistry
2026-01-20 22:27:11 +05:30
committed by GitHub
parent 5f67e6fd12
commit 8639b0767a
2 changed files with 30 additions and 15 deletions

View File

@@ -34,7 +34,7 @@ export function DialogSelectFile() {
const view = createMemo(() => layout.view(sessionKey()))
const state = { cleanup: undefined as (() => void) | void, committed: false }
const [grouped, setGrouped] = createSignal(false)
const common = ["session.new", "session.previous", "session.next", "terminal.toggle", "review.toggle"]
const common = ["session.new", "workspace.new", "session.previous", "session.next", "terminal.toggle", "review.toggle"]
const limit = 5
const allowed = createMemo(() =>

View File

@@ -1998,6 +1998,17 @@ export default function Layout(props: ParentProps) {
navigate(`/${base64Encode(created.directory)}/session`)
}
command.register(() => [
{
id: "workspace.new",
title: "New workspace",
category: "Workspace",
keybind: "mod+shift+w",
disabled: !layout.sidebar.workspaces(project()?.worktree ?? "")(),
onSelect: createWorkspace,
},
])
const homedir = createMemo(() => sync.data.path.home)
return (
@@ -2123,17 +2134,19 @@ export default function Layout(props: ParentProps) {
fallback={
<>
<div class="py-4 px-3">
<Button
size="large"
icon="plus-small"
class="w-full"
onClick={() => {
navigate(`/${base64Encode(p.worktree)}/session`)
layout.mobileSidebar.hide()
}}
>
New session
</Button>
<TooltipKeybind title="New session" keybind={command.keybind("session.new")} placement="top">
<Button
size="large"
icon="plus-small"
class="w-full"
onClick={() => {
navigate(`/${base64Encode(p.worktree)}/session`)
layout.mobileSidebar.hide()
}}
>
New session
</Button>
</TooltipKeybind>
</div>
<div class="flex-1 min-h-0">
<LocalWorkspace project={p} mobile={sidebarProps.mobile} />
@@ -2143,9 +2156,11 @@ export default function Layout(props: ParentProps) {
>
<>
<div class="py-4 px-3">
<Button size="large" icon="plus-small" class="w-full" onClick={createWorkspace}>
New workspace
</Button>
<TooltipKeybind title="New workspace" keybind={command.keybind("workspace.new")} placement="top">
<Button size="large" icon="plus-small" class="w-full" onClick={createWorkspace}>
New workspace
</Button>
</TooltipKeybind>
</div>
<div class="relative flex-1 min-h-0">
<DragDropProvider