diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9eb964f682961542097477333250f79140b8d957..120dd62579b468747a2b4646a903ea6ff88e9748 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -34,6 +34,7 @@ current (development)
 - Bugfix: Propertly restore cursor shape on exit. See #792.
 - Bugfix: Fix cursor position in when in the last column. See #831.
 - Bugfix: Fix `ResizeableSplit` keyboard navigation. Fixed by #842.
+- Bugfix: Fix `Menu` focus. See #841
 
 ### Dom
 - Feature: Add `hscroll_indicator`. It display an horizontal indicator
diff --git a/src/ftxui/component/menu.cpp b/src/ftxui/component/menu.cpp
index 21a73d893cfdb4bc9e326656056aa5c5a5ec74c0..76936364e5f61e3fe4e2ec61aaef91aee284c2b4 100644
--- a/src/ftxui/component/menu.cpp
+++ b/src/ftxui/component/menu.cpp
@@ -131,8 +131,9 @@ class MenuBase : public ComponentBase, public MenuOption {
           is_focused,
       };
 
-      auto focus_management =
-          is_menu_focused && (selected_focus_ == i) ? focus : nothing;
+      auto focus_management = (selected_focus_ != i) ? nothing
+                              : is_menu_focused      ? focus
+                                                     : select;
 
       const Element element =
           (entries_option.transform ? entries_option.transform