Skip to content

Feat/question panel multiline support#10

Merged
bizzkoot merged 10 commits intodevfrom
feat/question-panel-multiline-support
Jan 16, 2026
Merged

Feat/question panel multiline support#10
bizzkoot merged 10 commits intodevfrom
feat/question-panel-multiline-support

Conversation

@bizzkoot
Copy link
Owner

PR Description: AskQuestion Wizard Enhancements (Multi-line Support & Minimize Functionality)

🎯 Goal

Improve the Question Wizard UI to handle long, multi-line markdown content gracefully and provide better user control with a minimize/recall feature. This ensures that complex agent questions are readable and that users can manage the UI real estate effectively without losing progress.

✨ Key Features & Changes

1. Multi-line & Markdown Support

  • Markdown Rendering: Question text is now rendered as full markdown using renderMarkdown, allowing for formatted logs, code snippets, and lists within questions.
  • Improved Layout:
    • Added white-space: pre-wrap and word-wrap: break-word to preserve formatting.
    • Implemented max-height (90vh) with independent scrollable containers for the question text and options.
    • Added max-width (600px) and centering to the question text for optimal readability.
  • Responsive Design: Added dynamic max-height adjustments for mobile/tablet layouts to ensure the wizard remains usable on smaller screens.
  • Styling: Added custom scrollbar styling for a consistent CodeNomad look and feel across platforms.

2. Keyboard & Navigation Fixes

  • Auto-Scroll: Fixed keyboard navigation to automatically scroll child options into view when navigating via arrow keys.
  • Focus Management: Ensured proper focus handling when switching between questions or opening custom inputs.

3. Minimize & Recall Functionality

  • Minimize Button: Added a new [-] button in the header to hide the wizard temporarily.
  • Question Notification Banner: Created a new banner component (reusing the permission center design) that appears in the toolbar when questions are pending but the wizard is minimized.
  • Manual Control: Updated the auto-open logic in instance-shell2.tsx to respect user minimize actions while still ensuring questions from subagents are seen on initial arrival.

🛠 Technical Implementation Details

  • Component: AskQuestionWizard now accepts an onMinimize prop.
  • State: Introduced questionWizardMinimized state in instance-shell2.tsx.
  • Logic: Updated createEffect to auto-open only if !questionWizardMinimized().
  • Styles: Significant updates to askquestion-wizard.css for flexible container heights and button groups.

✅ Verification Results

Automated Tests

  • Type Check: pnpm run typecheck passed.
  • UI Build: pnpm run build:ui completed successfully.

Manual Testing Checklist

  • Multi-line: Trigger a question with 20+ lines of text; verify scrollbars and readability.
  • Markdown: Verify code blocks and bold text render correctly in question body.
  • Minimize: Minimize/Recall flow via the new toolbar banner (Message icon).
  • Mobile: Check layout on mobile screen sizes.
  • Navigation: Navigate 10+ options via keyboard; verify auto-scroll.

Branch: feat/question-panel-multiline-support
Base: origin/dev

- Fixed keyboard navigation (↑↓) not auto-scrolling to keep highlighted option visible
- Replaced unreliable refs array with querySelector using data-option-selected attribute
- Added createEffect for auto-scroll when switching tabs
- Matches proven pattern from unified-picker.tsx
- Updated AGENTS.md with communication requirements
- Minor package.json update
- Implement QuestionNotificationBanner to show pending question count
- Add minimize button to AskQuestionWizard header
- Integrate minimize state management in instance-shell2
- Update auto-open logic to respect user minimize choice while preserving subagent workflow
- Add responsive styles for new wizard header buttons
@bizzkoot bizzkoot merged commit 21d3b74 into dev Jan 16, 2026
@bizzkoot bizzkoot deleted the feat/question-panel-multiline-support branch February 8, 2026 13:27
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

Comments