diff options
author | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2009-12-15 14:40:07 (GMT) |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@nokia.com> | 2009-12-15 14:40:07 (GMT) |
commit | d869ec981447bc6d590954a939f18b5d37ebb6cd (patch) | |
tree | b2b0bf2ccd1f5d886340475b70c9a91b2e456ebd /src/gui/styles/qgtkstyle.cpp | |
parent | 2ba459c2adcaa4d0f865956048ac2e24f3fe6924 (diff) | |
parent | 0b402f10a26115332ae72bbf263fd15c8354ecb9 (diff) | |
download | Qt-d869ec981447bc6d590954a939f18b5d37ebb6cd.zip Qt-d869ec981447bc6d590954a939f18b5d37ebb6cd.tar.gz Qt-d869ec981447bc6d590954a939f18b5d37ebb6cd.tar.bz2 |
Merge remote branch 'mainline/4.6' into 4.6
Diffstat (limited to 'src/gui/styles/qgtkstyle.cpp')
-rw-r--r-- | src/gui/styles/qgtkstyle.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/gui/styles/qgtkstyle.cpp b/src/gui/styles/qgtkstyle.cpp index afa3325..e10bb41 100644 --- a/src/gui/styles/qgtkstyle.cpp +++ b/src/gui/styles/qgtkstyle.cpp @@ -3375,12 +3375,28 @@ QIcon QGtkStyle::standardIconImplementation(StandardPixmap standardIcon, /*! \reimp */ QRect QGtkStyle::subElementRect(SubElement element, const QStyleOption *option, const QWidget *widget) const { + Q_D(const QGtkStyle); + QRect r = QCleanlooksStyle::subElementRect(element, option, widget); switch (element) { case SE_ProgressBarLabel: case SE_ProgressBarContents: case SE_ProgressBarGroove: return option->rect; + case SE_PushButtonContents: + if (!d->gtk_check_version(2, 10, 0)) { + GtkWidget *gtkButton = d->gtkWidget(QLS("GtkButton")); + GtkBorder *border = 0; + d->gtk_widget_style_get(gtkButton, "inner-border", &border, NULL); + if (border) { + r = option->rect.adjusted(border->left, border->top, -border->right, -border->bottom); + d->gtk_border_free(border); + } else { + r = option->rect.adjusted(1, 1, -1, -1); + } + r = visualRect(option->direction, option->rect, r); + } + break; default: break; } |