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

[Desktop] Add support for system tray icons #81644

Open
3 tasks
proninyaroslav opened this issue May 2, 2021 · 9 comments
Open
3 tasks

[Desktop] Add support for system tray icons #81644

proninyaroslav opened this issue May 2, 2021 · 9 comments
Labels
a: desktop Running on desktop c: new feature Nothing broken; request for a new capability c: proposal A detailed proposal for a change to Flutter P3 Issues that are less important to the Flutter project team-linux Owned by the Linux platform team triaged-linux Triaged by the Linux platform team

Comments

@proninyaroslav
Copy link

Related to: google/flutter-desktop-embedding#595

Use case

The tray icon is an important part of many desktop applications that run in the background.

Proposal

This can be implemented as a official plugin.

Main features:

  • Position of the icon
  • Setting icon as monochromatic template image is needed on macOS so it can support dark mode
  • Allow text instead of the icon or in addition to the icon. I don't know if this is possible on Linux or Windows but macOS allows this.
@iapicca
Copy link
Contributor

iapicca commented May 2, 2021

@proninyaroslav
not a desktop expert, but aren't some of these features already available acording to this tweet

Hey @FlutterDev gang: what if I told you you can use any widget as an icon of your macOS app and even change it in runtime 🤯?
Here's a quick demo 🎬
⚠️ Next goal: animated icons from image sprites pic.twitter.com/3RgyyOQeXy

— Andrei Lesnitsky 💙 (@lesnitsky_dev) April 27, 2021

@proninyaroslav
Copy link
Author

@iapicca
This is part of the dock, but not the tray. Although on macOS apps can use the dock as a background work indicator, but:

  1. This is exclusively in macOS, other OS usually use the tray.
  2. The tray has more customization options.

@iapicca
Copy link
Contributor

iapicca commented May 2, 2021

This is part of the dock, but not the tray. Although on macOS apps can use the dock as a background work indicator, but:

  1. This is exclusively in macOS, other OS usually use the tray.
  2. The tray has more customization options.

@proninyaroslav oh... my bad

@stuartmorgan
Copy link
Contributor

For macOS the equivalent would be a menu extra. See discussion and screenshots in the issue referenced in the description.

@darshankawar darshankawar added in triage Presently being triaged by the triage team a: desktop Running on desktop passed first triage c: proposal A detailed proposal for a change to Flutter c: new feature Nothing broken; request for a new capability and removed in triage Presently being triaged by the triage team labels May 3, 2021
@gspencergoog gspencergoog added the P3 Issues that are less important to the Flutter project label May 6, 2021
@tawanda
Copy link

tawanda commented Aug 26, 2021

There is this https://pub.dev/packages/system_tray

@ggdream
Copy link

ggdream commented Oct 29, 2021

https://pub.dev/packages/system_tray

system_tray works, but it does not support important operations such as minimizing, opening, and exiting. His example references bitsdojo_window.

It is true that bitsdojo_window can satisfy the effect, but the shortcomings are also very obvious:

  • Code injection is very invasive, and the original built-in code should be manually modified.
  • Removed the default top bar, but in many cases it needs to be retained, which is not reasonable.

@lijy91
Copy link

lijy91 commented Dec 2, 2021

@ggdream
You can use tray_manager and tray_manager.

@ggdream

This comment was marked as off-topic.

@cbracken cbracken added fyi-windows For the attention of the Windows platform team team-linux Owned by the Linux platform team and removed team-desktop labels Jun 7, 2024
@flutter-triage-bot
Copy link

The triaged-desktop label is irrelevant if there is no team-desktop label or fyi-desktop label.

@jmagman jmagman added the triaged-linux Triaged by the Linux platform team label Jun 7, 2024
@loic-sharma loic-sharma added the triaged-windows Triaged by the Windows platform team label Jun 24, 2024
@flutter-triage-bot flutter-triage-bot bot removed fyi-windows For the attention of the Windows platform team triaged-windows Triaged by the Windows platform team labels Jun 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: desktop Running on desktop c: new feature Nothing broken; request for a new capability c: proposal A detailed proposal for a change to Flutter P3 Issues that are less important to the Flutter project team-linux Owned by the Linux platform team triaged-linux Triaged by the Linux platform team
Projects
None yet
Development

No branches or pull requests