From b8b565d0c317b96310955b4ed157f349e2883a4d Mon Sep 17 00:00:00 2001 From: Thomas <48214567+ThomasFrans@users.noreply.github.com> Date: Wed, 24 Aug 2022 20:41:55 +0200 Subject: [PATCH] Fix back button mouse left click --- src/ui/layout.rs | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/ui/layout.rs b/src/ui/layout.rs index 63b8518..5470e11 100644 --- a/src/ui/layout.rs +++ b/src/ui/layout.rs @@ -3,7 +3,7 @@ use std::time::{Duration, SystemTime}; use cursive::align::HAlign; use cursive::direction::Direction; -use cursive::event::{AnyCb, Event, EventResult, MouseButton}; +use cursive::event::{AnyCb, Event, EventResult, MouseButton, MouseEvent}; use cursive::theme::{ColorStyle, ColorType, Theme}; use cursive::traits::View; use cursive::vec::Vec2; @@ -298,11 +298,15 @@ impl View for Layout { } = event { if position.y == 0 { - // if user clicks within first third of first line, treat it as - // a click on the back button - if mouseevent.button() == Some(MouseButton::Left) + if mouseevent == MouseEvent::Press(MouseButton::Left) && !self.is_current_stack_empty() - && position.x <= self.last_size.x.saturating_div(3) + && position.x + < self + .get_current_screen() + .map(|screen| screen.title()) + .unwrap_or_default() + .len() + + 3 { self.pop_view(); }