Do

Docky has duplicate icons after opening application windows

Bug #317076 reported by Ding Zhou on 2009-01-14
34
This bug affects 4 people
Affects Status Importance Assigned to Milestone
Do
Low
Jason Smith
Nominated for 0.8 by Artem Orlov

Bug Description

The docky mode is amazing! I like it! Thanks for your great work!

I found a bug of Do 0.7.95.1.

When in the docky mode, The icons on dock have duplicated.
I have a Firefox icon at the left, when I click on it, Firefox opens, but on the right, the firefox icon appears.

Please see the attachment.

Related branches

Ding Zhou (tualatrix) wrote :
OffHand (offhand303) wrote :

Happens with a lot of applications but not all.

OffHand (offhand303) wrote :

Ubuntu 8.10

And what locale? This has to do with your applications identifying
themselves differently than what they're desktop file says their name is.
For instance firefox says its name is Firefox, but the desktop file says
Mozilla Firefox. Are you running custom builds or something?

--
--Alex Launi

OffHand (offhand303) wrote :

en_UK. Yes, I have some custom applications.

Alex Launi (alexlauni) wrote :

are the custom ones the ones misbehaving?

--
--Alex Launi

OffHand (offhand303) wrote :

Except amsn I would say yes. I don't know about the reporter's settings/applications though.

Ding Zhou (tualatrix) wrote :

My distribution is Gentoo, and I'm using th en_US locale.

Do you use the process name to identify the applications? So I think with the *.desktop file, you can use the "Exec" section.
For example, mozilla-firefox-3.0.desktop, the entry is:

[Desktop Entry]
Name=Mozilla Firefox
Comment=Web Browser
Exec=/usr/bin/firefox %U
Icon=firefox-icon
Terminal=false
Type=Application
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xm
l;text/mml;
Categories=Network;WebBrowser;

If you use the "Name", it is "Mozilla Firefox", but the "Exec" is "/usr/bin/firefox", you can get the value of "firefox".

No matter the user's locale is what, the Exec and the process name will always the name.

Of course, some python application will be "python", so it's hard to identify.

Jason Smith (jassmith) wrote :

This will improve with next release but will take some core changes.

Changed in do:
assignee: nobody → jassmith
importance: Undecided → High
milestone: none → 0.8.1
status: New → Confirmed
Miguel Branco (arlanthir) wrote :

I've noticed python apps (at least emesene) opening fine, I'll try to see why others doesn't.

OffHand (offhand303) wrote :

Maybe they have used something: http://davyd.livejournal.com/166352.html

Miguel Branco (arlanthir) wrote :

@ OffHand:

opening emesene and typing "killall emesene" outputs "emesene: no process killed"

Since it's python, I'll take a look at the code :) I hope I find a solution soon.

OffHand (offhand303) wrote :

Weird.... I just noticed that another custom python application I use does behave like it is supposed to but yet identifies as a generic "python" in the process list. You can get the source of that application here: http://methlab.le-vert.net/wiki/MethLabFromSubversion

Miguel Branco (arlanthir) wrote :

I was looking in the wrong place. It's not the code, it's the .desktop file.

I fixed my application by editing the "/usr/share/applications/app.desktop" and replacing "/urs/bin/app" with "app".
Can someone confirm this is the problem with their python applications that open a duplicate icon?

Miguel Branco (arlanthir) wrote :

Sorry for the double post.
Maybe this is the problem also with the other applications, looking at TualatriX's firefox.desktop file.

Can you test it too, please?

OffHand (offhand303) wrote :

Changing that did not work for me. This is the desktop file:

$ cat /home/xxxxx/Applications/nicotine+/files/nicotine.desktop

[Desktop Entry]
Encoding=UTF-8
Name=Nicotine-Plus
Comment=SoulSeek filesharing client
Exec=nicotine
Icon=nicotine-plus-32px.png
Terminal=false
Type=Application
Categories=Application;Network;
StartupNotify=true

Miguel Branco (arlanthir) wrote :

I'm sorry, installing nicotine from the repositories works, I can only test it further if you give me instructions on how to get a setup like yours (with files on your home folder).

OffHand (offhand303) wrote :

http://www.nicotine-plus.org/wiki/NicotineFromSubversion

You should have a the dependencies installed if you already installed N+ from the repositories. Thanks for your time!

Miguel Branco (arlanthir) wrote :

I can't seem to reproduce your problem!
This were the steps I took:

Compiled it from svn using the guide you mentioned.

Got the icon in the pixmaps dir using:
> sudo cp ~/nicotine+/files/nicotine-plus-32px.png /usr/share/pixmaps

Created a file called nicotine in my Desktop and wrote in there:

#!/bin/sh
# Launch nicotine
exec python ~/nicotine+/nicotine

Moved it:

> cd ~/Desktop
> sudo cp nicotine /usr/bin
> sudo chmod +x /usr/bin/nicotine

Dragged the .desktop file from ~/nicotine+/files/ to Docky.

Launched it, everything OK.

Please note that "nicotine" is a python file (the developers just didn't write the extension) so probably the nicotine file you have on /usr/bin is what's causing the problem! Also, you may want to change the exec line to

exec python /home/<you>/Applications/nicotine+/nicotine

OffHand (offhand303) wrote :

In the process of getting the exact same setup I got it to work. It was possibly a corrupt .desktop file. I had no Nicotine stuff in /usr/bin/ because the version from the repositories wasn't installed. The only thing that still isn't working as it is supposed to is aMSN... it is written in tcl/tk app which shows up as process name wish8.5. aMSN is installed from the repositories.

Miguel Branco (arlanthir) wrote :

Glad you fixed it!
I think that's something the aMSN developers need to fix themselves...

Wrapping it up, I think TualatriX should test his applications without the /usr/bin prefix.
As for Gnome-Do, I think they should at least fix that part (filtering out the prefix), as for now it's unclear what more problems shape this bug.

Patrick Ulbrich (pulb) wrote :

Got the same problem with tvbrowser (http://www.tvbrowser.org).

the desktop file looks like this:

[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=TV-Browser
Type=Application
Terminal=false
Name[de_DE]=TV-Browser
Exec=/home/pat/apps/tvbrowser/tvbrowser.sh
Icon=/home/pat/icons/tv.svg

but the actual process looks like this:

java -Xms16m -Xmx128m -Djava.library.path=/home/pat/apps/tvbrowser -Dpropertiesfile=linux.properties -jar tvbrowser.jar

Maybe parsing the whole process path may fix the problem? or maybe custom icons specified by the user?

Patrick Ulbrich (pulb) wrote :

added a screenshot.

Jason Smith (jassmith) wrote :

This is largely fixed in the next release. Matching is massively improved and should be less of an issue. I am downgrading the importance of this to low to reflect the improvements.

Changed in do:
importance: High → Low
nicky.7 (nickkkk7) wrote :

I'm using the last svn and i still have these issues:
- Synaptic when opened create a duplicate icons
- Prism webapps when opened create duplicate icon, a prism one (different from the launcher), and all the prism webapps are grouped tougether.
-If i add a pidgin contact to the dock and then i click on chat the created window is grouped with pidgin.
Thanks.
ps. if you want more testing i'm here!

I also still have this issue. Firefox works fine, but some applications don't. Openoffice and Songbird, for example. Also, when the new icon appears for these applications, they're a much lower resolution than the original icon. I wouldn't mind if they were a high resolution, but they look blurry, especially on mouse-over.

Jason Smith (jassmith) wrote :

Ok I will post a more detailed explaination here since it is clear that this bug will never be 100% solved. Window matching is a bit of voodo magic on linux since there is no framework or unified method of doing this. So do runs windows through a blender and tries to find a launcher on the other side. Sometimes this is easy, sometimes this is really really hard (see applications which launch through a myriad of shell scripts and then run in a single process for every instance).

Now for a rundown of applications status (for common apps and reported apps)

Prism Apps - Prism is an interesting problem because it runs in a browser which is in essense the same application for every web app. Additionally it all runs in one process for all your prism apps. This means to docky, it sees these windows as belonging to a logical group and libwnck will also see them belonging to the same group.

Firefox - Works in bzr

OpenOffice.org - Oddly open office is another application that runs in a single process no matter how many instances you start of it. Therefor the same problem as prism crops up. We can get a 60% solution by matching the open office window to the first launcher, however all office apps you open after that will be grouped under that launcher until you close them all. So if you open word, you will get it linked to the word launcher, and then if you open presentation it too will be under the word icon. OpenOffice is a bitch...

Synaptic/Songbird - Works for me in bzr, if it wont work for you please give me the exec string as you see it in ps -ef and its .desktop file so I can analyze why.

If there is no way to do it automatically i think the user should have the
option to do it manually.
For example deciding that openoffice/pidgin/prism app should stay separate
or dragging a duplicate icon on its launcher to teach the program the right
behaviour.
Could it be a "solution"?

2009/3/13 Jason Smith <email address hidden>

> Ok I will post a more detailed explaination here since it is clear that
> this bug will never be 100% solved. Window matching is a bit of voodo
> magic on linux since there is no framework or unified method of doing
> this. So do runs windows through a blender and tries to find a launcher
> on the other side. Sometimes this is easy, sometimes this is really
> really hard (see applications which launch through a myriad of shell
> scripts and then run in a single process for every instance).
>
> Now for a rundown of applications status (for common apps and reported
> apps)
>
> Prism Apps - Prism is an interesting problem because it runs in a
> browser which is in essense the same application for every web app.
> Additionally it all runs in one process for all your prism apps. This
> means to docky, it sees these windows as belonging to a logical group
> and libwnck will also see them belonging to the same group.
>
> Firefox - Works in bzr
>
> OpenOffice.org - Oddly open office is another application that runs in a
> single process no matter how many instances you start of it. Therefor
> the same problem as prism crops up. We can get a 60% solution by
> matching the open office window to the first launcher, however all
> office apps you open after that will be grouped under that launcher
> until you close them all. So if you open word, you will get it linked
> to the word launcher, and then if you open presentation it too will be
> under the word icon. OpenOffice is a bitch...
>
> Synaptic/Songbird - Works for me in bzr, if it wont work for you please
> give me the exec string as you see it in ps -ef and its .desktop file so
> I can analyze why.
>
> --
> Docky has duplicate icons after opening application windows
> https://bugs.launchpad.net/bugs/317076
> You received this bug notification because you are a direct subscriber
> of the bug.
>

Wade Pedersen (wmpedersen) wrote :

I'm having this same problem with Flock. Although it doesn't bring up a Flock icon, but a generic web Browser icon.

thedaemon (thedaemonofid) wrote :

I have the problem with Blender. Anyone else?

Robert Dyer (psybers) wrote :

Docky 1 (the Do theme version of Docky) has reached the end of its maintenance period and is no longer being supported. Docky 2 (the stand-alone application) is a complete rewrite and thus may or may not be affected by this bug.

Please feel free to install Docky 2 (PPA: https://edge.launchpad.net/~docky-core/+archive/ppa or souce: http://do.davebsd.com/wiki/Installing_Docky) and see if your bug still occurs. If it does, please file the bug against lp:docky (not lp:do!).

Changed in do:
status: Confirmed → Won't Fix
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers