Skip to content

feat: Text Size Setting (S / M / L / XL)#11

Open
robbyczgw-cla wants to merge 1 commit intoibelick:mainfrom
robbyczgw-cla:feat/text-size
Open

feat: Text Size Setting (S / M / L / XL)#11
robbyczgw-cla wants to merge 1 commit intoibelick:mainfrom
robbyczgw-cla:feat/text-size

Conversation

@robbyczgw-cla
Copy link
Contributor

Summary

Adds an adjustable text size setting for chat messages. Small accessibility win.

Sizes

Setting Class Use case
S text-sm Compact, more content visible
M text-base Default (matches current behavior)
L text-lg Easier reading
XL text-xl Accessibility, large displays

Changes

File Lines What
src/hooks/use-chat-settings.ts +10 TextSize type + textSizeClasses map
src/screens/chat/components/settings-dialog.tsx +31 Size picker (S/M/L/XL buttons) in Chat section
src/screens/chat/components/message-item.tsx +2 Apply text size class to MessageContent

Total: ~43 lines changed across 3 files

Details

  • 🔤 Four compact buttons (S / M / L / XL) in Settings → Chat
  • 💾 Persisted in Zustand store (localStorage, survives refresh)
  • 🎯 Applied to both user and assistant messages
  • ♿ Accessibility improvement for users who need larger text
  • 🔄 Default is M (text-base) — zero change for existing users
  • No new dependencies

Happy to adjust anything! 🙏

@robbyczgw-cla
Copy link
Contributor Author

Rebased on latest main to align with the monorepo structure. Ready for review! 🙌

samgibson-bot pushed a commit to samgibson-bot/gold-dashboard that referenced this pull request Feb 7, 2026
## Phase 1: Fork Setup & Security
- Fork ibelick/webclaw as gold-dashboard
- Remove apps/landing, rebrand to "Gold Dashboard"
- Add missing clsx dependency
- Merge community PRs: ibelick#11 Text Size, ibelick#13 Context Window, ibelick#10 Export, ibelick#9 Search
- Security: Delete paths.ts (filesystem leak)
- Security: Add 30s timeout + WebSocket connection reuse in gateway
- Security: Sanitize all API errors via server/errors.ts
- Security: 100KB message limit in send.ts
- Security: Move sessions DELETE to request body (CSRF fix)
- Security: Block javascript: protocol in markdown links
- Pin nitro-nightly to 3.0.1-20260206-171553-bc737c0c

## Phase 2: Admin Pages
- Add admin layout route with sidebar navigation
- Add admin link to chat sidebar
- Implement 7 admin pages with API routes:
  - /admin/status: Agent status, tokens, sessions
  - /admin/tokens: Usage stats, cost breakdown
  - /admin/logs: Filterable log viewer with auto-refresh
  - /admin/cron: Job management with CRUD operations
  - /admin/config: JSON config editor
  - /admin/browser: Browser control panel
  - /admin/missions: Idea file viewer

## Phase 3: Deployment
- Multi-stage Dockerfile (node:22-alpine)
- docker-compose.override.example.yml
- deploy.sh script

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Add adjustable text size for chat messages:
- Four sizes: S (text-sm), M (text-base), L (text-lg), XL (text-xl)
- Picker in Settings → Chat section
- Applied to all message content (user and assistant)
- Persisted via Zustand store (localStorage)
- Default: M (text-base, matches current behavior)

Changes:
- src/hooks/use-chat-settings.ts: add TextSize type + textSizeClasses map
- src/screens/chat/components/settings-dialog.tsx: add size picker buttons
- src/screens/chat/components/message-item.tsx: apply text size class

No new dependencies.
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