summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qt-ui/kmessagewidget.cpp6
-rw-r--r--qt-ui/kmessagewidget.h1
-rw-r--r--qt-ui/maintab.cpp3
-rw-r--r--qt-ui/tagwidget.cpp8
-rw-r--r--qt-ui/tagwidget.h2
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;