Skip to content
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

Improving app menu #234

Open
peske opened this issue Nov 15, 2019 · 16 comments
Open

Improving app menu #234

peske opened this issue Nov 15, 2019 · 16 comments
Assignees
Labels

Comments

@peske
Copy link
Collaborator

@peske peske commented Nov 15, 2019

While explaining the problem at #195 (comment) I've realized that it's better to open a new issue for some of inconsistencies related to profiles / menu. Even for me (app developer) the menu is quite confusing. To be more precise:

  • Selecting "New Tab" option opens new Powershell (default profile) tab. I'm pretty sure that regular user would expect a chance to select what the new tab should actually contain. So we should either rename this option to "Default Profile" or change the behavior so that it allows user to clarify what he actually wants.
  • Similarly, selecting "New Remote Tab" option opens "SSH Connection" dialog (which is wrongly named "SSH Info", thanks to myself). For such behavior menu option should be renamed to "SSH/Mosh Connect...", which much more precisely tells user what's behind.
  • "New Quick Tab" is again bad name. Much clearer would be "Quick Launch..."

If you ask me, the menu actually should contain the following options:

  • "Default Profile", which would open default profile (i.e. Powershell by default). Not sure if this option is too useful though.
  • "Select Profile...", which would open "Select Profile" dialog, the same one we now have under shortcut Ctrl+Alt+T. Alternative would be "Select Profile >", which would offer all saved profiles as submenu items, without need for opening additional dialog.
  • "Quick Launch...", which would open "Quick Launch" dialog.
  • "SSH/Mosh Connect...", which would open "SSH Connect" dialog.
  • "Recent Profiles >", which would open a submenu with recently opened profiles.

Such menu would be consistent with app behavior, as well with usual Windows menus, meaning it would have ellipsis (...) if the menu option requires additional input, arrow head (>) if it offers submenu, etc. We should also include mnemonics wherever it's applicable.

All the menu items would open a new tab. If the user wants new window, he should use shortcuts instead of menu.

@cjw296

This comment has been minimized.

Copy link
Collaborator

@cjw296 cjw296 commented Nov 15, 2019

massive 👍 from me!

@SEJeff

This comment has been minimized.

Copy link

@SEJeff SEJeff commented Nov 15, 2019

That sounds like a big improvement to me as well, but it would be nice if all of those had shortcuts. For other terminal emulators (such as gnome-terminal or xfce4-terminal) on Linux, Shift+Ctrl-t opens up a new tab. This is much nicer than Ctrl+Alt+T from an ergonomics standpoint for those of us with boring QWERTY keyboard layouts.

I'd probably just set the default profile to SSH/Mosh Connect and use whatever the default profile shortcut is as 99% of my time that's what I'd be going for. Just a suggestion however.

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 15, 2019

Actually, this change is rather trivial - mostly about changing text. The only bit challenging part is to implement "Recent Profiles >", but it also shouldn't take more than day or two.

@peske peske self-assigned this Nov 15, 2019
@felixse

This comment has been minimized.

Copy link
Collaborator

@felixse felixse commented Nov 16, 2019

I'm also not very happy with the current menu. I already posted some idea here: felixse#196 (comment)

It's pretty similar, but also includes the new window options. I thought about listing all profiles, but maybe only recents is better

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 16, 2019

@felixse, your suggestion there is much better than the current state. Personally, I don't like introducing additional menu level with "New Tab" and "New Window" root options, but it's only my opinion. It's true though that this way the menu will offer open in new window feature. Anyway, we should move forward with some change because we all agree that current app menu isn't good.

Meanwhile I'll create a new issue (#235) for one part of my suggestion here - "Recent >" menu item, because it's actually feature which requires some additional work.

@peske peske added the enhancement label Nov 16, 2019
@peske peske added this to To do in FluentTerminal via automation Nov 16, 2019
@peske peske moved this from To do to Backlog in FluentTerminal Nov 16, 2019
@mjs

This comment has been minimized.

Copy link
Collaborator

@mjs mjs commented Nov 22, 2019

Improving the menu sounds good to me, especially given the enthusiastic response from actual users.

Similarly, selecting "New Remote Tab" option opens "SSH Connection" dialog (which is wrongly named "SSH Info", thanks to myself). For such behavior menu option should be renamed to "SSH/Mosh Connect...", which much more precisely tells user what's behind.

"SSH/Mosh Connect" is a bit awkward. How about "Remote Connect"? (and rename the dialog title to match).

"New Quick Tab" is again bad name. Much clearer would be "Quick Launch..."

👍

"Default Profile", which would open default profile (i.e. Powershell by default). Not sure if this option is too useful though.

My 2c is to skip this and just have the default profile at the top of the Select Profile list. The default profile doesn't need to be treated so differently from the others. It's mainly the one that gets used for the first tab and for the new tab/window shortcuts.

"Select Profile...", which would open "Select Profile" dialog, the same one we now have under shortcut Ctrl+Alt+T. Alternative would be "Select Profile >", which would offer all saved profiles as submenu items, without need for opening additional dialog.

I think the submenu would be nicer.

All the menu items would open a new tab. If the user wants new window, he should use shortcuts instead of menu.

I don't think this is right. The "Open new terminals as" option should be honoured here.

@mjs

This comment has been minimized.

Copy link
Collaborator

@mjs mjs commented Nov 22, 2019

@SEJeff

That sounds like a big improvement to me as well, but it would be nice if all of those had shortcuts.

They already do right? Each profile can already have it's own custom shortcut and every command has a shortcut.

What am I missing?

For other terminal emulators (such as gnome-terminal or xfce4-terminal) on Linux, Shift+Ctrl-t opens up a new tab. This is much nicer than Ctrl+Alt+T from an ergonomics standpoint for those of us with boring QWERTY keyboard layouts.

These bindings are already configurable.

I'd probably just set the default profile to SSH/Mosh Connect and use whatever the default profile shortcut is as 99% of my time that's what I'd be going for. Just a suggestion however.

There's already shortcuts for SSH/Mosh Connect and Quick Launch now so just set them to what you like and you're away.

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 22, 2019

Regarding the structure of the menu, and actual menu item texts, probably end-users and stakeholders will make the final decision, so it isn't a question for me as a dev. Yet I want to provide my opinion as a user, not a dev.

@mjs
I mostly agree with you, except in the following:

"SSH/Mosh Connect" is a bit awkward. How about "Remote Connect"? (and rename the dialog title to match).

I prefer very clear names. Our current "SSH Info" dialog (to be renamed) provides only ssh and mosh connections and in my opinion, it should be named unambiguously. I've also changed my mind, and my new favorite is simply "SSH/Mosh..." Clear and simple.
"Remote Connect" is kinda vague and in a way misleading. Vague because it may be confused with (or at least also assume) things like rsh, nsh, etc. And it's maybe misleading because if an app has a "Remote Connect" menu option users may infer that all other options aren't remote (are local).

"Select Profile...", which would open "Select Profile" dialog, the same one we now have under shortcut Ctrl+Alt+T. Alternative would be "Select Profile >", which would offer all saved profiles as submenu items, without need for opening additional dialog.

I think the submenu would be nicer.

I also think that submenu would be nicer, but there's a problem with what to do if the user has a lot of profiles created (i.e. 100 or so). Such a possibility is mentioned in the original issue linked by Felix above.

Talking about "Select Profile" dialog, the question is do we actually need it anymore? I mean what's the benefit of having profiles in a drop-down list comparing to auto-complete of "Quick Launch", which contains both profiles and commands?

All the menu items would open a new tab. If the user wants new window, he should use shortcuts instead of menu.

I don't think this is right. The "Open new terminals as" option should be honoured here.

I don't understand the idea. Where to put "Open new terminals as" option? In the app settings? In the app menu? In in-between dialogs (i.e. in "Quick Launch" dialog)?

That sounds like a big improvement to me as well, but it would be nice if all of those had shortcuts.

They already do right? Each profile can already have it's own custom shortcut and every command has a shortcut.

I've understood that @SEJeff wanted to see the shortcuts in the menu, like mnemonics. Something like "Quick Launch... Ctrl+Shift+Q". It would be nice...

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 22, 2019

Since it looks that both @felixse and @mjs are kinda insisting on providing new tab / new window in the app menu, I want to explain why I think that it isn't needed:

Ability to use Powershell, CMD, SSH, Mosh and other shells, is the core feature of FT. This is why the app is made, and this is why people will download it. On the other side, ability to open new terminals in a new tab or new window is kinda added value, not core thing. The app menu should be made in such way that the core features are clear and easily reachable, not obscured with some cosmetic features. Especially since the user can always simply detach tab...

Actually, this was my original reason for creating this issue. Menu with "New Tab", "New Remote Tab", and "New Quick Tab" was very annoying for me. It looked as if we've made an app which produces different kinds of tabs, not an app which you can use to easily ssh remote server...

@cjw296

This comment has been minimized.

Copy link
Collaborator

@cjw296 cjw296 commented Nov 22, 2019

👍 for New Tab / New Window in the menus.
👍 for honouring the "Open new terminals as" option, assuming such a thing is already a config option.
👍 for including the shortcuts next to menu options, if it can be done unobtrusively (lots of apps do this, nice to help learn the shortcuts).
+0 for "Remote Connect" in favour of "SSH/Mosh", the generic name future proofs against other remote access options, but what would this do differently to "Quick Launch"? If this is just to bring up the "SSH Profile" UI with empty boxes, I'd be happy to exclude it completely ;-)

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 22, 2019

It looks to me that we all agree that having shortcuts displayed in the menu is a useful feature, so I've extracted it as a new issue: #240

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 22, 2019

@cjw296 Your comment isn't clear to me. Do you want New Tab / New Window in the menu? Do you prefer "Remote Connect" over "SSH/Mosh"?

Regarding keeping this menu option, no matter its name ("Remote Connect" or "SSH/Mosh"), I think that we should keep it for non advanced users. As I've mentioned in the original issue description above, Putty and other similar tools have similar rich GUI interface for SSH, so we should have it also. But as I've said, advanced users like yourself should simply completely ignore this option and use "Quick Launch" instead.

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 24, 2019

@mjs

All the menu items would open a new tab. If the user wants new window, he should use shortcuts instead of menu.

I don't think this is right. The "Open new terminals as" option should be honoured here.

I finally understand what you've ment by this. I wasn't aware that we have this option in settings. Since we have it - of course it makes sense to honor it. Actually I like this solution very much - it doesn't clutter the app menu, yet provides a user an option to configure the behavior.

I've isolated that as a separate issue: #242

@peske

This comment has been minimized.

Copy link
Collaborator Author

@peske peske commented Nov 25, 2019

We have some progress with this:

  • Keyboard shortcuts are now displayed next to the menu items;
  • All the menu items now honor existing "Open new terminals as" settings option.

Currently we have:

image

Remaining things to solve:

  • Menu item texts;
  • Should we also add "Select Profile.." (or "Select Profile >") option mentioned above.

Both are quite easy to add / change once we have the final decision about what we want. And we'll be able to close this issue then.

@mjs

This comment has been minimized.

Copy link
Collaborator

@mjs mjs commented Dec 6, 2019

@cjw296 any thoughts on the remaining items that @peske mentions above?

I think it would be nice to be access all the profiles from a submenu ("Select Profile >"). Feels more complete.

I'm also fine to just call this done 😉

@cjw296

This comment has been minimized.

Copy link
Collaborator

@cjw296 cjw296 commented Dec 8, 2019

I don't really have an opinion on this (shocking I know...), so whatever works best.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
FluentTerminal
  
Backlog
5 participants
You can’t perform that action at this time.