From 717f90eae4b681cce320cf1cf2b80e2441eaad89 Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Fri, 1 May 2026 22:53:07 -0400 Subject: [PATCH] Fix the control window losing focus when you resize the presenter window. --- src/control_ui.cpp | 4 ++-- src/main.cpp | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/control_ui.cpp b/src/control_ui.cpp index df8d3af..3ddc5f0 100644 --- a/src/control_ui.cpp +++ b/src/control_ui.cpp @@ -89,10 +89,10 @@ void ControlUI::render(sf::RenderWindow& window, SlideDeck& deck) { void ControlUI::full_screen(bool do_it) { if(do_it) { $presenter.setSize($window_size); - $presenter.setMouseCursorVisible(false); + $controller.requestFocus(); } else { $presenter.setSize({$window_size.x/2, $window_size.y/2}); - $presenter.setMouseCursorVisible(true); + $controller.requestFocus(); } $full_screen = do_it; diff --git a/src/main.cpp b/src/main.cpp index 4d88e0f..5d694e8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -67,15 +67,14 @@ int main(int argc, char *argv[]) { return a.size.x == WINDOW_WIDTH && a.size.y == WINDOW_HEIGHT; }); - sf::RenderWindow controller(sf::VideoMode({CONTROL_WIDTH, CONTROL_HEIGHT}), "Bezos Loves Control"); - sf::RenderWindow presenter(*screen_mode, "Bezos Loves Slides", sf::Style::None, sf::State::Windowed); - presenter.setMouseCursorVisible(false); presenter.setFramerateLimit(FRAME_LIMIT); presenter.setVerticalSyncEnabled(VSYNC); + sf::RenderWindow controller(sf::VideoMode({CONTROL_WIDTH, CONTROL_HEIGHT}), "Bezos Loves Control"); + auto backend = std::make_shared(); auto slides = load_slides(argv[1], backend);