mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-15 22:28:10 +08:00
Desktop: Implement pointer lock for NumberInput (#3638)
* Desktop: Implement pointer lock for NumberInput * add shift and ctrl modifiers * fixup
This commit is contained in:
@@ -6,6 +6,8 @@ use super::app_window_message_handler::AppWindowPlatform;
|
||||
#[derive(PartialEq, Clone, Debug, serde::Serialize, serde::Deserialize)]
|
||||
pub enum AppWindowMessage {
|
||||
UpdatePlatform { platform: AppWindowPlatform },
|
||||
PointerLock,
|
||||
PointerLockMove { x: f64, y: f64 },
|
||||
Close,
|
||||
Minimize,
|
||||
Maximize,
|
||||
|
||||
@@ -15,6 +15,12 @@ impl MessageHandler<AppWindowMessage, ()> for AppWindowMessageHandler {
|
||||
self.platform = platform;
|
||||
responses.add(FrontendMessage::UpdatePlatform { platform: self.platform });
|
||||
}
|
||||
AppWindowMessage::PointerLock => {
|
||||
responses.add(FrontendMessage::WindowPointerLock);
|
||||
}
|
||||
AppWindowMessage::PointerLockMove { x, y } => {
|
||||
responses.add(FrontendMessage::WindowPointerLockMove { x, y });
|
||||
}
|
||||
AppWindowMessage::Close => {
|
||||
responses.add(FrontendMessage::WindowClose);
|
||||
}
|
||||
|
||||
@@ -364,6 +364,11 @@ pub enum FrontendMessage {
|
||||
},
|
||||
|
||||
// Window prefix: cause the application window to do something
|
||||
WindowPointerLock,
|
||||
WindowPointerLockMove {
|
||||
x: f64,
|
||||
y: f64,
|
||||
},
|
||||
WindowClose,
|
||||
WindowMinimize,
|
||||
WindowMaximize,
|
||||
|
||||
Reference in New Issue
Block a user