docs: update meta files for project workspace redesign session
This commit is contained in:
parent
5c657d0daa
commit
e2fda3f742
3 changed files with 33 additions and 0 deletions
10
CHANGELOG.md
10
CHANGELOG.md
|
|
@ -8,14 +8,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
## [Unreleased]
|
||||
|
||||
### Added
|
||||
- Emoji icon picker in SettingsTab: 24 project-relevant emoji in 8-column grid popup, replaces plain text icon input
|
||||
- Native directory picker for CWD fields: custom `pick_directory` Tauri command using `rfd` crate with `set_parent(&window)` for modal behavior on Linux; browse buttons added to Default CWD, existing project CWD, and Add Project path inputs in SettingsTab
|
||||
- `rfd = { version = "0.16", default-features = false, features = ["gtk3"] }` direct dependency for modal file dialogs (zero extra compile — already built transitively via tauri-plugin-dialog)
|
||||
- CSS relative units rule (`.claude/rules/18-relative-units.md`): enforces rem/em for layout CSS, px only for icons/borders/shadows
|
||||
|
||||
### Changed
|
||||
- ProjectBox layout: switched from flex to CSS grid (`grid-template-rows: auto 1fr auto`) — header (auto) | Claude session (fills remaining) | terminal (16rem fixed)
|
||||
- AgentPane prompt area: anchored to bottom (`justify-content: flex-end`) instead of vertical center, removed `max-width: 600px` constraint — uses full panel width
|
||||
- ProjectGrid.svelte CSS converted from px to rem: gap 0.25rem, padding 0.25rem, min-width 30rem
|
||||
- TerminalTabs.svelte CSS converted from px to rem: tab bar, tabs, close/add buttons, empty state
|
||||
|
||||
### Removed
|
||||
- Nerd Font codepoints for project icons — replaced with emoji (`📁` default) for cross-platform compatibility
|
||||
- Nerd Font `font-family` declarations from ProjectHeader and TerminalTabs
|
||||
- Stub `pick_directory` Tauri command (replaced by `tauri-plugin-dialog` frontend API)
|
||||
|
||||
### Fixed
|
||||
- Project icons showing "?" — Nerd Font codepoint `\uf120` not rendering without font installed; switched to emoji
|
||||
- Native directory picker not opening: added missing `"dialog:default"` permission to `v2/src-tauri/capabilities/default.json` — Tauri's IPC security layer silently blocked `invoke()` calls without this capability
|
||||
- Native directory picker not modal on Linux: replaced `@tauri-apps/plugin-dialog` `open()` with custom `pick_directory` Tauri command using `rfd::AsyncFileDialog::set_parent(&window)` — the plugin skips `set_parent` on Linux via `cfg(any(windows, target_os = "macos"))` gate
|
||||
- Native directory picker not dark-themed: set `GTK_THEME=Adwaita:dark` via `std::env::set_var` at Tauri startup to force dark theme on native GTK dialogs
|
||||
|
|
|
|||
1
TODO.md
1
TODO.md
|
|
@ -11,6 +11,7 @@
|
|||
|
||||
## Completed
|
||||
|
||||
- [x] **Project workspace layout redesign** -- CSS grid layout for ProjectBox (header|session|terminal), bottom-anchored AgentPane prompt, emoji icons replacing Nerd Font, px→rem conversions across 4 components. | Done: 2026-03-08
|
||||
- [x] **Native directory picker** -- Added tauri-plugin-dialog for native OS folder picker on CWD fields (Default CWD, project CWD, Add Project path). Removed stub pick_directory command. | Done: 2026-03-08
|
||||
- [x] **Fix sidebar drawer content-driven width** -- Root cause: leftover v2 grid layout on #app in app.css (`grid-template-columns: var(--sidebar-width) 1fr`) constrained .app-shell to 260px. Removed grid; JS $effect measurement now works correctly, all 4 tabs scale to content. | Done: 2026-03-08
|
||||
- [x] **CSS relative units rule** -- Added .claude/rules/18-relative-units.md enforcing rem/em for layout CSS. Converted GlobalTabBar.svelte + App.svelte sidebar styles from px to rem. | Done: 2026-03-08
|
||||
|
|
|
|||
|
|
@ -325,3 +325,25 @@ All editor themes map to the same `--ctp-*` CSS custom property names (26 vars).
|
|||
- [x] Fix: `std::env::set_var("GTK_THEME", "Adwaita:dark")` at start of `run()` in lib.rs — dark-themed dialog
|
||||
- [x] Added `rfd = { version = "0.16", default-features = false, features = ["gtk3"] }` as direct dep — MUST disable defaults to avoid gtk3+xdg-portal feature conflict
|
||||
- [x] Switched SettingsTab from `@tauri-apps/plugin-dialog` `open()` to `invoke<string | null>('pick_directory')`
|
||||
|
||||
### Session: 2026-03-08 — Project Workspace Layout Redesign + Icon Fix
|
||||
|
||||
#### Icon Fix
|
||||
- [x] Replaced Nerd Font codepoints (`\uf120`) with emoji (`📁` default) — Nerd Font not installed, showed "?"
|
||||
- [x] Added emoji picker grid (24 project-relevant emoji, 8-column popup) in SettingsTab instead of plain text input
|
||||
- [x] Removed `font-family: 'NerdFontsSymbols Nerd Font'` from ProjectHeader and TerminalTabs
|
||||
|
||||
#### ProjectBox Layout Redesign
|
||||
- [x] Switched ProjectBox from flex to CSS grid (`grid-template-rows: auto 1fr auto`) — header | session | terminal zones
|
||||
- [x] Terminal area: explicit `height: 16rem` instead of collapsing to content
|
||||
- [x] Session area: `min-height: 0` for proper flex child overflow
|
||||
|
||||
#### AgentPane Prompt Layout
|
||||
- [x] Prompt area anchored to bottom (`justify-content: flex-end`) instead of vertical center
|
||||
- [x] Removed `max-width: 600px` constraint on form and toolbar — uses full panel width
|
||||
- [x] Toolbar sits directly above textarea
|
||||
|
||||
#### CSS px → rem Conversions
|
||||
- [x] ProjectGrid.svelte: gap 4px → 0.25rem, padding 4px → 0.25rem, min-width 480px → 30rem
|
||||
- [x] TerminalTabs.svelte: tab bar, tabs, close/add buttons all converted to rem
|
||||
- [x] ProjectBox.svelte: min-width 480px → 30rem
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue