diff --git a/Telegram/SourceFiles/chat_helpers/tabbed_panel.cpp b/Telegram/SourceFiles/chat_helpers/tabbed_panel.cpp index f39f357c4..ef7580b34 100644 --- a/Telegram/SourceFiles/chat_helpers/tabbed_panel.cpp +++ b/Telegram/SourceFiles/chat_helpers/tabbed_panel.cpp @@ -409,7 +409,7 @@ void TabbedPanel::showStarted() { } bool TabbedPanel::eventFilter(QObject *obj, QEvent *e) { - if (e->type() == QEvent::Enter) { + if (e->type() == QEvent::Enter && !_preventHover) { otherEnter(); } else if (e->type() == QEvent::Leave) { otherLeave(); diff --git a/Telegram/SourceFiles/chat_helpers/tabbed_panel.h b/Telegram/SourceFiles/chat_helpers/tabbed_panel.h index edaa45fa0..bd2861472 100644 --- a/Telegram/SourceFiles/chat_helpers/tabbed_panel.h +++ b/Telegram/SourceFiles/chat_helpers/tabbed_panel.h @@ -55,6 +55,10 @@ public: void hideAnimated(); void toggleAnimated(); + void setPreventHover(bool value) { + _preventHover = value; + } + ~TabbedPanel(); protected: @@ -118,6 +122,8 @@ private: Ui::Animations::Simple _a_opacity; base::Timer _hideTimer; + bool _preventHover = false; + }; } // namespace ChatHelpers diff --git a/Telegram/SourceFiles/history/history_widget.cpp b/Telegram/SourceFiles/history/history_widget.cpp index ed2964fe1..223c3bda1 100644 --- a/Telegram/SourceFiles/history/history_widget.cpp +++ b/Telegram/SourceFiles/history/history_widget.cpp @@ -4271,9 +4271,8 @@ void HistoryWidget::createTabbedPanel() { void HistoryWidget::setTabbedPanel(std::unique_ptr panel) { _tabbedPanel = std::move(panel); if (const auto raw = _tabbedPanel.get()) { - if (HoverEmojiPanel()) { - _tabbedSelectorToggle->installEventFilter(raw); - } + _tabbedPanel->setPreventHover(!HoverEmojiPanel()); + _tabbedSelectorToggle->installEventFilter(raw); _tabbedSelectorToggle->setColorOverrides(nullptr, nullptr, nullptr); } else { _tabbedSelectorToggle->setColorOverrides( diff --git a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp index 1476a43ec..9c37cb2f7 100644 --- a/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp +++ b/Telegram/SourceFiles/history/view/controls/history_view_compose_controls.cpp @@ -1926,9 +1926,8 @@ void ComposeControls::setTabbedPanel( std::unique_ptr panel) { _tabbedPanel = std::move(panel); if (const auto raw = _tabbedPanel.get()) { - if (HoverEmojiPanel()) { - _tabbedSelectorToggle->installEventFilter(raw); - } + _tabbedPanel->setPreventHover(!HoverEmojiPanel()); + _tabbedSelectorToggle->installEventFilter(raw); _tabbedSelectorToggle->setColorOverrides(nullptr, nullptr, nullptr); } else { _tabbedSelectorToggle->setColorOverrides(