Skip to content

Reuse ChatComposer in request_user_input overlay#9892

Merged
aibrahim-oai merged 6 commits intomainfrom
rdi/request-user-input-composer
Jan 27, 2026
Merged

Reuse ChatComposer in request_user_input overlay#9892
aibrahim-oai merged 6 commits intomainfrom
rdi/request-user-input-composer

Conversation

@aibrahim-oai
Copy link
Collaborator

@aibrahim-oai aibrahim-oai commented Jan 26, 2026

Reuse the shared chat composer for notes and freeform answers in request_user_input.

  • Build the overlay composer with ChatComposerConfig::plain_text.
  • Wire paste-burst flushing + menu surface sizing through the bottom pane.

@aibrahim-oai
Copy link
Collaborator Author

@codex review this

Copy link
Contributor

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3989b975ab

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Base automatically changed from rdi/composer-config-surface to main January 26, 2026 23:16
Add in-code docs that explain the composer reuse approach and
paste-burst routing.

- Document paste-burst hooks on BottomPaneView and the view-first flush
checks.
- Clarify request_user_input layout choices (notes sizing and footer
override).
@aibrahim-oai aibrahim-oai force-pushed the rdi/request-user-input-composer branch from 623c88e to d4a73fe Compare January 26, 2026 23:35
let answer = self.current_answer_mut()?;
if !has_options {
return Some(&mut answer.notes);
fn save_current_draft(&mut self) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Large pastes can be lost when switching questions.

  • save_current_draft() captures current_text() but not pending paste payloads: codex-rs/tui/src/bottom_pane/request_user_input/mod.rs:167
  • Restoring uses set_text_content(...), which clears pending_pastes: codex-rs/tui/src/bottom_pane/chat_composer.rs:652
  • Final submission reads answer_state.draft.text: codex-rs/tui/src/bottom_pane/request_user_input/mod.rs:316
  • Suggestion: use current_text_with_pending() (codex-rs/tui/src/bottom_pane/chat_composer.rs:620) or expose a “flush pending pastes into text” helper before saving drafts.

@aibrahim-oai aibrahim-oai merged commit 394b967 into main Jan 27, 2026
30 of 32 checks passed
@aibrahim-oai aibrahim-oai deleted the rdi/request-user-input-composer branch January 27, 2026 01:21
@github-actions github-actions bot locked and limited conversation to collaborators Jan 27, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants