This commit is contained in:
Timon
2026-03-24 01:10:38 +00:00
parent 36366b34f2
commit 78f157454a
2 changed files with 12 additions and 2 deletions

View File

@@ -6,7 +6,7 @@ mod keymap;
use keymap::{ToCharRepresentation, ToNativeKeycode, ToVKBits};
mod state;
pub(crate) use state::{CefModifiers, InputState};
pub(crate) use state::{CefModifiers, ClickCount, InputState};
use super::consts::{PINCH_ZOOM_SPEED, SCROLL_LINE_HEIGHT, SCROLL_LINE_WIDTH, SCROLL_SPEED_X, SCROLL_SPEED_Y};
@@ -36,7 +36,11 @@ pub(crate) fn handle_window_event(browser: &Browser, input_state: &mut InputStat
}
};
let cef_click_count = input_state.mouse_input(mouse_button, state).into();
let click_count = input_state.mouse_input(mouse_button, state);
if matches!(click_count, ClickCount::Ignore) {
return;
}
let cef_click_count = click_count.into();
let cef_mouse_up = match state {
ElementState::Pressed => 0,
ElementState::Released => 1,

View File

@@ -173,6 +173,10 @@ impl ClickTracker {
}
}
if matches!(state, ElementState::Released) && record.down_count != record.up_count {
return ClickCount::Ignore;
}
count
}
}
@@ -183,6 +187,7 @@ pub(crate) enum ClickCount {
Single,
Double,
Triple,
Ignore,
}
impl From<ClickCount> for i32 {
fn from(count: ClickCount) -> i32 {
@@ -190,6 +195,7 @@ impl From<ClickCount> for i32 {
ClickCount::Single => 1,
ClickCount::Double => 2,
ClickCount::Triple => 3,
ClickCount::Ignore => 0,
}
}
}