diff --git a/src/gui/UBDockPalette.cpp b/src/gui/UBDockPalette.cpp index 2aa91cf9..a302d847 100644 --- a/src/gui/UBDockPalette.cpp +++ b/src/gui/UBDockPalette.cpp @@ -529,6 +529,7 @@ void UBDockPalette::setVisible(bool visible) bool UBDockPalette::switchMode(eUBDockPaletteWidgetMode mode) { + mLastOpenedTabForMode.insert(mCurrentMode, mpStackWidget->currentIndex()); mCurrentMode = mode; bool hasVisibleElements = false; //-------------------------------// @@ -552,7 +553,7 @@ bool UBDockPalette::switchMode(eUBDockPaletteWidgetMode mode) //-------------------------------// if(mRegisteredWidgets.size() > 0) - showTabWidget(0); + showTabWidget(mLastOpenedTabForMode.value(mCurrentMode)); update(); diff --git a/src/gui/UBDockPalette.h b/src/gui/UBDockPalette.h index 02610a20..f1c6f323 100644 --- a/src/gui/UBDockPalette.h +++ b/src/gui/UBDockPalette.h @@ -176,6 +176,8 @@ protected: QVector mRegisteredWidgets; /** The current tab widget */ QString mCrntTabWidget; + /** Last opened tab index depending on mode */ + QMap mLastOpenedTabForMode; private slots: void onToolbarPosUpdated();