Repository navigation
feat(app): align the desktop shell with a navigation rail - #435
Conversation
Put the icon rail outside one shared panel, let each page own its sidebar, and keep the macOS traffic lights and toggles on one titlebar line.
|
React Doctor found no new issues. 🎉 Reviewed by React Doctor for commit |
Move the sidebar match helper out of the component module, and point e2e at the sidebar New chat link and New task button.
commit: |
审查阻塞(head
|
Escape dismisses a tooltip without a pointer leave, so hover must enter again. The sidebar toggle now forwards trigger props and uses the mobile open state below the sheet breakpoint.
审查与独立验证记录:通过
审查:只改 UI 和 Electron window chrome,不涉及 IPC、信任边界、持久化或契约。 独立验证 在 reviewer 自己的 worktree 中检出该 head, 浏览器测试: Web,1280px
Web,700px
Desktop,macOS,1200px
Desktop,700px 窗口:rail 隐藏,只剩一个开关; 缺口(不阻塞)
证据处理:Plugins 页面会展示操作者本机安装的 Pi 包,截图未附,录像中对应的几秒已剪掉。 结论:通过,按 head guard 合并。若 head 或 base 发生变化,从 CI 重新开始。#421 改了相同的文件,本 PR 合并后需要在那边解决冲突。 web-1280-shell.webmweb-narrow-sheet.webmdesktop-shell.webmdesktop-narrow.webm |
|
已合并:3e27258c7db84e24b214bb81b64fe8bd431dd388(squash,head guard |












Requirement
Desktop shell should match the agreed Codex-like layout: icon rail outside one shared panel, page-owned sidebars, and titlebar controls aligned with the macOS traffic lights.
Expected behavior
Changes and risks
staticData.pageSidebar.apps/desktop/src/shared/macos-window-chrome.tsand is required on the macOSPlatformvariant.packages/uicomponents are not edited.Verification
app-shell,app-rail,page-sidebar,packages-page,shell-columns.pnpm --filter @getpie/app exec tsc --noEmitand@getpie/desktoptypecheck passed.