Skip to content

fix: maintain single-row compose toolbar with expandable more menu - #686

Open
dcoffin88 wants to merge 1 commit into
maathimself:mainfrom
dcoffin88:fix-richtoolbar-maintain-single-row
Open

dcoffin88 wants to merge 1 commit into
maathimself:mainfrom
dcoffin88:fix-richtoolbar-maintain-single-row

Conversation

@dcoffin88

Copy link
Copy Markdown
Contributor

Summary

Restores a compact, single-row compose toolbar by moving additional controls into an expandable More (+) menu, matching the existing mobile menu behavior.

Changes

  • Moved AI Assist and HTML source editing into an expandable More menu on desktop.
  • Right-aligned submenu icons on desktop so they appear directly beneath the cursor position when expanded.
  • Added a code comment instructing future contributors to place additional toolbar buttons inside the expandable submenu to preserve the single-row layout.
  • Unified toolbar behavior across desktop and mobile layouts.

Testing

Tested on my dev environment.


Contributor License Agreement

By submitting this pull request I confirm that:

  • I have read and agree to the Contributor License Agreement.
  • My contribution is my own original work (or I have identified any
    third-party material and confirmed it is compatible with the CLA).
  • I have the right to submit this contribution under the terms of the CLA.

@dcoffin88
dcoffin88 force-pushed the fix-richtoolbar-maintain-single-row branch 2 times, most recently from 40c7446 to fc5d2a7 Compare October 25, 2026 22:07
@dcoffin88
dcoffin88 force-pushed the fix-richtoolbar-maintain-single-row branch from fc5d2a7 to 5284c77 Compare October 26, 2026 11:35

@maathimself maathimself left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

I tested this merged with current main, in Chromium, Firefox and WebKit. In main's default 540 px composer with AI on and a signature, AI and </> wrap to a second row; with this PR the toolbar stays on one row at 100% and 130% font size, and the + menu, AI Assist and </> all work. The + approach is fine. Two things before it can merge:

  1. #577's tests. Merged with current main, 13 tests in ComposeModal.render.test.js fail: the Reply with AI and Write draft tests press the AI button directly, and it is now behind +. They need the same "press More first" step you added to aiApply and aiLength. Please merge main into the branch so CI runs them.
  2. The table picker on a phone. This adds the table button to the phone toolbar, and openTable keeps the picker on screen by assuming it is 200 px wide. It is wider than that, so on a 360 px phone at 130% font size the 4×4 option runs off the right edge. Please clamp it with its real width, for example by measuring the picker once it renders, or by right-aligning it to the button when it would overflow.

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.

2 participants