Support system tray icon of Air application

Hi All,
I developed a widget with flash builder 4 and I exported all the project in AIR application. Then, I packaged AIR application in .exe file for Windows, and dmg file for MAC. My application works correctly for both of OS.
When I launch application on OS Windows, an image on system tray (for my application a socceer ball) appears. On the other side, on OS MAC my icon appears, but after 3 or 4 seconds it disappears and it is replaced with an other icon (probably it's a default icon of mac for this kind of application?) ...
What can I do? Thanks in advance, regards
Gianni

I attached files reporting images of icon on system tray. I didn't set any option on app descriptor, I used SystemTrayIcon and DockIcon APIs.
Anyway I attach part of my application code ...
windowComplete event of WindowedApplication is handled by function preInit () ...
            private function onWindowActivate():void
                if (!this.windowActivateRequest)
                    this.dock();
            private function onInvoke( event:InvokeEvent ):void
                if( event.reason == InvokeEventReason.LOGIN )
                    //do background processing...
                    trace( "Running in background..." );
                    this.windowActivateRequest = false;
                    this.dock();                   
                else
                    trace("Running on screen");
                    this.windowActivateRequest = true;
                    if (this.stage != null)
                        this.stage.nativeWindow.activate();   
            public function dock(event:Event = null):void
                stage.nativeWindow.visible = false;
                var imgObj:BitmapAsset = new trayIcon() as BitmapAsset;
                var bitmampDataTmp:BitmapData = imgObj.bitmapData;
                var arrayTmp:Array = new Array();
                arrayTmp.push(bitmampDataTmp);
                NativeApplication.nativeApplication.icon.bitmaps = arrayTmp;
            public function undock(event:Event = null):void
                this.windowActivateRequest = true;
                stage.nativeWindow.visible = true;
                NativeApplication.nativeApplication.icon.bitmaps = [];
            private function preInit():void
                try
                    NativeApplication.nativeApplication.startAtLogin = true;
                catch ( e:Error )
                    trace( "Cannot set startAtLogin:" + e.message );
                NativeApplication.nativeApplication.addEventListener( InvokeEvent.INVOKE, onInvoke );
                if(NativeApplication.supportsDockIcon)
                    var dockIcon:DockIcon = NativeApplication.nativeApplication.icon as DockIcon;
                    NativeApplication.nativeApplication.addEventListener(InvokeEvent.INVOKE,undock);
                    dockIcon.menu = createIconMenu();
                }else{
                    if (NativeApplication.supportsSystemTrayIcon){
                        var sysTrayIcon:SystemTrayIcon = NativeApplication.nativeApplication.icon as SystemTrayIcon;
                        sysTrayIcon.tooltip = "Stopwatch";
                        sysTrayIcon.addEventListener(MouseEvent.CLICK,undock);
                        sysTrayIcon.menu = createIconMenu();   
            private function createIconMenu():NativeMenu
                var iconMenu:NativeMenu = new NativeMenu();
                var exitCommand: NativeMenuItem = iconMenu.addItem(new NativeMenuItem("Esci"));
                exitCommand.addEventListener(Event.SELECT, chiudi);
                return iconMenu;
trayIcon is name of .png which represent ball image ...  
I try to summarize ...In MAC OS DockIcon isn' t represented by ball image ...In Windows OS everything works.
I'm sorry for disturbing you but I hope that everything is clear.
Thanks

Similar Messages

  • AIR System Tray Icon - does it support notifications?

    I want to add a system tray icon when my application loads and have balloon notifications appear when something happens, i.e. the application is minimized and a new message has been received. Does AIR support this functionality?

    I want to add a system tray icon when my application loads and have balloon notifications appear when something happens, i.e. the application is minimized and a new message has been received. Does AIR support this functionality?

  • How to avoid orphaned system tray icon?

    I know how to create a system tray icon for my application using InstallSysTrayIcon().
    I also know how to remove it before the program terminates (calling RemoveSysTrayIcon()).
    But the program closes in an expected way, or through the Task Manager, for example, the icon isn't deleted, and the user could think that the application is still running. Moreover, when you re-launch the application, a second icon is shown.
    The Windows OS removes the orphaned icon when the mouse hovers over the tray.
    It seems that this is an OS issue, and I did some web searches: I found this describing a way to avoid this behaviour in a C# application, but I haven't been able to port this solution to a CVI application.
    Is there a way to do this with CVI 2009?
    Vix
    In claris non fit interpretatio
    Using LV 2013 SP1 on Win 7 64bit
    Using LV 8.2.1 on WinXP SP3
    Using CVI 2012 SP1 on Win 7 64bit, WinXP and WinXP Embedded
    Using CVI 6.0 on Win2k, WinXP and WinXP Embedded

    Hi Luca!
    Anyway if you're worried about program crashes your only option...
    Actually what I'm worried about is a little bit more complicated: my CVI application could be remotely closed by other applications running on the same or other PCs on the LAN. I should avoid the icon is left on the system tray while the application has been closed, giving a wrong information to the user...
    I've been using the task manager only to "simulate" a force close made by a different application.
    And sure, I must increase the error handling as much as I can to avoid application crash
    Vix
    In claris non fit interpretatio
    Using LV 2013 SP1 on Win 7 64bit
    Using LV 8.2.1 on WinXP SP3
    Using CVI 2012 SP1 on Win 7 64bit, WinXP and WinXP Embedded
    Using CVI 6.0 on Win2k, WinXP and WinXP Embedded

  • How to remove Application icon from system tray on uninstalling the application

    Hello Friends
                        Is there any way to remove a system tray icon when i unistalled the application?
    i am making a desktop application but i am facing a problem that during uninstallation of that application it remains on the system tray.So can any body guide me any event which fire on unistallaion of application so that i can remove the application manually using cllosing event.please help me out from this poblem i am totally confused.
    Thanks and Regards
       Vineet Osho

    I have same problem with you but I haven't find an answer for that. Did you have your answer for the problem?
    Thanks!

  • Dynadock V system tray icon has vanished

    I have had a Dynadock V since February, 2012. Recently, the system tray icon vanished. Because it's not there, I can't undock to take my laptop somewhere else. I have to shut down the laptop and then I figure it's safe to unplug the dynadock. I've searched for help on the Toshiba website, and all I get is the statement that the icon won't be present unless the computer is connected and a monitor is attached to the dynadock. Well, the computer IS connected and I'm right now watching the monitor connected via the dynadock. But no icon that lets me undock. The users manual clearly says not to disconnect the cable without undocking, and suggests clicking the "show hidden icons button." I've done that, and the icon is not there. Does anybody know what's going on and how to fix it?  Thanks in advance.
    Nancy
    Solved!
    Go to Solution.

    Solution. After messing around with this for way too many hours, I've found a fix. Maybe it can help someone else.
    In Windows Explorer, I found the application that puts the icon in the tray. In my case (Windows 7) it was located at C:/Program Files/TOSHIBA/Dynadock_II/TosDockApp.exe.  Double clicking that put the icon in the tray, but it would be gone the next time I rebooted.
    It needed to be in the Startup folder. I'm guessing that once upon a time it was there and got removed for some unknown reason. (a Windows update?) Right clicked on the application, clicked "Create Shortcut," clicked Yes to placing it on desktop. Then used the Start button, All Programs, and found Startup in the list. Right click, Open. Maneuevered the window so I could see the desktop simultaneously, and dragged the shortcut from the desktop to the list of files on the right side of the Startup window.
    This solution has survived one computer restart, so I'm hoping it will last.
    By the way, copying the application and pasting it in the startup folder didn't work. I had to make the shortcut.
    And Toshiba, if you're listening, I'm still ticked off. Someone in Customer Support should have been able to help me with this. Or it should have been on a troubleshooting page. I've been struggling to find a solution to this problem for months. It wasn't hard -- just not obvious to someone (me) who doesn't work with this software everyday.

  • Dynamic system tray icon tooltips?

    In AIR, can the system tray icon tooltip be dynamically
    generated?
    I want to dynamically display some data whenever the user
    hovers over system tray icon, but it doesn't appear I can do that
    with air.NativeApplication.nativeApplication.icon.tooltip ?
    for example, I tried to dynamically return the current
    date/time but it didn't work:
    air.NativeApplication.nativeApplication.icon.tooltip =
    function(){ return Date()};
    My other thought was to create my own custom "toolip" using
    NativeWindow when a user hovers over the systray (but would like to
    get it to work with
    air.NativeApplication.nativeApplication.icon.tooltip if
    possible)...any other suggestions/tips/thoughts?
    thanks

    I don't believe this is possible. A better strategy may be to
    change the tooltip when the state of your application changes such
    that the text should be updated (rather than in response to a user
    event). However, I don't think the tooltip display will change
    while it is already open.
    Using a native window wouldn't work in this scenario, either.
    The difficulty is still detecting when the mouse is hovering over
    the icon. It is also not possible to definitely locate the icon on
    the desktop, although you can guess using the usableBounds property
    of the Screen class.

  • Issue with System tray icon

    So, I am developing an application that utilizes a system tray icon.
    It's all pretty standard: when you click close, it hides the window and puts a system tray icon in the system tray, when you right click the tray icon, it gives you a menu with options to restore the window or to exit, and if you double left click the icon, it restores the window.
    Also, any time you restore the window, the system tray icon is removed.
    All that stuff works great, its just that instead of putting the image that I want as the icon, the icon is just blank - transparent - nothing. There is a space where it should be, but the image just isn't there.
    The image I'm using is a gif that measures 240 x 240 pixels, and has transparency.
    When the window is hidden, the program does this:
         try {
                    tray.add(trayIcon);
                } catch (AWTException e) {
                    System.err.println("TrayIcon could not be added.");
                }to add the icon to the tray.
    Here's my initialization code. It's in a method called initSysTray, which is called once in the window's constructor.
    if (SystemTray.isSupported()) {
                tray = SystemTray.getSystemTray();
                //image that will be used for System tray Icon
                ImageIcon image = new ImageIcon("Icon2.gif");
                //action listener for the exit menu option
                //that is part of the tray icon's pop-up menu
                //it ends the application
                ActionListener exitListener = new ActionListener() {
                    public void actionPerformed(ActionEvent e) {
                        System.out.println("Exiting...");
                        System.exit(0);
                //action listener for the restore menu option
                //that is part of the tray icon's pop-up menu
                //it unhides the window and removes the tray icon
                ActionListener unHideListener = new ActionListener() {
                    public void actionPerformed(ActionEvent e) {
                        System.out.println("Unhiding");
                        setVisible(true);
                        tray.remove(trayIcon);
                //Action Listener that recieves events from tray icon
                //basically if someone double clicks the tray icon
                //then the window is restored
                ActionListener actionListener = new ActionListener() {
                    public void actionPerformed(ActionEvent e) {
                        System.out.println("Unhiding");
                        setVisible(true);
                        tray.remove(trayIcon);
                //create the pop-up menu
                PopupMenu popup = new PopupMenu();
                //create the exit option
                MenuItem defaultItem = new MenuItem("Exit");
                defaultItem.addActionListener(exitListener);
                //create the restore option
                MenuItem unHideItem = new MenuItem("Restore");
                unHideItem.addActionListener(unHideListener);
                //add the options to the menu
                popup.add(unHideItem);
                popup.add(defaultItem);
                //create the tray icon
                trayIcon = new TrayIcon(image.getImage(), "Bluetooth Remote by D Law", popup);
                trayIcon.setImageAutoSize(true);
                trayIcon.addActionListener(actionListener);
            else{
                System.out.println("System Tray not supported");
            }So, any help with my dissapearing icon would be greatly appreciated.

    Hi, are you not suppose to catch possible exceptions thrown by the TrayIcon constructor? :
    //create the tray icon
                trayIcon = new TrayIcon(image.getImage(), "Bluetooth Remote by D Law", popup);Try surrounding this line of code with a try and catch block. Referring to the API
    documentation, there are 4 possible exceptions that can be thrown. Errors may
    be present there, and we need a way to identify it. :)

  • Can't mount Time Capsule on PC (white system tray icon no longer there)

    My new time capsule is working perfectly on my MacBookPro, however recently I tried to get it to work on my PC laptop. I easily got the wireless internet work on the PC, that's not a problem. I installed the airport utility on my PC and it was able to recognize it through the airport utility interface/configuring window where I could change settings, etc., just like I could on my Mac. There used to be (on my PC) this white icon in my system tray on the lower right of my screen. When I clicked on this I could type my password, as prompted, and mount to the time capsule, which I could now see in My Computer as a drive. I tested a few files by dragging them over into the drive, and it worked fine. Now, a week later the icon in the system tray has disappeared, and I can no longer see the time capsule on my PC in My Computer. I can still click on the airport utility icon in my programs and see/change settings in my time capsule from my PC, but cannot see nor access the drive from My Computer (or mount by clicking on this now missing icon). Anyone else know what I can do? Thanks in advance!

    I was just having this problem and figured out that the white system tray icon is the Airport Base Station Agent. It wasn't running for me for some reason, too, but I found it and started it back up again at C:\Program Files\AirPort\APAgent.exe.
    Here's an Apple Support article (it's a little old) I found that discusses drive mapping in windows with the Airport Base Station Agent: http://support.apple.com/kb/HT1331
    Hope this helps.

  • System tray Icon!!!

    Hi all,
    I have created an application. Now i want that application to be converted to an exe and i also want to post that into the system tray.
    I just need to have an icon in the destop and wen double cliked it has to reach the system tray. On right clicking on the system tray icon i will need a pop window and show certain funcyions like open,etc....
    kindly help me...
    Thanx for reading....

    To generate an executable you need to use an ahead-of-time Java compiler. Here's one: http://gcc.gnu.org/java/. Although that's for *nix you could check whether it's available in cygwin (I'm assuming you need this for Windows). There are some available for windows but I think they're all commercial (i.e., cost money).
    Keep in mind that by doing this you're losing platform independence.
    As for the system tray icon, can't help you there.

  • How do I get firefox 3.5 back? Firefox 4 can't find yahoo.mail URL. Using your suggestions has caused me to loose my system tray icons and printers from my computer altogether and my system restore will no longer work either.

    Firefox 4.0 cannot find the Yahoo mail URL. Working with the Verizon tech we were able to get Internet Explorer to finaly find the yahoo mail web site. But not luck with Firefox 4.0 .
    Since trying your suggestions to make firefox 4 find the Yahoo mail URL. I have noticed that all of my system tray icons except the Panda anti virus and volume control icons have disapeared. My system restore will not restore and printers are gone altogether. How do I get the old firefox and all i've lost back.
    Hector, [email protected]

    Still cannot fix it to get Yahoo e-mail. This what I get now from Ff3.5 now.
    Sorry, we can't find "http://us.mc1121.mail.yahoo.com/mc/welcome". Please check the spelling of the web address.
    From Ff4 it can't find the " URL proxy server" on it's server???
    Have tried most every solutions/suggestion I could find have my computer just keeps getting worse. Where do I find the 4 solutions you mention here to see if I have not already tried them? I don't see or know where to go to find these solutions??? Can anyone help me find the fix???
    E-mail add. [email protected]

  • Need to Lock down Keyboard Manager System Tray Icon

    I run 27 MacBooks at a Secondary School. I have them setup for Windows XP Pro (I'll be setting up the Mac OS over then next few weeks but this is a MS Windows School so lets start slow). Hoever I need to be able to disable the "Boot Mac OS" option on the Keyboard Manager. But still have access to Volume and Eject etc Keys.
    Solution: 1
    a .adm file so that I can contol what is avilable to students through Group Policy (disable reboot in Mac, Disable Boot Camp First time Run Help Screen)
    Solution 2
    A Keyboard driver that will make all the Keys work (and remote if possible) but has no System tray Icon
    Solution 3
    Hide the System tray icon (as say an option in the Boot Camp Control Panel which I can already disable through group policy) then all I need to kill is the anoying first time run help screen.
    The help screen is anoying because for each of the 800 student will probably only login into each laptop once each so that will come up every time, because I reimage every 3 months or so.
    The reboot in Mac OS would be no problem if it did not perminatly change to boot order and the Mac OS side boot change back is too complicated for most first time Mac users. The way I will be introducing the Mac OS is telling them about the hold the "option" key trick on boot. hence the dummys will get what they are expecting, and the smarties have the option without afecting the dummys.
    I relise this is a Devolopers thing but I can find no other way to inform them of the need. I dout I am the only System admin needing this.
    Thank You
    Message was edited by: Solus Venator

    Unfortunately no that did not help
    Using msconfig only stops the Keyboard Manager from running. I can do that simply be removing it from the registry with out the annoying msconfig messages. (good for testing though)
    I have also looked into the Hide tray Icon Path but that only tucks it behind a set of “<<”
    And the reboot function does Permanently Change the Boot Order. (Not the boot sector necessarily, The Boot Order) to change it back you need to login into the Mac OS and System Prefs Disk Boot Select the Boot Camp Part and Reboot …… Big Pain in neck.
    The Keyboard Manager icon does not have an eject option… If is needed for the Eject Key to work (and the Volume Mute, Up, Down, Brightness Up, Down. Note it is not Needed for the Play FF Rew Keys they work fine with the Fn Key)
    Here is the test
    With no icon showing, or an icon with no reboot option : Press The Eject Key if the CD Ejects Success, I also need Volume do not care about the others as much
    As Stated this is a Developer( Programmer) oversite and needs them to put in an option to remove the reboot option from the System tray Icon. Removal of the Icon would also be desirable
    Thank You

  • [Desktop] System Tray Icon: Add back Playback Controls

    I just downloaded the latest version of Spotify with the minimize Spotify to the system tray.  Thank you for that.  You guys are getting there in fufilling my feedback request to keep the system tray icon.  When Spotify minimizes to the tray, it runs in the backround and does not use up alot of CPU just like the Spotify minmize to taskbar option; however, you still need to work on putting the play, pause, next and previous controls back in the system tray icon.  I'm glad the tray icon is back.  It definately makes our computer perform better when we are listening to our Spotify tunes.  Congratulations!  Hope to see this request get put back in the Spotify system tray icon.  Thank you!

    I agree play/pause, next and previous are needed.In addition, option to minimize the program to tray by double-click would be very useful.

  • System Tray Icon Not Displaying - Depending on Launch Style

    Good Morning-
    I'm using the java.awt.SystemTray and TrayIcon classes from 1.6 to create a system tray that acts essentially as a temperature monitor. It's very little code. When I test it from Eclipse, it works great. When I double-click the .jar on my workstation, it works great. When I launch it with java -jar temp.jar, it works great. When I launch it with javaw -jar temp.jar, I get no tray icon, but javaw sits in memory doing something.
    When my users launch it with a .vbs that calls java -jar temp.jar and hides the resulting terminal window, they get no tray icon. When they call java -jar temp.jar, they get the tray icon... and the console window. When they call javaw -jar temp.jar, they get no tray icon. Any of these practices yields a java process sitting in memory.
    When my users double-click the .jar file, they're asked to chose what to open it with. If they chose Java's executable, it says it doesn't know what to do (it isn't called with -jar). Windows doesn't see their jar files as executables like on mine.
    So I have two issues. The result is the system tray icon won't display on users' computers without a window to accompany it. Any idea why? Is it potentially a bug?
    Some code:
    public class SysTrayController {
         // The actual icon that will be updated
         private TrayIcon          icon;
         // The last-set temperature
         private int                    temp;
         // The box that may or may not appear
         private AlertBox          box;
         // No Data received (yet?)
         public final static int NO_DATA = 0;
         // High temperature threshold.  TODO:  Make this user-configurable.
         private final static int     HIGH_TEMP = 80;
         // ... you guess
         private final static String DEFAULT_ICON =  "icons/default.png";
          * Initiate everything.  Grab the system tray, plop the icon in it, and
          * get the icon all set up and ready to go with the default image.
         public SysTrayController() {
              box = new AlertBox();
              SystemTray tray = SystemTray.getSystemTray();
              Image image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(DEFAULT_ICON));
              PopupMenu popup = new PopupMenu();
              MenuItem exit = new MenuItem("Exit");
              exit.addActionListener(new ActionListener() {
                   public void actionPerformed(ActionEvent e) {
                        System.exit(0);
              popup.add(exit);
              icon = new TrayIcon(image, "Temperature Monitor", popup);
              // On double-click, display the alert box
              icon.addMouseListener(new MouseAdapter() {
                   public void mouseClicked(MouseEvent e) {
                        if (e.getClickCount() >= 2) {
                             box.setVisible(true);
              try {
                   tray.add(icon);
              } catch (AWTException e) {
                   System.out.println(e);
          * Set the temperature.
          * Call setIcon() to set the icon to the right number, update the alert
          * box, and if it's time to, display the alert box.
         public void setTemp(int temp) {
              if (this.temp != temp) {
                   this.temp = temp;
                   setIcon(temp);
                   icon.setToolTip(temp + " degrees");
                   box.setAlertMessage("Temperature in the Server Room is at " + temp + " degrees!");
                   box.setIcon(icon.getImage());
                   if (temp > HIGH_TEMP) {
                        box.setVisible(true);
                        icon.displayMessage("Alert", "Temperature in the server room is at " + temp + " degrees!", TrayIcon.MessageType.WARNING);
                   } else if (temp != NO_DATA){
                        box.setVisible(false);
          * Figure out which icon to set the tray icon to, scale it down, and
          * set it.
         public void setIcon(int number) {
              Image image = null;
              if (number == NO_DATA) {
                   image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(DEFAULT_ICON));
              } else if (number >= 60 && number < 100 ) {
                   String iconString = "icons/temp";
                   iconString += number;
                   iconString += ".png";
                   try {
                        image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(iconString));
                   } catch (NullPointerException e) {
                        image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(DEFAULT_ICON));
              image = image.getScaledInstance(16, 16, Image.SCALE_SMOOTH);
              icon.setImage(image);
          * Give back the current temperature.
         public int getTemp() {
              return temp;
    }The main() that calls it looks like this:
         public static void main(String[] args) {
              SysTrayController controller = new SysTrayController();
              Thermometer temp = new Thermometer(HOSTNAME);
              while (true) {
                   controller.setTemp(temp.getTemp());
                   try {
                        if (controller.getTemp() == SysTrayController.NO_DATA) {
                             Thread.sleep(1000);
                        } else {
                             Thread.sleep(SLEEPTIME);
                   } catch (Exception e) {
                        System.out.println(e);
         }

    From the code above, this line actually worked for me:
    image = Toolkit.getDefaultToolkit().getImage(getClass().getResource(iconString));Just place the image inside the source folder and change the iconString thing...
    For example mine looked like this
    image = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/icon.gif"));

  • System Tray icon missing sometimes

    I have an HP printer 4100 series, Gateway computer, Vista.
    I've had two times when I booted up and the HP Printer system tray icon was not in the system tray.
    I will look at the Notification Area setup and one of the icons listed (under Past Items) is "Terminating Digital Imaging Monitor."
    However, I was still able to print normally.  If I reboot, the system tray icon will return.
    I've had the same printer/setup for over a year.  This never happened till today.  Normally the system tray icon will appear at startup.
    It may be one of Vista's quirks - I sometimes notice inconstent things about the system tray icons.
    Anyone know why this might happen?

    I am on the same os and having the same issue. I tried reloading java and found it did not help.
    Please advise.

  • How to create a kde panel system tray icon set?

    hi, i would like to perform a modification of oxygen style to obtain a system tray composed by icons only in grayscale or b/n tones.
    i tried editing the klipper icon, by desaturating all klipper.png in the various oxygen directories, and it works fine.
    but in this manner all the klipper's icons used by kde are in grayscale.
    now, if i change kmix icons state, also amarok's and other icons would change?
    is there any method to avoid this conflict?
    bye

    ozeta wrote:
    FrozenFox wrote:To do this without affecting the icons elsewhere in the system is probably impossible without editing the source code to the sys tray plasmoid/widget and adding in a color filter of some sort. If you don't know how to program this in, you're probably out of luck. Would be interested in someone else proving me wrong though.
    hi, i can't program the system tray it would be nice if there were someone that made a patch or something else. however i decolorize some icons (kmix, klipper and kmess) in a first try and this is the (not bad) result:
    http://i.imagehost.org/0045/snapshot16.png
    the thing is, kde HAS options for coloring icons in different places. Problem is that KDE does not use those - at least i never managed to make it work. It only worked if i set the colors globally
    i tried to use this tool: only Desktop Effects works, but it changes both desktop and panel icons....but not system tray icons!!!
    wow

Maybe you are looking for