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

Add options to MacOS menu bar menus #74

Open
nicknlsn opened this issue Sep 9, 2023 · 4 comments
Open

Add options to MacOS menu bar menus #74

nicknlsn opened this issue Sep 9, 2023 · 4 comments
Labels
wishlist Low priority nice to have features

Comments

@nicknlsn
Copy link

nicknlsn commented Sep 9, 2023

Feature request: it would be nice to have things like server settings and layout accessible from menu options.

@qu1ck
Copy link
Member

qu1ck commented Sep 9, 2023

You probably mean the system menubar that only mac has.
I agree that it would be nice but it's a very small benefit for a disproportionate amount of work, I'll leave this as a wishlist item.

In case anyone wants to implement this you would need to add menu items in macos.rs, add handlers for them in main.rs that would send a custom event to frontend, add handlers in frontend that would trigger corresponding actions.

@qu1ck qu1ck added the wishlist Low priority nice to have features label Sep 9, 2023
@qu1ck qu1ck changed the title Add options to menu bar menus Add options to MacOS menu bar menus Sep 9, 2023
@Dukobpa3
Copy link
Contributor

Dukobpa3 commented Jan 7, 2024

I can try to do it but let's discuss list of options in this menu, their grouping etc...

@qu1ck
Copy link
Member

qu1ck commented Jan 11, 2024

This is what end goal looks like for me, not everything has to be implemented at once:

TrguiNG menu

Create torrent...
Toggle theme
Toggle font size ?
Change layout
---------
Server settings
Application settings
---------
About
Close window
Quit

Torrents menu

Basically same as context menu
image

Window menu

list of current open tabs
---------
Connect submenu -> list of unopened configured servers
---------
current items (minimize, zoom, close)

It's been a while since I used MacOS so if the above is breaking any conventions it can be rearranged but from I recall there were plenty of apps that basically did whatever they wanted in menus.

Note that a lot of menu items would only work when the window is open even though the menu is still there when it isn't. So they would probably need to be disabled/hidden when window is not open. Keeping frontend and backend synchronized, updating menus and patching through the event calls will not be just a couple lines of code.

@Algwyn
Copy link

Algwyn commented Jan 20, 2024

Native system menu bar items would be nice, but indeed not critical ...
In term of menu structure, I would suggest the following:

trguiNG menu

Limit to app level actions. It would match the actions linked to these icons:
image

  • About
    ---------
  • Settings
    ---------
  • Toggle theme
  • Toggle font size
    ---------
  • Hide TrguiNG
  • Quit

Servers menu

  • Connect submenu -> list of unopened configured servers
  • Server settings -> settings of active tab server
  • Turn alternative bandwidth mode
  • Disconnect -> list of connected servers (or simpler, disconnect current tab)
  • Add server

Torrents menu

Options in context menu would be great, but maybe too detailed. The top left icons actions would probably be enough and simpler to implement:
image

  • Add torrent file
  • Add magnet link
  • ---------
  • Other actions from context menu
  • Start torrent
  • Pause torrent
  • Remove torrent
  • Queue sub-menu (Move to top, up, down, bottom)
  • Move torrent
  • Tags
  • Priority sub-menu

View menu

Actions from the Toggle button

  • Change layout
  • Toggle filters
  • Toggle details

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wishlist Low priority nice to have features
Projects
None yet
Development

No branches or pull requests

4 participants