Merge branch 'flutter_desktop'

This commit is contained in:
Asura
2022-08-26 22:00:49 -07:00
10 changed files with 298 additions and 211 deletions

View File

@@ -1681,7 +1681,7 @@ pub enum Data {
}
/// Keycode for key events.
#[derive(Clone)]
#[derive(Clone, Debug)]
pub enum Key {
ControlKey(ControlKey),
Chr(u32),

View File

@@ -373,6 +373,16 @@ impl Session {
}
}
pub fn input_raw_key(&self, keycode: i32, scancode: i32, down: bool){
use rdev::{EventType::*, Key as RdevKey, *};
if scancode < 0 || keycode < 0{
return;
}
let key = rdev::key_from_scancode(scancode.try_into().unwrap()) as RdevKey;
log::info!("{:?}", key);
}
/// Input a string of text.
/// String is parsed into individual key presses.
///
@@ -471,7 +481,7 @@ impl Session {
}
let mut msg_out = Message::new();
msg_out.set_key_event(key_event);
log::debug!("{:?}", msg_out);
// log::debug!("{:?}", msg_out);
self.send_msg(msg_out);
}

View File

@@ -208,6 +208,12 @@ pub fn session_switch_display(id: String, value: i32) {
}
}
pub fn session_input_raw_key(id: String, keycode: i32, scancode:i32, down: bool){
if let Some(session) = SESSIONS.read().unwrap().get(&id) {
session.input_raw_key(keycode, scancode, down);
}
}
pub fn session_input_key(
id: String,
name: String,