diff options
author | Jens Bache-Wiig <jbache@trolltech.com> | 2009-04-22 13:55:28 (GMT) |
---|---|---|
committer | Jens Bache-Wiig <jbache@trolltech.com> | 2009-04-22 14:00:54 (GMT) |
commit | 3696886a327fc4894518c5570b02d5238dcede8a (patch) | |
tree | b8efb56be47302373ad348f0b4198ad515c125e4 /src | |
parent | f8be94bf4e8fa359bfc71a10aa7dc6b12daf5dea (diff) | |
download | Qt-3696886a327fc4894518c5570b02d5238dcede8a.zip Qt-3696886a327fc4894518c5570b02d5238dcede8a.tar.gz Qt-3696886a327fc4894518c5570b02d5238dcede8a.tar.bz2 |
QGtkStyle: Fix broken transparency on line edits in Clearlooks
This basically uses a workaround to hint to our gtk theme that we
do not want it to fill our line edit backgrouns with the background
brush. This was suggested by Benjamin berg. More information can be
found here: https://bugzilla.mozilla.org/show_bug.cgi?id=405421
Reviewed-by: Tor Arne
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/styles/qgtkstyle.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gui/styles/qgtkstyle.cpp b/src/gui/styles/qgtkstyle.cpp index b7fa575..ca71da2 100644 --- a/src/gui/styles/qgtkstyle.cpp +++ b/src/gui/styles/qgtkstyle.cpp @@ -951,14 +951,15 @@ void QGtkStyle::drawPrimitive(PrimitiveElement element, "interior-focus", &interior_focus, "focus-line-width", &focus_line_width, NULL); + // See https://bugzilla.mozilla.org/show_bug.cgi?id=405421 for info about this hack + g_object_set_data(G_OBJECT(gtkEntry), "transparent-bg-hint", GINT_TO_POINTER(TRUE)); + if (!interior_focus && option->state & State_HasFocus) rect.adjust(focus_line_width, focus_line_width, -focus_line_width, -focus_line_width); - gtkPainter.paintShadow(gtkEntry, "entry", rect, option->state & State_Enabled ? GTK_STATE_NORMAL : GTK_STATE_INSENSITIVE, GTK_SHADOW_IN, gtkEntry->style, option->state & State_HasFocus ? QLS("focus") : QString()); - if (!interior_focus && option->state & State_HasFocus) gtkPainter.paintShadow(gtkEntry, "entry", option->rect, option->state & State_Enabled ? GTK_STATE_ACTIVE : GTK_STATE_INSENSITIVE, |