From f87c6cbd7caed01387fbf73b0a91e3f83eb97d1a Mon Sep 17 00:00:00 2001 From: Ales Tsurko Date: Mon, 23 Jan 2023 12:06:54 +0300 Subject: [PATCH] Derive Hash for KeyboardShortcut and Modifiers (#2563) --- crates/egui/src/data/input.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/egui/src/data/input.rs b/crates/egui/src/data/input.rs index 4c64b56a..30dab676 100644 --- a/crates/egui/src/data/input.rs +++ b/crates/egui/src/data/input.rs @@ -314,7 +314,7 @@ pub const NUM_POINTER_BUTTONS: usize = 5; /// NOTE: For cross-platform uses, ALT+SHIFT is a bad combination of modifiers /// as on mac that is how you type special characters, /// so those key presses are usually not reported to egui. -#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)] +#[derive(Clone, Copy, Debug, Default, Hash, PartialEq, Eq)] #[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))] pub struct Modifiers { /// Either of the alt keys are down (option ⌥ on Mac). @@ -777,7 +777,7 @@ impl Key { /// /// Can be used with [`crate::InputState::consume_shortcut`] /// and [`crate::Context::format_shortcut`]. -#[derive(Clone, Copy, Debug, PartialEq, Eq)] +#[derive(Clone, Copy, Debug, Hash, PartialEq, Eq)] pub struct KeyboardShortcut { pub modifiers: Modifiers, pub key: Key,