aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/debugger/watchwindow.cpp
diff options
context:
space:
mode:
authorhjk <hjk121@nokiamail.com>2014-07-01 10:55:24 +0200
committerhjk <hjk121@nokiamail.com>2014-07-03 11:13:44 +0200
commit1fd24aa8b7f446a94b3d47b9a36b5ef296833042 (patch)
tree1b27e7f005c9afe2ccc0db5a6ec3858e851ae65b /src/plugins/debugger/watchwindow.cpp
parent0544f9dd052a8e214f143c0a19c20cd652892bfb (diff)
Debugger: Maintain slider position in watch view
Setting column width seems to reset slider positions, needlessly. Work around. Change-Id: Ifa6c6a204dd2fbd7ad3dada0c386b697ae7a4100 Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Diffstat (limited to 'src/plugins/debugger/watchwindow.cpp')
-rw-r--r--src/plugins/debugger/watchwindow.cpp28
1 files changed, 23 insertions, 5 deletions
diff --git a/src/plugins/debugger/watchwindow.cpp b/src/plugins/debugger/watchwindow.cpp
index 2f887680f8..d89513b528 100644
--- a/src/plugins/debugger/watchwindow.cpp
+++ b/src/plugins/debugger/watchwindow.cpp
@@ -47,17 +47,18 @@
#include <utils/savedaction.h>
#include <utils/fancylineedit.h>
-#include <QDebug>
-#include <QMetaProperty>
-#include <QMimeData>
-
#include <QApplication>
#include <QClipboard>
+#include <QDebug>
#include <QHeaderView>
+#include <QInputDialog>
#include <QItemDelegate>
#include <QMenu>
-#include <QInputDialog>
#include <QMessageBox>
+#include <QMetaProperty>
+#include <QMimeData>
+#include <QScrollBar>
+#include <QTimer>
//#define USE_WATCH_MODEL_TEST 1
@@ -1055,6 +1056,23 @@ void WatchTreeView::reset()
resetHelper();
}
+void WatchTreeView::doItemsLayout()
+{
+ if (m_sliderPosition == 0)
+ m_sliderPosition = verticalScrollBar()->sliderPosition();
+ Utils::BaseTreeView::doItemsLayout();
+ if (m_sliderPosition)
+ QTimer::singleShot(0, this, SLOT(adjustSlider()));
+}
+
+void WatchTreeView::adjustSlider()
+{
+ if (m_sliderPosition) {
+ verticalScrollBar()->setSliderPosition(m_sliderPosition);
+ m_sliderPosition = 0;
+ }
+}
+
void WatchTreeView::watchExpression(const QString &exp)
{
watchExpression(exp, QString());