Summary: | oxygen-gtk trouble with combo-boxes in gajim IM client | ||
---|---|---|---|
Product: | [Plasma] Oxygen | Reporter: | Ivo Anjo <ivo> |
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: | unspecified | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | Screenshot |
Description
Ivo Anjo
2011-01-27 12:24:36 UTC
yes. Sadly enough, I can confirm. Looks like our combobox rendering is not robust enough. On it. @Ruslan ok. Apparently PyGtk (or Gajim alone) has its specific CellRendererImage class, that is not in Gtk, and does not honor the xpading, ypading whith which we play in oxygencomboboxdata. Hence the messed up layout. So ... maybe we're just f..ed here. and have to fallback to setting xthickness to 6, give up on the tweaking from ComboBoxData, and live (like QtCurve) with a 6 pixels wide "dead" area in the GtkComboBox rendering :( Git commit 6bef60b327b1e594c63f7611dcaabff44d70eb51 by Hugo Pereira Da Costa. Pushed by hpereiradacosta into branch 'master'. Fixed rendering of GtkComboBox - removed all modifications of CellRenderers layout. - set xthickness and ythickness of GtkComboBox's Frame to 4 (as opposed to 0) - manually enlarge the GdkWindow of the GtkComboBox's button, to cover the dead area created by the Frame's margin. CCBUG: 264453 M +2 -1 rc/gtkrc M +28 -43 src/animations/oxygencomboboxdata.cpp M +12 -6 src/animations/oxygencomboboxdata.h M +0 -4 src/animations/oxygencomboboxengine.h M +0 -2 src/oxygenstylewrapper.cpp http://commits.kde.org/d1a86b4e/6bef60b327b1e594c63f7611dcaabff44d70eb51 That fixes it, in both trunk and 1.0 branch. Closing. Thanks for reporting ! (in fact, fixing this bug made us end up with a much cleaner code concerning combobox painting). Thank you for such a quick turnaround time :) I can confirm that this works correctly with current git. |