Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use "system_indicator" in the manisfet of a Chrome Packaged App?

I'm trying to create a Chrome package App with an icon in the system menu bar as explain here : https://docs.google.com/document/d/1QhhfR33Y28Yqnnoa_Sl3fnZK_mKtwt4dZe6kNyJ_MjU/edit ,

The Google Hangout App can implement this feature (it's not exactly the same behavior) but I don't find any good documentation to do the same.

In the manifest page of Google Packaged App, we can see the field "system_indicator". Is it what I'm looking for ? When I try to set this field to an url of an icon, Chrome return me this error :

'system_indicator' requires Google Chrome dev channel or newer, but this is the beta channel.

I've also found this old page from the chromium project : http://www.chromium.org/developers/design-documents/extensions/proposed-changes/apis-under-development/system-indicator-api

So my question is simple : can I build this feature for my app ? And if yes, how ?

Thank you for your help ! :-)

like image 519
Guillaume Wuip Avatar asked Nov 30 '13 22:11

Guillaume Wuip


2 Answers

The system_indicator was an experimental API partly introduced in the dev channel, but was later removed, as the Chrome/Chromium team deemed it too costly to maintain across all platforms. The entire history of this API is available at issue 142450.

In other words, as for now, there is no API for a system tray icon.

like image 197
Denilson Sá Maia Avatar answered Oct 11 '22 00:10

Denilson Sá Maia


The hangouts app uses a "panel" type window to achieve its behaviour, see Abraham's answer on How to build an chrome extension like Google Hangouts. Essentially, when you open a window, add type="panel" parameter:

chrome.windows.create({ url: 'https://mobile.twitter.com/', type: 'panel' });

Regarding the error you mentioned, this is because you are using the Beta Chrome build, and it has realised that the feature is not available in this version, and is advising you that you need a dev channel or trunk release. Find out more about Chrome release channels here: http://www.chromium.org/getting-involved/dev-channel

like image 30
Chris Alexander Avatar answered Oct 11 '22 01:10

Chris Alexander