From 912f0b48a648e7f12e7bcba82a0f0ec326aab8dd Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Wed, 20 Jan 2021 00:12:46 +0300 Subject: [PATCH] Fixed mouse selecting of menu item when it was deselected via keyboard. --- ui/widgets/menu/menu_item_base.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ui/widgets/menu/menu_item_base.cpp b/ui/widgets/menu/menu_item_base.cpp index f149b98..bf136e1 100644 --- a/ui/widgets/menu/menu_item_base.cpp +++ b/ui/widgets/menu/menu_item_base.cpp @@ -22,6 +22,7 @@ void ItemBase::setSelected( return; } if (_selected.current() != selected) { + setMouseTracking(!selected); _lastTriggeredSource = source; _selected = selected; update(); @@ -112,9 +113,10 @@ void ItemBase::enableMouseSelecting() { ) | rpl::filter([=](not_null e) { return action()->isEnabled() && ((e->type() == QEvent::Leave) - || (e->type() == QEvent::Enter)); + || (e->type() == QEvent::Enter) + || (e->type() == QEvent::MouseMove)); }) | rpl::map([=](not_null e) { - return (e->type() == QEvent::Enter); + return (e->type() != QEvent::Leave); }) | rpl::start_with_next([=](bool selected) { setSelected(selected); }, lifetime());