2 files changed, 13 insertions, 2 deletions
diff --git a/include/emoji/Panel.h b/include/emoji/Panel.h
index 523a855e..ad233c27 100644
--- a/include/emoji/Panel.h
+++ b/include/emoji/Panel.h
@@ -37,8 +37,16 @@ signals:
void emojiSelected(const QString &emoji);
protected:
- void leaveEvent(QEvent *event);
- void paintEvent(QPaintEvent *event);
+ void leaveEvent(QEvent *event) override
+ {
+ emit leaving();
+ QWidget::leaveEvent(event);
+ }
+
+ void paintEvent(QPaintEvent *event) override;
+
+signals:
+ void leaving();
private:
void showCategory(const Category *category);
diff --git a/include/emoji/PickButton.h b/include/emoji/PickButton.h
index 9c30a549..9117e61f 100644
--- a/include/emoji/PickButton.h
+++ b/include/emoji/PickButton.h
@@ -18,6 +18,7 @@
#pragma once
#include <QEvent>
+#include <QTimer>
#include <QWidget>
#include "FlatButton.h"
@@ -37,6 +38,7 @@ signals:
protected:
void enterEvent(QEvent *e) override;
+ void leaveEvent(QEvent *e) override;
private:
// Vertical distance from panel's bottom.
@@ -46,5 +48,6 @@ private:
int horizontal_distance_ = 70;
QSharedPointer<Panel> panel_;
+ QTimer hideTimer_;
};
} // namespace emoji
|