Skip to main content

GTK Look and feel unacceptable on Linux...

10 replies [Last post]
prime21
Offline
Joined: 2005-06-15
Points: 0

Please continue to make native look-and-feel fidelity a major priority with Mustang. I'm running b67 and the GTK L&F *still* has major issues on Linux. My biggest complaint is font sizes not matching. Font sizes in native GTK apps are slightly smaller than Swing/GTK -- that is to say that Swing's GTK fonts are too big. The JMenuBar is also too tall.

Additionally, performance is an issue. I don't know if this is strictly due to the fact that GTK L&F is based on Synth or what. Resizing or maximizing a window is noticeably slow.

I love Swing, but SWT is the only way to go for writing Java GUI apps that are going to be run on both Windows and Linux. Swing on Linux *is* fast as long as you use Metal (Ocean) L&F. As soon as you try to shoot for native fidelity via the GTK L&F you stick out like a sore thumb and your performance lags.

I'm running a vanilla install of Ubuntu Linux 5.10 -- nothing tricky. The GTK "engine" is supported by Swing's GTK L&F.

I'm begging you to fix this. Native-looking apps on Linux is an absolute must. Forcing me to use Metal (as NetBeans on Linux does) is *NOT* a viable option.

-Bryan

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
trembovetski
Offline
Joined: 2003-12-31
Points: 0

Bryan, thanks for your comments.

You should see improvement with these (recent) fixes:
6364255: GTK L&F: text in components is too tall
6361745: Mustang: Improve the image caching mechanism used by GTK L&F

(although the first one I think affects solaris only)

There are more performance and fidelity-related fixes in the pipeline for the GTK L&F.

Thanks,
Dmitri
Java2D Team

prime21
Offline
Joined: 2005-06-15
Points: 0

Dmitri,

Thank you for your prompt response and attention to my issue. And let me tell you. I have "issues"... But the medication helps... Err... Anyway.

I'm glad to here about these fixes and others on their way. You guys have done a great job with Mustang so far, and I have no doubt that I'll be impressed by its future.

Thanks again,
-Bryan

trembovetski
Offline
Joined: 2003-12-31
Points: 0

Also, here's something I got from Phil Race (who's our fonts person) regarding GTK vs Swing/GTK font issues on linux:

"We don't use the same fonts (I'm working on that) and we
properly hint the fonts which makes a difference too.
Those were the main things I noticed. The latter is
GTK's problem. Its possible that at some sizes we may
round a little differently (off by one at most).
So far as I know our size calculations are otherwise
correct."

Thanks,
Dmitri

takisd
Offline
Joined: 2003-06-16
Points: 0

This is something i've been meaning to post up since the later 1.4.2 versions. If i may add my 2 cents:

Though i do appreciate the work been done to get the gtk l&f actually working on linux there are still so very many issues - i think internal frame support is the worst and we no longer develop with them if we expect an app to run under linux also.

Frankly however, even if it does get better, the vast array of possible themes and theme engines on linux almost renders the entire process futile. you will likely never get gtk l&f to work as expected (say like java-gnome) on linux. i don't really understand the decision taken to attempt to run any swing app under the OS's native look. it used to be that it would just run under metal (which i personally still love). furthermore, when the jvm was being released to default to the system native l&f (gtk on linux), you could still have a swing.properties file that could be configured to have whatever default l&f you wanted. it hasn't worked in 1.5 at all!!

it really is very very annoying. at the very least, can the swing.properties lookup be reinstated.

anyway, just my two cents.

Takis

trembovetski
Offline
Joined: 2003-12-31
Points: 0

The new GTK L&F in mustang uses native GTK rendering to render the components (unlike the theme rendering emulation done in previous releases, which did support only a limited set of themes), so it'll automatically support whatever new themes that come out.

If you have specific issues regarding internal frames, please file bugs (or vote for existing ones), don't wait for three releases.

I'm not a Swing person, so I'm not sure about the swing.properties thing.

Thanks,
Dmitri

spk
Offline
Joined: 2006-01-20
Points: 0

http://www.ffnn.nl/pages/articles/java/java-2-se-6.0-aesthetics-preview.php - this is nice article about good and bad things in GTK PLAF in Mustang. It is little outdated probably, but my experience is similar (I haven't tested last 3 or 4 Mustang snapshots). Besides many visual glitches and inconsistencies GTK PLAF is *really* slow - TBH is rather unusable.

linuxhippy
Offline
Joined: 2004-01-07
Points: 0

Yep I also found that the GTK-LAF is way too slow for almost all guys larger than a few buttons and textfields.
Especially resizing operations seem to be very slow.

I have to add that not for me nore my customers GTK-LAF has any priority, we all use Metal/Ocean which looks quite ok since Tiger and performs quite good.

trembovetski
Offline
Joined: 2003-12-31
Points: 0

As I mentioned above, the GTK L&F performance is continued to be worked on even for mustang.

Thanks,
Dmitri

olsonje
Offline
Joined: 2005-08-10
Points: 0

Wow, that comparison posted above is pretty cool!

Keep up the awesome work all!

trembovetski
Offline
Joined: 2003-12-31
Points: 0

Yeah, we filed a bunch of bugs based on that excellent article, most of them should be fixed by now.

Thanks,
Dmitri