From 6b4cc4e7e9df8e64a5c64e5b00f411ad71eab569 Mon Sep 17 00:00:00 2001 From: mlangkabel Date: Wed, 25 Oct 2017 12:33:03 +0200 Subject: [PATCH] ui: fixed search bar click --- setup/Linux/Sourcetrail.sh | 2 ++ src/lib_gui/qt/element/QtSmartSearchBox.cpp | 15 +++++++++++++-- src/lib_gui/qt/element/QtSmartSearchBox.h | 1 + 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/setup/Linux/Sourcetrail.sh b/setup/Linux/Sourcetrail.sh index a3f93bbb..ff251338 100644 --- a/setup/Linux/Sourcetrail.sh +++ b/setup/Linux/Sourcetrail.sh @@ -1,3 +1,5 @@ +#!/bin/sh + # get the current directory SOURCE="${0}" while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink diff --git a/src/lib_gui/qt/element/QtSmartSearchBox.cpp b/src/lib_gui/qt/element/QtSmartSearchBox.cpp index d848d7ae..f2fa53a0 100644 --- a/src/lib_gui/qt/element/QtSmartSearchBox.cpp +++ b/src/lib_gui/qt/element/QtSmartSearchBox.cpp @@ -472,10 +472,10 @@ void QtSmartSearchBox::mouseMoveEvent(QMouseEvent* event) void QtSmartSearchBox::mousePressEvent(QMouseEvent* event) { - QLineEdit::mousePressEvent(event); - if (!m_ignoreNextMousePress) { + QLineEdit::mousePressEvent(event); + m_mousePressed = true; m_mouseX = event->x(); } @@ -609,6 +609,12 @@ void QtSmartSearchBox::onAutocompletionActivated(const SearchMatch& match) void QtSmartSearchBox::onElementSelected(QtSearchElement* element) { + if (m_ignoreNextMousePress) + { + m_ignoreNextMousePress = false; + return; + } + if (!hasSelectedElements() && !m_shiftKeyDown) { editElement(element); @@ -756,6 +762,11 @@ SearchMatch QtSmartSearchBox::editElement(QtSearchElement* element) void QtSmartSearchBox::updateElements() { + m_oldElements = m_elements; + for (auto e : m_oldElements) + { + e->hide(); + } m_elements.clear(); ColorScheme* scheme = ColorScheme::getInstance().get(); diff --git a/src/lib_gui/qt/element/QtSmartSearchBox.h b/src/lib_gui/qt/element/QtSmartSearchBox.h index 46eaff15..7b659c7c 100644 --- a/src/lib_gui/qt/element/QtSmartSearchBox.h +++ b/src/lib_gui/qt/element/QtSmartSearchBox.h @@ -109,6 +109,7 @@ private: SearchMatch m_oldMatch; std::vector> m_elements; + std::vector> m_oldElements; size_t m_cursorIndex;