Summary: | oxygen-gtk: In Swing apps, inactive tabs all get the blue hover highlight even when not hovered | ||
---|---|---|---|
Product: | [Plasma] Oxygen | Reporter: | Kevin Kofler <kevin.kofler> |
Component: | gtk2-engine | Assignee: | Hugo Pereira Da Costa <hugo.pereira.da.costa> |
Status: | CLOSED FIXED | ||
Severity: | normal | CC: | b7.10110111, hugo.pereira.da.costa, web |
Priority: | NOR | ||
Version First Reported In: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Kevin Kofler
2011-05-22 04:39:23 UTC
Oops, actually this should read "Reproducible: Always", not "Didn't try". (I forgot to set the combobox.) I did try, it happens every single time. It would be easy to fix (disable hover support) if we knew how to detect Swing usage. Just detecting java isn't enough since e.g. SWT works with tabs normally (because it's mostly normal GTK+ wrapper). Any ideas on this? I think we need to sanity-check the coordinates returned by gdk_window_get_pointer at: https://projects.kde.org/projects/playground/artwork/oxygen-gtk/repository/revisions/master/entry/src/animations/oxygenhoverdata.cpp#L49 I think the solution to the mystery must be that there is a false intersect detected in that function. (The coordinates in Swing's fake widgets must be nonsense which happens to always intersect.) yes, thats what it is. That's why we need to find a way to disable hover on tabs for this kind of widgets, (and this kind only). Will investigate. Kevin, 2 newbie questions: - Swing is swt, correct ? - can you point me to one or two (basic please) swt apps, for me to test patches ? Thx, Hugo @Hugo No, SWT and Swing are very different. SWT is a GTK wrapper on Linux, while Swing draws all the widgets on a single X window, using GTK only as a theme drawer. That's why SWT apps work OK with tab prelight, while Swing ones don't. Here's a good tab test app using Swing: http://download.oracle.com/javase/tutorial/uiswing/components/tabbedpane.html Git commit abcceffd3eb38fef3d49499ce5a82caa5d1cd6c5 by Hugo Pereira Da Costa. Committed on 23/05/2011 at 19:09. Pushed by hpereiradacosta into branch 'master'. Disable tab widgets hover in Java (non-swt) applications when an invalid window is passed as argument to draw_extension. CCBUG: 273829 M +4 -1 src/oxygenstylewrapper.cpp http://commits.kde.org/oxygen-gtk/abcceffd3eb38fef3d49499ce5a82caa5d1cd6c5 |