From 57bc08dac38b02128031357976436fa0f68bd574 Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner Date: Wed, 20 Jun 2018 20:18:11 +0200 Subject: [PATCH] Revert "Fix restoring geometry of dockwidget" See also: Regression caused by the fix for QTBUG-16252 QTBUG: https://bugreports.qt.io/browse/QTBUG-68939 This reverts commit cbfb6bda1d1ce3e169db6a0deb9bd901076653e4. --- src/widgets/widgets/qdockarealayout.cpp | 20 ++------------------ src/widgets/widgets/qdockarealayout_p.h | 1 - 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/src/widgets/widgets/qdockarealayout.cpp b/src/widgets/widgets/qdockarealayout.cpp index bef7214c75..21d1d4cb85 100644 --- a/src/widgets/widgets/qdockarealayout.cpp +++ b/src/widgets/widgets/qdockarealayout.cpp @@ -226,7 +226,7 @@ static quintptr tabId(const QDockAreaLayoutItem &item) static const int zero = 0; QDockAreaLayoutInfo::QDockAreaLayoutInfo() - : restoredSizeHint(0,0), sep(&zero), dockPos(QInternal::LeftDock), o(Qt::Horizontal), mainWindow(0) + : sep(&zero), dockPos(QInternal::LeftDock), o(Qt::Horizontal), mainWindow(0) #if QT_CONFIG(tabbar) , tabbed(false), tabBar(0), tabBarShape(QTabBar::RoundedSouth) #endif @@ -236,7 +236,7 @@ QDockAreaLayoutInfo::QDockAreaLayoutInfo() QDockAreaLayoutInfo::QDockAreaLayoutInfo(const int *_sep, QInternal::DockPosition _dockPos, Qt::Orientation _o, int tbshape, QMainWindow *window) - : restoredSizeHint(0,0), sep(_sep), dockPos(_dockPos), o(_o), mainWindow(window) + : sep(_sep), dockPos(_dockPos), o(_o), mainWindow(window) #if QT_CONFIG(tabbar) , tabbed(false), tabBar(0), tabBarShape(static_cast(tbshape)) #endif @@ -407,9 +407,6 @@ QSize QDockAreaLayoutInfo::sizeHint() const if (isEmpty()) return QSize(0, 0); - if (!restoredSizeHint.isNull()) - return restoredSizeHint; - int a = 0, b = 0; int min_perp = 0; int max_perp = QWIDGETSIZE_MAX; @@ -2376,7 +2373,6 @@ bool QDockAreaLayout::restoreState(QDataStream &stream, const QList> size; if (!testing) { docks[pos].rect = QRect(QPoint(0, 0), size); - docks[pos].restoredSizeHint = size; } if (!docks[pos].restoreState(stream, dockwidgets, testing)) { stream.setStatus(QDataStream::ReadCorruptData); @@ -2678,8 +2674,6 @@ void QDockAreaLayout::getGrid(QVector *_ver_struct_list, center_rect.setBottom(rect.bottom() - docks[QInternal::BottomDock].rect.height() - sep); QSize left_hint = docks[QInternal::LeftDock].size(); - if (!docks[QInternal::LeftDock].restoredSizeHint.isNull()) - left_hint = docks[QInternal::LeftDock].restoredSizeHint; if (left_hint.isNull() || fallbackToSizeHints) left_hint = docks[QInternal::LeftDock].sizeHint(); QSize left_min = docks[QInternal::LeftDock].minimumSize(); @@ -2687,8 +2681,6 @@ void QDockAreaLayout::getGrid(QVector *_ver_struct_list, left_hint = left_hint.boundedTo(left_max).expandedTo(left_min); QSize right_hint = docks[QInternal::RightDock].size(); - if (!docks[QInternal::RightDock].restoredSizeHint.isNull()) - right_hint = docks[QInternal::RightDock].restoredSizeHint; if (right_hint.isNull() || fallbackToSizeHints) right_hint = docks[QInternal::RightDock].sizeHint(); QSize right_min = docks[QInternal::RightDock].minimumSize(); @@ -2696,8 +2688,6 @@ void QDockAreaLayout::getGrid(QVector *_ver_struct_list, right_hint = right_hint.boundedTo(right_max).expandedTo(right_min); QSize top_hint = docks[QInternal::TopDock].size(); - if (!docks[QInternal::TopDock].restoredSizeHint.isNull()) - top_hint = docks[QInternal::TopDock].restoredSizeHint; if (top_hint.isNull() || fallbackToSizeHints) top_hint = docks[QInternal::TopDock].sizeHint(); QSize top_min = docks[QInternal::TopDock].minimumSize(); @@ -2705,8 +2695,6 @@ void QDockAreaLayout::getGrid(QVector *_ver_struct_list, top_hint = top_hint.boundedTo(top_max).expandedTo(top_min); QSize bottom_hint = docks[QInternal::BottomDock].size(); - if (!docks[QInternal::BottomDock].restoredSizeHint.isNull()) - bottom_hint = docks[QInternal::BottomDock].restoredSizeHint; if (bottom_hint.isNull() || fallbackToSizeHints) bottom_hint = docks[QInternal::BottomDock].sizeHint(); QSize bottom_min = docks[QInternal::BottomDock].minimumSize(); @@ -3288,10 +3276,6 @@ int QDockAreaLayout::separatorMove(const QList &separator, const QPoint &or int delta = 0; int index = separator.last(); - for (int i = 0; i < QInternal::DockCount; ++i) - if (!docks[i].restoredSizeHint.isNull()) - docks[i].restoredSizeHint = QSize(0, 0); - if (separator.count() > 1) { QDockAreaLayoutInfo *info = this->info(separator); delta = pick(info->o, dest - origin); diff --git a/src/widgets/widgets/qdockarealayout_p.h b/src/widgets/widgets/qdockarealayout_p.h index ea397e00ac..82244c192e 100644 --- a/src/widgets/widgets/qdockarealayout_p.h +++ b/src/widgets/widgets/qdockarealayout_p.h @@ -189,7 +189,6 @@ public: QMainWindowLayout *mainWindowLayout() const; - QSize restoredSizeHint; const int *sep; mutable QVector separatorWidgets; QInternal::DockPosition dockPos; -- 2.17.1