diff options
-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; |