From 36a9d8a40c52401ced3d3702a82f793792e283c5 Mon Sep 17 00:00:00 2001
From: Jens Bache-Wiig <jbache@trolltech.com>
Date: Tue, 23 Mar 2010 13:51:32 +0100
Subject: [PATCH] Some layout fixes

I fixed the tab offset so that we remove the double
border of the first tab also when only one tab is
visible.
---
 src/plugins/coreplugin/manhattanstyle.cpp | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/plugins/coreplugin/manhattanstyle.cpp b/src/plugins/coreplugin/manhattanstyle.cpp
index 4dd4ac6afae..ff4dbd16bea 100644
--- a/src/plugins/coreplugin/manhattanstyle.cpp
+++ b/src/plugins/coreplugin/manhattanstyle.cpp
@@ -90,6 +90,9 @@ bool panelWidget(const QWidget *widget)
     if (qobject_cast<const Utils::FancyMainWindow *>(widget))
         return true;
 
+    if (qobject_cast<const QTabBar *>(widget))
+        return styleEnabled(widget);
+
     const QWidget *p = widget;
     while (p) {
         if (qobject_cast<const QToolBar *>(p) ||
@@ -270,8 +273,12 @@ void ManhattanStyle::polish(QWidget *widget)
             widget->setContentsMargins(0, 0, 0, 0);
         }
     }
-
     if (panelWidget(widget)) {
+
+        // Oxygen and possibly other styles override this
+        if (qobject_cast<QDockWidget*>(widget))
+            widget->setContentsMargins(0, 0, 0, 0);
+
         widget->setAttribute(Qt::WA_LayoutUsesWidgetRect, true);
         if (qobject_cast<QToolButton*>(widget)) {
             widget->setAttribute(Qt::WA_Hover);
@@ -621,7 +628,8 @@ void ManhattanStyle::drawControl(ControlElement element, const QStyleOption *opt
 
         if (const QStyleOptionTabV3 *tab = qstyleoption_cast<const QStyleOptionTabV3 *>(option)) {
             QStyleOptionTabV3 adjustedTab = *tab;
-            if (tab->position == QStyleOptionTab::Beginning) {
+            if (tab->position == QStyleOptionTab::Beginning
+                || tab->position == QStyleOptionTab::OnlyOneTab) {
                 if (option->direction == Qt::LeftToRight)
                     adjustedTab.rect = adjustedTab.rect.adjusted(-1, 0, 0, 0);
                 else
-- 
GitLab