diff options
author | Tomaz Canabrava <tcanabrava@kde.org> | 2014-11-16 23:28:48 -0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-11-17 06:02:21 +0000 |
commit | 82a946152b7f1da177344937acbc9d3cb5b0ccbf (patch) | |
tree | dc68ae75114d415dfb8eb88bd46900ca463c0304 | |
parent | 50ad3f8af989dd1bad055721c810e158c578837e (diff) | |
download | subsurface-82a946152b7f1da177344937acbc9d3cb5b0ccbf.tar.gz |
727 fixed
--047d7b8737f87ede8e050803e6b2
Content-Type: text/plain; charset=UTF-8
<div dir="ltr"><br></div>
From 3db4a422485374801ca2f6233ec23b8671a8656d Mon Sep 17 00:00:00 2001
From: Tomaz Canabrava <tomaz.canabrava@intel.com>
Date: Sun, 16 Nov 2014 23:22:58 -0200
Subject: [PATCH] fix 727 - position correctly the popup.
When the user entered a tag and that made the message box display
the popup with the possible choices was still in the old position
hidding the line edit.
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | qt-ui/kmessagewidget.cpp | 6 | ||||
-rw-r--r-- | qt-ui/kmessagewidget.h | 1 | ||||
-rw-r--r-- | qt-ui/maintab.cpp | 3 | ||||
-rw-r--r-- | qt-ui/tagwidget.cpp | 8 | ||||
-rw-r--r-- | qt-ui/tagwidget.h | 2 |
5 files changed, 19 insertions, 1 deletions
diff --git a/qt-ui/kmessagewidget.cpp b/qt-ui/kmessagewidget.cpp index fc733c02d..6059d707e 100644 --- a/qt-ui/kmessagewidget.cpp +++ b/qt-ui/kmessagewidget.cpp @@ -206,6 +206,12 @@ void KMessageWidget::setText(const QString &text) updateGeometry(); } +int KMessageWidget::bestContentHeight() const +{ + return d->bestContentHeight(); +} + + KMessageWidget::MessageType KMessageWidget::messageType() const { return d->messageType; diff --git a/qt-ui/kmessagewidget.h b/qt-ui/kmessagewidget.h index 90492b3cb..dbc694afa 100644 --- a/qt-ui/kmessagewidget.h +++ b/qt-ui/kmessagewidget.h @@ -165,6 +165,7 @@ Q_SLOTS: */ void setIcon(const QIcon &icon); + int bestContentHeight() const; Q_SIGNALS: /** * This signal is emitted when the user clicks a link in the text label. diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp index c20eddbe1..514d9567e 100644 --- a/qt-ui/maintab.cpp +++ b/qt-ui/maintab.cpp @@ -250,6 +250,9 @@ void MainTab::displayMessage(QString str) ui.diveStatisticsMessage->setText(str); ui.diveStatisticsMessage->animatedShow(); updateTextLabels(); + ui.tagWidget->fixPopupPosition(ui.diveNotesMessage->bestContentHeight()); + ui.buddy->fixPopupPosition(ui.diveNotesMessage->bestContentHeight()); + ui.divemaster->fixPopupPosition(ui.diveNotesMessage->bestContentHeight()); } void MainTab::updateTextLabels(bool showUnits) diff --git a/qt-ui/tagwidget.cpp b/qt-ui/tagwidget.cpp index 4045502aa..54b488aa0 100644 --- a/qt-ui/tagwidget.cpp +++ b/qt-ui/tagwidget.cpp @@ -195,3 +195,11 @@ void TagWidget::wheelEvent(QWheelEvent *event) GroupedLineEdit::wheelEvent(event); } } + +void TagWidget::fixPopupPosition(int delta) +{ + if(m_completer->popup()->isVisible()){ + QRect toGlobal = m_completer->popup()->geometry(); + m_completer->popup()->setGeometry(toGlobal.x(), toGlobal.y() + delta +10, toGlobal.width(), toGlobal.height()); + } +} diff --git a/qt-ui/tagwidget.h b/qt-ui/tagwidget.h index a3f5007fb..6a16129f3 100644 --- a/qt-ui/tagwidget.h +++ b/qt-ui/tagwidget.h @@ -17,6 +17,7 @@ public: void clear(); void setCursorPosition(int position); void wheelEvent(QWheelEvent *event); + void fixPopupPosition(int delta); public slots: void reparse(); @@ -25,7 +26,6 @@ slots: protected: void keyPressEvent(QKeyEvent *e); - private: QCompleter *m_completer; bool lastFinishedTag; |