FS#16618 - [eclipse] buttons dont work with gtk2-2.18.2

Attached to Project: Arch Linux
Opened by Johan R (cleanrock) - Tuesday, 13 October 2009, 16:21 GMT
Last edited by Paul Mattal (paul) - Tuesday, 01 December 2009, 12:07 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Paul Mattal (paul)
Architecture i686
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 20
Private No

Details

I think eclipse broke with the new gtk2 2.18, many buttons dont work.
I found some discussion about it here:
http://www.eclipse.org/forums/index.php?S=3061129fb70b1822c6520239b136e342&t=msg&th=153842
This task depends upon

Closed by  Paul Mattal (paul)
Tuesday, 01 December 2009, 12:07 GMT
Reason for closing:  Fixed
Additional comments about closing:  in eclipse 3.5.1-2
Comment by Frank Scheffold (framas) - Wednesday, 14 October 2009, 10:45 GMT
setting export GDK_NATIVE_WINDOWS=true before running eclipse solves the problem for me.
Comment by Andi Clemens (TheGrudge) - Thursday, 15 October 2009, 09:10 GMT
Confirmed, adding this env variable fixes it. I guess we should add this to /usr/bin/eclipse package in [extra] then...
Comment by Ulf Winkelvos (uwinkelvos) - Thursday, 15 October 2009, 22:55 GMT
there is also a patch for eclipse 3.5.1 available. See: https://bugs.eclipse.org/bugs/show_bug.cgi?id=287307#c7 Haven't tested it, though.
Comment by Flavio Coutinho da Costa (flaviocdc) - Wednesday, 21 October 2009, 16:32 GMT
The workaround really solves the problem +1 to patching our /usr/bin/eclipse shell script.
Comment by Ng Oon-Ee (ngoonee) - Thursday, 22 October 2009, 07:53 GMT
Wouldn't it be better to push the 'fix' upstream? As I understand it, setting this overrides the new way GTK handles windows, which can't be a good thing. Better fixed at source I think, rather than working around it by defaulting to old behaviour in the package. Users can apply this themselves (maybe post-install message?).
Comment by Flavio Coutinho da Costa (flaviocdc) - Thursday, 22 October 2009, 12:26 GMT
From what I could see from the Ulf Winkelvos's link, the upstream fix is going to be shipped in Galileo SR2 (3.5.2) so we won't need the "workaround" when it comes out, but I think it wouldn't hurt us to ship the workaround for now.
Comment by Fabien COUTANT (fcoutant) - Sunday, 25 October 2009, 07:43 GMT
I too had the problem but with the older Eclipse 3.4.2;
The observed behaviour is that some buttons show and work, some show but don't work (ex: on the "User Library" preferences page), and some don't show at all (ex: publish/start/stop/etc on Server's view).
Setting GDK_NATIVE_WINDOWS makes the buttons show and work, yes, but then Eclipse crashes within 30s to 5 minutes (depending on what I do inside); The log says it exploded it's PermGen space ! (the very same Eclipse was working perfect for hours on Gtk2.16).
For me it looks like the Gtk guys broke *binary* compatibility in 2.18, despite what the announcement says; For now I had to rollback Gtk2 and ~100mb of dependent packages to 2.16, thanks to a 1-month backup, but this is *very* inconvenient...
Any advice ?
Comment by Fabien COUTANT (fcoutant) - Sunday, 25 October 2009, 08:27 GMT
More info on this: the PermGen setting in eclipse.ini wasn't taken into account since I renamed the launch script to include the GDK variable... now it's back to 256M and working much better.
Sorry for not enough testing (more ongoing now -- not yet sure all is fine).
Comment by joe phantom (joephantom) - Wednesday, 18 November 2009, 20:06 GMT
"I also noticed that it takes about 10-20 seconds to start a debug session now in eclipse-cdt, not sure if it is a local problem, related to gtk 2.18 or gdb.
You can reproduce this by creating a simple hello world c++ app, set a breakpoint and start a debug session."

You should change the selected preferred launcher from "standard create process launcher" to "GDB (DSF) Create Process Launcher".

Regards.
Comment by Johan R (cleanrock) - Saturday, 28 November 2009, 07:43 GMT
joe, i realized that some hours after writing this bug report, thanks anyway.
Perhaps an admin can remove that part from Details above.
Comment by Johan R (cleanrock) - Saturday, 28 November 2009, 08:44 GMT
Shouldn't this be fixed by now ?
I think it is a little embarrasing for arch to not have a working eclipse. As it is now new users will have to find out via forum of how to get eclipse working using export GDK_NATIVE_WINDOWS=true.
Comment by David Rosenstrauch (darose) - Saturday, 28 November 2009, 14:43 GMT
Agreed, but it's an upstream bug, right?

Only way we could really fix that on arch is with, say, an eclipse.sh file in /etc/conf.d/ that sets GDK_NATIVE_WINDOWS, right?

Better question is probably: is there a fix for this upstream?
Comment by David Rosenstrauch (darose) - Saturday, 28 November 2009, 14:44 GMT
And if there is, then maybe we can just upgrade the eclipse package and solve the issue that way.
Comment by Paul Mattal (paul) - Saturday, 28 November 2009, 14:59 GMT
I would happily use the suggested patch, but we use the precompiled eclipse binaries, so that is not possible. To compile ourselves introduces many other issues.

Based on the above, it doesn't sound like GDK_NATIVE_WINDOWS=true really solves the problem.

I am embarrassed on behalf of the Eclipse foundation that they haven't yet issued a version of their software that works with modern Linuxes, but I'm not sure there's a lot we can do here.
Comment by Paul Mattal (paul) - Saturday, 28 November 2009, 15:29 GMT
I guess another option is to use a pre-3.5.2 build:

http://download.eclipse.org/eclipse/downloads/drops/M20091125-1042/index.php

This seems like the magnitude of bug that would call for such action.
Comment by Flavio Coutinho da Costa (flaviocdc) - Saturday, 28 November 2009, 16:34 GMT
Eclipse 3.5 SR2 is only coming next year.

I don't think it will be a problem if simply patch our wrapper script "/usr/bin/eclipse" to set the needed variable.
Comment by Johan R (cleanrock) - Saturday, 28 November 2009, 17:57 GMT
I have
export GDK_NATIVE_WINDOWS=true
in /usr/bin/eclipse and that works for me at least.
Comment by Olivier Duclos (oliwer) - Monday, 30 November 2009, 14:43 GMT
Ok so we can easily fix the bug by adding a line in /usr/bin/eclipse. Paul, what are you waiting for to release a new package and close this bug ?
Comment by Paul Mattal (paul) - Monday, 30 November 2009, 18:13 GMT
Sorry, I've been away and time has been sporadic. I agree with this assessment, and will try to deal with this today.
Comment by Paul Mattal (paul) - Tuesday, 01 December 2009, 03:55 GMT
Does eclipse 3.5.1-2 now in [extra] solve this?
Comment by xduugu (xduugu) - Tuesday, 01 December 2009, 08:04 GMT
It does for me.

Loading...