Eclipse not detected by DockBarX at all, manual override not possible

Bug #501820 reported by Hendy Irawan
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
DockbarX
Fix Released
Undecided
Unassigned

Bug Description

Eclipse 3.5.1 (from http://eclipse.org) and related applications:

* Aptana (http://aptana.com)
* SpringSource ToolSuite (http://springsource.com)

is not detected at all by DockBarX :

* The taskbar button isn't visible at all
* Pinning the launcher to the taskbar, then changing its resource name is not possible: The Eclipse app's resource name is not listed in the dropdown

Revision history for this message
cuc (cuc+) wrote :

same problem with songbird and tvbrowser :(

not pinnable, not visible at all in dockbarx

Revision history for this message
Matias Särs (msevens) wrote :

And no error messages when runned in window (dockbarx.py run-in-window)?

Revision history for this message
Matias Särs (msevens) wrote :

Sorry for not responding on this bug any sooner. Eclipse 3.5.1 shows up without problems for me. I haven't tried songbird or tvbrowser.

Revision history for this message
Hendy Irawan (ceefour) wrote :

Matias, are you using Eclipse in Ubuntu repository or from eclipse.org ?

Ubuntu's version is somewhat altered.

Use this one as example:
* Aptana (http://aptana.com)

It should reproduce the problem.

Revision history for this message
cuc (cuc+) wrote :

hm maybe its easier to reproduce for you when using thunderbird3 from mozillamessaging site?
altough it shows up in dockbarx as running app.. but it is also not pinnable .. firefox that comes with ubuntu works.. will check on error msgs for songbird or the other apps that dont show up

Revision history for this message
Matias Särs (msevens) wrote :

Well, there will always be programs that are not pinnable, that's just a result of dockbarx being unable to guess the connection between a gio-app name and the resource name. Stuff like thunderbird is inevitable, you can still make a launcher by dragging thunderbird from gnome-menu and edit the resouce name. But there are something seriously wrong if some programs won't show up at all.

Aptana studio (stand alone version) from (http://aptana.com) were visible in dockbarx for me. RadRails didn't start at all, I probably did something wrong.

Revision history for this message
cuc (cuc+) wrote :

ok i get the idea..
as for songbird - it works now.. seemed to me that a panel restart fixed some issues -> apps not showing up at all if they are running now works! juhu
thunderbird and tvbrowser (which is a java app) stay undetectable for pinning.. but creating a launcher is ok for me
thank you :)

Revision history for this message
Hendy Irawan (ceefour) wrote :

Matias,

Aptana Studio (standalone) aren't visible for me. During the Splash screen it's visible, but after the main window comes up it's gone.

What JDK do you use? If you're using OpenJDK, try using sun-jdk6-jdk as it's what I'm using.

Is there something I can to get informative debug messages for DockBarX ?

Here's what the app launcher outputs:

ceefour@caliva:/opt/Aptana Studio 2.0$ ./AptanaStudio

(AptanaStudio:17841): GLib-WARNING **: g_set_prgname() called multiple times

ceefour@caliva:/opt/Aptana Studio 2.0$ GDK_NATIVE_WINDOWS=true ./AptanaStudio

(AptanaStudio:18057): GLib-WARNING **: g_set_prgname() called multiple times

With and without GDK_NATIVE_WINDOWS=true, same output, same behavior with regard to DockBarX. GDK_NATIVE_WINDOWS=true is a workaround to fix mouse input problems in Eclipse 3.5 and Ubuntu 9.10.

Revision history for this message
Hendy Irawan (ceefour) wrote :
Download full text (5.0 KiB)

Some more info:

Run dockbarx.py from console:

ceefour@caliva:~$ dockbarx.py

** (dockbarx.py:18611): WARNING **: Trying to register gtype 'WnckWindowState' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:18611): WARNING **: Trying to register gtype 'WnckWindowActions' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:18611): WARNING **: Trying to register gtype 'WnckWindowMoveResizeMask' as flags when in fact it is of type 'GEnum'
/usr/bin/dockbarx.py:4435: Warning: g_set_prgname() called multiple times
  "dockbar applet", "0", dockbar_factory)

At this point I run Aptana Studio, there is no further output from dockbarx.

Run dockbarx.py with run-in-window (a bunch of apps running, but not AptanaStudio):

ceefour@caliva:~$ dockbarx.py run-in-window

** (dockbarx.py:18848): WARNING **: Trying to register gtype 'WnckWindowState' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:18848): WARNING **: Trying to register gtype 'WnckWindowActions' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:18848): WARNING **: Trying to register gtype 'WnckWindowMoveResizeMask' as flags when in fact it is of type 'GEnum'
dockbar init
Opened window matched with gio app on id: gnome-ppp
Opened window matched with gio app on id: nautilus
 trying to find as openoffice.org
Opened window matched with gio app on id: songbird
Traceback (most recent call last):
  File "/usr/bin/dockbarx.py", line 4430, in <module>
    dockbarwin = DockBarWindow()
  File "/usr/bin/dockbarx.py", line 4398, in __init__
    self.dockbar = DockBar(None)
  File "/usr/bin/dockbarx.py", line 3770, in __init__
    self.reload()
  File "/usr/bin/dockbarx.py", line 3858, in reload
    self.on_window_opened(self.screen, window)
  File "/usr/bin/dockbarx.py", line 4075, in on_window_opened
    app = self.find_gio_app(class_group_name)
  File "/usr/bin/dockbarx.py", line 4106, in find_gio_app
    if (pos==0) and (lname[len(rc)] == ' '):
IndexError: string index out of range

It seemed to try creating a window then it crashed.

I then ran AptanaStudio and tried again:

ceefour@caliva:~$ dockbarx.py run-in-window

** (dockbarx.py:19069): WARNING **: Trying to register gtype 'WnckWindowState' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:19069): WARNING **: Trying to register gtype 'WnckWindowActions' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:19069): WARNING **: Trying to register gtype 'WnckWindowMoveResizeMask' as flags when in fact it is of type 'GEnum'
dockbar init
Opened window matched with gio app on id: gnome-ppp
Opened window matched with gio app on id: nautilus
 trying to find as openoffice.org
Opened window matched with gio app on id: songbird
Traceback (most recent call last):
  File "/usr/bin/dockbarx.py", line 4430, in <module>
    dockbarwin = DockBarWindow()
  File "/usr/bin/dockbarx.py", line 4398, in __init__
    self.dockbar = DockBar(None)
  File "/usr/bin/dockbarx.py", line 3770, in __init__
    self.reload()
  File "/usr/bin/dockbarx.py", line 3858, in reload
    self.on_window_opened(self.screen, window)
  File "/usr/bin/dockbarx.py", line 4075, in on_window_opened
    app = self.find_gio_app(class_gr...

Read more...

Revision history for this message
Matias Särs (msevens) wrote :

Good, this is something I could work with. Can you send the output if you run xprop on eclipse as well?

Revision history for this message
Hendy Irawan (ceefour) wrote :

Sure Matias!

In fact, I'll give you some bonuses: all my collection of Eclipse apps.

For the Aptana Studio, I give a version with the GDK hack and without it.

If this matters, I'm using dual monitor setup.

Revision history for this message
Hendy Irawan (ceefour) wrote :
Revision history for this message
Hendy Irawan (ceefour) wrote :
Revision history for this message
Hendy Irawan (ceefour) wrote :
Revision history for this message
Hendy Irawan (ceefour) wrote :
Revision history for this message
Matias Särs (msevens) wrote :

Fix committed. Please check it out and tell me if it works.

Changed in dockbar:
status: New → Fix Committed
Revision history for this message
Hendy Irawan (ceefour) wrote :

Thank you Matias! :-)

Revision history for this message
Matias Särs (msevens) wrote :

So it works?

Revision history for this message
Hendy Irawan (ceefour) wrote :

How do I get it? apt-get doesn't seem to detect the new version.

Revision history for this message
Hendy Irawan (ceefour) wrote :

I got it:

$ bzr clone lp:dockbar/dockbarx
Branched 133 revision(s).

ceefour@caliva:~/Vendor$ cd dockbarx/

ceefour@caliva:~/Vendor/dockbarx$ ./dockbarx.py run-in-window

** (dockbarx.py:4787): WARNING **: Trying to register gtype 'WnckWindowState' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:4787): WARNING **: Trying to register gtype 'WnckWindowActions' as flags when in fact it is of type 'GEnum'

** (dockbarx.py:4787): WARNING **: Trying to register gtype 'WnckWindowMoveResizeMask' as flags when in fact it is of type 'GEnum'
dockbar init
Opened window matched with gio app on id: nautilus
Opened window matched with gio app on id: google-chrome
Opened window matched with gio app on id: pidgin
Opened window matched with gio app on id: gnome-ppp
Opened window matched with gio app on id: gnome-terminal
./dockbarx.py:1017: DeprecationWarning: PyArray_FromDimsAndDataAndDescr: use PyArray_NewFromDescr.
  for row in pixbuf.get_pixels_array():

============= ran Aptana Studio here ===========

./dockbarx.py:1045: DeprecationWarning: PyArray_FromDimsAndDataAndDescr: use PyArray_NewFromDescr.
  rows = pixbuf.get_pixels_array()
./dockbarx.py:1046: DeprecationWarning: PyArray_FromDimsAndDataAndDescr: use PyArray_NewFromDescr.
  mask_rows = mask.get_pixels_array()
Opened window matched with gio app on longname: aptana studio
Opened window matched with gio app on longname: aptana studio
Traceback (most recent call last):
  File "./dockbarx.py", line 2158, in attention_effect
    x,y = self.button.window.get_origin()
AttributeError: 'NoneType' object has no attribute 'get_origin'

.........

It works, Aptana's icon even shows up! Thanks Matias! Waiting to get it to official repo :-)

Revision history for this message
Hendy Irawan (ceefour) wrote :

Care to share why / what the culprit was?

Revision history for this message
Matias Särs (msevens) wrote :

Sure, I can try. Both the gio-app name contained a whitespace but was identical with the resource class name (eg. "Aptana Studio"). If the gio-app name contains a whitespace, dockbarx only checked if the resource class name was a part of the gio-app name. Then it checks if the sign that comes after the part of the gio-app really is a whitespace. Since the names where identical there was of course no whitespace after the part. That gave an error (IndexError: string index out of range) and the window registering process where halted.

Sorry for the bad explanation, it's not as complicated as I made it sound.

Revision history for this message
Hendy Irawan (ceefour) wrote :

Thank you Matias. You rock! :)

Matias Särs (msevens)
Changed in dockbar:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.