-
Notifications
You must be signed in to change notification settings - Fork 2.6k
feat ui/ux: overflow button in header actions #3060
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
|
I'll happily endorse this, but here's my suggestion, and where I was thinking of going with this when I caught a spare moment:
Final version could look like: All of these are elective, happy to hear your thoughts. |
Thanks for the feedback good ideas. I will yeet.
This is the only one I would very strongly push back on -- there are standard patterns for menus/pages in VS Code and everyone expects navigation at the top right. This also lets them be present on all screens. This pattern is too strong and we can't change I think. But we can add, in addition to top links, a quick links section below, however I would prefer to reserve this for a different task. |
|
Maybe we should add some telemetry for the button clicks before making a decision here? (Just one data point, but I hit the new chat button all the time) |
|
How about we get this out in the next release and then use it to inform this change / track the impact? #3108 |
I actually was thinking we keep the New Task, but remove the identical function button near it in the Task Header (X) so that the task header has a clean one-function title area for expand/collapse. I may be wrong but I believe they are duplicate functions and difference is the top one is persistent on all pages (better, easier to remember, etc.) and the one in task header is redundant. Dual-function accordion row is a little funky for mental burden and the chevron is on the left , where on other items it is on the right. So we can also move the chevron to the right to match other accordions on chat page if remove the redundant x there. |
Great to see the data. Time on page would let us segment out users that spend, say more than 3 seconds on the tab. If time isn't tracked then we could take one interaction per page and segment out users who did not interact, or scroll, etc. (Some way to use your existing data to essentially measure bounce rate). Based on that data and intuition I would keep Settings, Plus, MCP as the three that are always persistent, and the rest in the overflow. We could make it responsive eg. from showing all icons on wide to only overflow icon on super narrow but I prefer overflow more than 3 icons for better clarity. |
* add markdown copy * add changeset * fmt --------- Co-authored-by: Wesley Smith <[email protected]>
|
Hey @dlab-anton, Would it make sense to change the buttons currently shown based on the usage data? |
|
@dlab-anton I take it back! yeah lets do this. Thanks @MuriloFP for correcting me on this. I should have never closed it. Hasty me. |
0b48f76 to
f161c7d
Compare
Move less frequently used actions into the VS Code overflow menu: - Keep visible: New Task, Prompts, Settings - Move to overflow: MCP Servers, History, Open in Editor, Account
… Settings to overflow
…ions - History button moved from navigation@3 to navigation@2 - Marketplace button moved from navigation@2 to navigation@3 - Updated in both view/title and editor/title sections
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR declutters the Roo Code view header by moving less-used actions into the VS Code overflow menu and refining group assignments for primary actions.
- Adjusted
contributes.menusinpackage.jsonfor bothview/titleandeditor/titlecontexts. - Removed
groupproperties from secondary actions so they appear under the overflow (...) menu. - Ensured primary actions (
New Task,Prompts,Settings) remain in the main header with correctnavigation@group numbers.
Comments suppressed due to low confidence (1)
src/package.json:260
- Settings in the
editor/titleblock has nogroup. If it should remain a primary action, re-add"group": "navigation@3"; otherwise, confirm it belongs in the overflow.
"command": "roo-cline.settingsButtonClicked",
- Remove navigation group from historyButtonClicked to move it to overflow - Add navigation@3 to settingsButtonClicked to keep it in primary header - Remove navigation group from marketplaceButtonClicked to move it to overflow This ensures only New Task and Settings remain in the primary header as intended.
daniel-lxs
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @dlab-anton!
LGTM




Context
Overview:
This PR cleans up the Roo Code view header by moving less frequently used actions into the standard VS Code overflow menu (
...). This provides a less cluttered primary header focusing on core actions like 'New Task', 'Prompts', and 'Settings'.Before
After
Drop-down (note no styles, icons, etc. this is standard vs code overflow)
Pros:
Cons:
Maybe frustrating if someone uses something in the overflow frequently. The one I'm least confident is open in editor if someone has this in their workflow to click it every time or something (I don't know).
Problem:
The Roo Code view header previously displayed all action buttons directly (New Task, Prompts, MCP Servers, History, Open in Editor, Settings, Help). This leads to a cluttered UI, mental burden, especially in narrower view layouts. It also allows easier dev in the future as can easily add a new page without affecting layout.
Solution:
Leveraged the standard VS Code menu contribution mechanism (
contributes.menus) to control item visibility. By modifying thegroupproperty for specific actions within theview/titleandeditor/titlecontexts inpackage.json, we can signal to VS Code which items are primary (navigation@<number>) and which are secondary (nogroupassigned). VS Code automatically places these secondary items into the built-in overflow menu (...).Changes Made:
Roo-Code/package.json:contributes.menus["view/title"]:group: "navigation@1"forroo-cline.plusButtonClicked.group: "navigation@2"forroo-cline.promptsButtonClicked.grouptonavigation@3forroo-cline.settingsButtonClicked.groupproperty entirely forroo-cline.mcpButtonClicked,roo-cline.historyButtonClicked,roo-cline.popoutButtonClicked, androo-cline.helpButtonClicked.contributes.menus["editor/title"]for consistency when the view is popped out.Important
Improves Roo Code view header by moving less used actions to VS Code overflow menu, focusing on core actions.
package.json:contributes.menus["view/title"]andcontributes.menus["editor/title"]:group: "navigation@1"forroo-cline.plusButtonClicked.group: "navigation@2"forroo-cline.promptsButtonClicked.grouptonavigation@3forroo-cline.settingsButtonClicked.groupforroo-cline.mcpButtonClicked,roo-cline.historyButtonClicked,roo-cline.popoutButtonClicked,roo-cline.helpButtonClicked.This description was created by
for eb2008e. You can customize this summary. It will automatically update as commits are pushed.