diff --git a/src/lib/tabwidget/tabbar.cpp b/src/lib/tabwidget/tabbar.cpp index 5179ceb99..911b62585 100644 --- a/src/lib/tabwidget/tabbar.cpp +++ b/src/lib/tabwidget/tabbar.cpp @@ -464,10 +464,10 @@ void TabBar::tabInserted(int index) return; } QWidget *w = tabButton(0, iconButtonPosition()); - const QRect r = tabRect(0); - if (w && r.isValid()) { - const int padding = w->geometry().x() - r.x(); - tabMetrics()->setPinnedWidth(iconButtonSize().width() + padding * 2); + if (w && w->parentWidget()) { + const QRect wg = w->parentWidget()->geometry(); + const QRect wr = QStyle::visualRect(layoutDirection(), wg, w->geometry()); + tabMetrics()->setPinnedWidth(iconButtonSize().width() + wr.x() * 2); setUpLayout(); } });