Red Hat Bugzilla – Bug 837388
Bluetile doesn't work properly with Java GUI apps
Last modified: 2015-12-02 11:03:25 EST
Description of problem:
Bluetile doesn't work properly with Java GUI applications. Some Java GUI elements are not gaining focus after mouse clicks (like text areas) and its not possible to work with those elements.
Version-Release number of selected component (if applicable):
Using any Java Swing application (like Netbeans) with text areas.
User can't write anything into text area.
Being able to write into focused text area.
This is tested only on x86 plaform. I am using Bluetile with Xfce desktop. Bluetile is working properly in Fedora 15 and openjdk 1.6.0 (tested on x86 and x86_64)
Is it possible you could attach some sensible test-case.
Anyway I am assuming this is related to the change from Java 6 to Java 7.
I know for Java 6 some workaround was needed for the WM_NAME property.
Maybe that has changed for Java 7 perhaps?
(In reply to comment #1)
> Is it possible you could attach some sensible test-case.
Sorry I meant small/simple testcase.
Actually did you try to test F16?
Anyway it may well be related to this change:
* Sun Dec 11 2011 Jens Petersen <email@example.com> - 0.6-1
- update to 0.6
- drop bluetile-0.5.3-WMName.patch for now
I will to prepare a f17 test package soon patched for WMName
so that you can test that.
Ok, test case... I was thinking about some app from repositories, because Netbeans are not in repos anymore. I assume you have Icedtea installed, so you must have IcedTea Web Control Panel in control center.
Have Bluetile running as window manager.
Have one extra window open (browser for example)
1. start IcedTea Web Control Panel and make it focused
2. choose Network tab
3. select "Manual proxy server" radio button (so the Address/Port text areas are enabled)
4. switch focus to extra window (e.g. browser)
5. switch focus back to IcedTea Web Control Panel window
6. click into Address/Port text areas so you can edit them
After clicking into Address/Port text areas there should be text cursor and you should be able to write
Nothing happens, text areas will not gain focus and text cursor will not appear.
This happens with Netbeans also, even the main development text area (where the source code is) is bugged this way (but its easy to work around it, because you can just click into list of projects and click back into development text area. Eclipse doesn't seem to be affected at all (as far as my quick test showed, I prefer Netbeans)... weird.
I am going to test F16 now... (I skipped F16 so I don't know whether it worked or not)
There seems to be no problem with Fedora 16 ... it uses Java 1.6 so it is probably some difference between 1.6 and 1.7
Sorry for the long delay - I was away in August...
Thanks for testing: ok then it might well be a different problem
I am no iced tea expert if you could explain how to
start "IcedTea Web Control Panel" - commandline is fine :)
then I will do more testing.
Oh, sorry... I took first Java thing that I thought would be probable for you to have and easiest to find in system.
Run this command:
/usr/lib/jvm/jre-1.7.0-openjdk/bin/java -Xbootclasspath/a:/usr/share/icedtea-web/netx.jar:/usr/share/java/js.jar -Xms8m -Dicedtea-web.bin.name=itweb-settings -Dicedtea-web.bin.location=/usr/bin/itweb-settings.itweb net.sourceforge.jnlp.controlpanel.CommandLine
that should start the IcedTea Control Center (sorry for the format, I just snatched it from "ps"). Test case still applies.
I did some digging on my own. It looks that its a bug in xmonad not Bluetile itself. Here is more information http://code.google.com/p/xmonad/issues/detail?id=177
There is also test case in that link, so you can test both approaches. It will both reproduce the problem. There is some patch, but it seems its just working for some people and JDK7 is still problem.
For their test case...
You can run command:
java -jar /usr/lib/jvm/java/demo/jfc/Notepad/Notepad.jar
then just follow the steps in that link (its pretty much the same, just different app).
(Actually I was just asking for /usr/bin/itweb-settings.itweb :)
Same thing, it works :) it's in there... as I said, I just copied it from "ps" output, I didn't know where the actual script is located so I didn't even bother with figuring it out :)
Thanks again for the report and sorry for slow response.
Duplicating to the newer xmonad bug which has a patch attached.
*** This bug has been marked as a duplicate of bug 874855 ***
* Tue Apr 02 2013 Jens Petersen <firstname.lastname@example.org> - 0.6-15
- drop ICCCM takeTopFocus workaround
I am not sure what is the reason to drop the workaround if bluetile doesn't work without it. If xmonad fixed the issue it's clear that bluetile did not gain from it. The issue is bit different then the previous one, but probably raises from the same problem. Some Java apps have problems with the GUI, Netbeans do not paint any GUI components at all (it's just grey window, but they are there, textareas do change cursor), Minecraft does not scale it's canvas (it's permanently ~640x480 picture)... some apps seem to be working ok.
I know this is pretty late report, but I have been using older version so far and completely forget about the issue, thinking this might be temporary. But because F20 due is soon and older versions probably won't be an option anymore.
Sorry to hear your problems.
Have you tried F20 yet? I assume the same issue is also there?
Is netbeans still in Fedora? Or do you have any simple testcase
I can try to reproduce this?
Anyway the original issue with itweb-settings seems still okay
so I think you are hitting a new issue. I wonder if it is related
to window resize events or something else.
I haven't tried F20 yet, currently I am just assuming the issue will be there too... it is version to version problem after all and bluetile version is the same in F20 as is in F19. I might try it later, just to be on safe side.
No, Netbeans are not in Fedora repo. Currently I have not found java app from repository that would be broken... that said I have not been -really- looking. Currently I know about Netbeans and Intellij IDEA (both only display grey window) and about the Minecraft picture size issue.
(Intellij IDEA does not need to be installed, only unpacked and ready to run, Community version is free)
You are right that it is probably "new" issue, but my guess would be that it's coming from same problem. The problem starts up from 0.6-15 version where some significant changes came, one of which was dropping the workaround. One of my machines (the main one) runs older version 0.6-13, which works ok and the other one is up-to-date, but broken.
I wonder, those apps that are broken are all mainly developed for Oracle java, not OpenJDK... that might be some clue.
(In reply to Solitary from comment #13)
> (Intellij IDEA does not need to be installed, only unpacked and ready to
> run, [...])
You mean Intellij IDEA installer shows this problem?
> I wonder, those apps that are broken are all mainly developed for Oracle
> java, not OpenJDK... that might be some clue.
Anyway again if you could provide simple steps I can do to reproduce,
I can try to look into it more.
(In reply to Jens Petersen from comment #14)
> (In reply to Solitary from comment #13)
> > (Intellij IDEA does not need to be installed, only unpacked and ready to
> > run, [...])
> You mean Intellij IDEA installer shows this problem?
No, IDEA itself. You don't need to install the software that was my point...
You can download community edition of IDEA from http://www.jetbrains.com/idea/download/index.html
Just unpack the downloaded archive and run bin/idea.sh
I see same problem in basic xmonad desktop session: tested in F21.
Dunno xmonad-mate helps here.
I am not sure I understand what you mean by that last sentence, what xmonad-mate helps with and... I don't use MATE, I use Xfce. So I'm not sure if it even applies to me.
Currently I can't even install the package, there is some issues with ghc-xmonad(-contrib) and its -devel packages, I can't locate them with YUM and it won't even install manually downloaded RPMs. It just says typical "Error: Nothing to do". Even the non-devel packages are not available, but I have those installed already. I am not sure what is going on, yet I can clearly see them in package repository mirrors.
So, good news.
First of all, I was an idiot, I couldn't locate those packages with YUM, because I forgot that I had excluded them two Fedora versions ago and it carried over with upgrade and I totally forgot about it, well... silly me, no conspiracy here.
And for the main course. I figured how to make the Java apps work. By setting _JAVA_AWT_WM_NONREPARENTING=1 as environment variable (in the end I put it in my .bash_profile), it makes the Java apps properly render again.
(In reply to Solitary from comment #19)
> By setting _JAVA_AWT_WM_NONREPARENTING=1 as environment variable (in the end
> I put it in my .bash_profile), it makes the Java apps properly render again.
Thanks for the info - not sure on the best way to introduce that to fedora
or if it is just a workaround - good to know anyway.
One way would be to add it in something like /etc/profile.d/bluetile.sh
but it might be intrusive. A softer way might be to mention it in a README...
This message is a reminder that Fedora 21 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 21. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora 'version'
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.
Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 21 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
Fedora 21 changed to end-of-life (EOL) status on 2015-12-01. Fedora 21 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.
If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
Thank you for reporting this bug and we are sorry it could not be fixed.