Fix size hint if toolbutton is subject unity menu hack...

This commit is contained in:
craig.p.drummond
2014-10-01 19:48:42 +00:00
parent 310d4cd6cc
commit 170d65e7ad

View File

@@ -99,7 +99,18 @@ void ToolButton::paintEvent(QPaintEvent *e)
QSize ToolButton::sizeHint() const
{
if (!hideMenuIndicator) {
QSize sz=QToolButton::sizeHint();
QSize sz;
#ifdef UNITY_MENU_HACK
if (!icon.isNull()) {
QStyleOptionToolButton opt;
opt.icon=icon;
opt.toolButtonStyle=Qt::ToolButtonIconOnly;
initStyleOption(&opt);
opt.features=QStyleOptionToolButton::None;
sz = style()->sizeFromContents(QStyle::CT_ToolButton, &opt, opt.iconSize, this).expandedTo(QApplication::globalStrut());
} else
#endif
sz = QToolButton::sizeHint();
return Utils::touchFriendly() ? QSize(sz.width()*TouchProxyStyle::constScaleFactor, sz.height()) : sz;
}