QToolButton: Don't elide text if an icon is present
The previous fix which adds an automatic text elision when the QToolButton is not large enough brought up an inconsistency between QToolButton::sizeHint() and QCommonStyle::drawControl(). Fix it by syncing the magic numbers between QToolButton::sizeHint() and QCommonStyle::drawControl(). Fixes: QTBUG-72226 Change-Id: If4a76792cb97bcdb918e18c6b29cb637730acec0 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io> Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
This commit is contained in:
parent
c4ee125891
commit
25231c4048
@ -1654,7 +1654,7 @@ void QCommonStyle::drawControl(ControlElement element, const QStyleOption *opt,
|
||||
alignment |= Qt::TextHideMnemonic;
|
||||
|
||||
if (toolbutton->toolButtonStyle == Qt::ToolButtonTextUnderIcon) {
|
||||
pr.setHeight(pmSize.height() + 6);
|
||||
pr.setHeight(pmSize.height() + 4); //### 4 is currently hardcoded in QToolButton::sizeHint()
|
||||
tr.adjust(0, pr.height() - 1, 0, -1);
|
||||
pr.translate(shiftX, shiftY);
|
||||
if (!hasArrow) {
|
||||
@ -1664,7 +1664,7 @@ void QCommonStyle::drawControl(ControlElement element, const QStyleOption *opt,
|
||||
}
|
||||
alignment |= Qt::AlignCenter;
|
||||
} else {
|
||||
pr.setWidth(pmSize.width() + 8);
|
||||
pr.setWidth(pmSize.width() + 4); //### 4 is currently hardcoded in QToolButton::sizeHint()
|
||||
tr.adjust(pr.width(), 0, 0, 0);
|
||||
pr.translate(shiftX, shiftY);
|
||||
if (!hasArrow) {
|
||||
|
Loading…
Reference in New Issue
Block a user