-
Notifications
You must be signed in to change notification settings - Fork 711
[gui] add Select All
option to terminal right click menu
#4211
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
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #4211 +/- ##
=======================================
Coverage 89.35% 89.35%
=======================================
Files 259 259
Lines 15721 15721
=======================================
Hits 14047 14047
Misses 1674 1674 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This is a nice initiative Lev, but it would be the first right-click menu. @vikorama's, I'd love your opinion in that regard. |
@ricab seems that this right-click menu is already there, at least on Mac: ![]() So, if it's only about adding the 'Select all' option, I can't think of arguments for or against it. @levkropp How did you come up with this idea? Would it improve any of your own workflows? As I user I normally just drag a cursor to select what I want. |
Ohh, my bad, sorry. I thought it was a new thing. |
This idea came from #4192 which suggests a GUI toolbar at the top of the screen as an accessibility enhancement for Multipass. It suggests options for Copy, Paste, and Select All among others Select All is a common option in right click menus for terminals. Above is the right click menu of the built in Terminal in Visual Studio Code as an example. Use cases would be for people who want to quickly select all information on their terminal screen with just 2 clicks, or those who have accessibility issues regarding the ability to click-and-drag So regardless of future implementation plans for #4192's toolbar itself, I think Select All being implemented is a valuable addition to our GUI terminal's right click menu. |
Thank you for sharing the original request Lev! Something to look into, as I heard about similar struggles from other users. This PR looks like a good step in the direction! |
Thanks @vikorama ! Could I bother you for an approval on this? |
It would also be interesting to add the |
macOS offers tabs everywhere, if it is feasible it would be useful to block those of the system and provide a universal one. |
@levkropp it's an honor. The Select all works like a charm, so I can approve this PR. One thing tho is that I realised I could not triple-click within a paragraph of text so that the whole paragraph gets selected. This is the expected behaviour in Mac's and Windows' terminals (Ubuntu too, right?). Is this easy to fix maybe in this PR? |
e912721
to
3f24346
Compare
Hey @vikorama , I wasn't able to reproduce this triple-click behavior on a KDE Konsole on Kubuntu 24.04 or on a Powershell Terminal on Windows 11 Pro. This may be a Mac-specific (Terminal.app) feature? It also seems that this is not a very straightforward feature to implement in our Flutter GUI as it stands (I attempted a quick solution by wrapping the Terminal in a GestureDetector and calling the function to select all text when a triple click is detected, but this does not work) and may even require changes to our fork of terminal plugin we are using. |
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.
Thanks @levkropp! LGTM then
4565fc7
to
3f24346
Compare
3f24346
to
deb9c30
Compare
This pull request introduces a new option to the right click menu in the terminal tab in the GUI, enabling users to select all text within the terminal buffer. The changes include the addition of a new
Intent
class, modifications to the context menu, and implementation of the logic for selecting all terminal text.New Feature: Select All Terminal Text
SelectAllTerminalTextIntent
class: Introduced a newIntent
class to handle the "Select All" functionality.SelectAllTerminalTextIntent
.terminalController
.