summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>2014-10-27 18:39:26 +0100
committerGabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>2014-10-30 10:49:22 +0100
commit3f3955fec533c77639d6f1eb20cff593597d6222 (patch)
tree49e86ecbf505f684de8c47ba7827d8920e5b6b43
parenta860500f8e7f705939ce489849e73c640d4316ce (diff)
QMacStyle: Fix QCombobox offsets in Yosemite
Task-number: QTBUG-40833 Change-Id: Id3c3f4fd4f5c72cba844bf23f2e79ce0ea2b4a95 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
-rw-r--r--src/widgets/styles/qmacstyle_mac.mm9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/widgets/styles/qmacstyle_mac.mm b/src/widgets/styles/qmacstyle_mac.mm
index 1d4aab7686..446946d793 100644
--- a/src/widgets/styles/qmacstyle_mac.mm
+++ b/src/widgets/styles/qmacstyle_mac.mm
@@ -4075,7 +4075,7 @@ void QMacStyle::drawControl(ControlElement ce, const QStyleOption *opt, QPainter
comboCopy.direction = Qt::LeftToRight;
if (opt->state & QStyle::State_Small)
comboCopy.rect.translate(0, w ? (QSysInfo::macVersion() > QSysInfo::MV_10_8 ? 0 : -1) : -2); // Supports Qt Quick Controls
- else if (QSysInfo::macVersion() > QSysInfo::MV_10_8)
+ else if (QSysInfo::macVersion() == QSysInfo::MV_10_9)
comboCopy.rect.translate(0, 1);
QCommonStyle::drawControl(CE_ComboBoxLabel, &comboCopy, p, w);
}
@@ -5738,10 +5738,13 @@ void QMacStyle::drawComplexControl(ComplexControl cc, const QStyleOptionComplex
if (const QStyleOptionComboBox *combo = qstyleoption_cast<const QStyleOptionComboBox *>(opt)){
HIThemeButtonDrawInfo bdi;
d->initComboboxBdi(combo, &bdi, widget, d->getDrawState(opt->state));
+ HIRect rect = qt_hirectForQRect(combo->rect);
+ if (combo->editable && QSysInfo::MacintoshVersion > QSysInfo::MV_10_9)
+ rect.origin.y += tds == kThemeStateInactive ? 1 : 2;
if (tds != kThemeStateInactive)
- QMacStylePrivate::drawCombobox(qt_hirectForQRect(combo->rect), bdi, p);
+ QMacStylePrivate::drawCombobox(rect, bdi, p);
else
- d->drawColorlessButton(qt_hirectForQRect(combo->rect), &bdi, p, opt);
+ d->drawColorlessButton(rect, &bdi, p, opt);
}
break;
case CC_TitleBar: