to be compatible with 1.1.8
This commit is contained in:
parent
ae79a36f7b
commit
3a6dc19616
@ -585,7 +585,10 @@ impl AudioHandler {
|
||||
);
|
||||
audio_buffer.lock().unwrap().extend(buffer);
|
||||
} else {
|
||||
audio_buffer.lock().unwrap().extend(buffer[0..n].iter().cloned());
|
||||
audio_buffer
|
||||
.lock()
|
||||
.unwrap()
|
||||
.extend(buffer[0..n].iter().cloned());
|
||||
}
|
||||
}
|
||||
#[cfg(any(target_os = "android"))]
|
||||
@ -681,7 +684,7 @@ pub struct LoginConfigHandler {
|
||||
pub port_forward: (String, i32),
|
||||
pub support_press: bool,
|
||||
pub support_refresh: bool,
|
||||
pub internation_keyboard: bool,
|
||||
pub version: i64,
|
||||
}
|
||||
|
||||
impl Deref for LoginConfigHandler {
|
||||
@ -938,7 +941,7 @@ impl LoginConfigHandler {
|
||||
if !pi.version.is_empty() {
|
||||
self.support_press = true;
|
||||
self.support_refresh = true;
|
||||
self.internation_keyboard = crate::get_version_number(&pi.version) > 1001008;
|
||||
self.version = crate::get_version_number(&pi.version);
|
||||
}
|
||||
let serde = PeerInfoSerde {
|
||||
username,
|
||||
|
@ -233,6 +233,8 @@ impl Handler {
|
||||
let mut me = self.clone();
|
||||
let peer = self.peer_platform();
|
||||
let is_win = peer == "Windows";
|
||||
let version = self.lc.read().unwrap().version;
|
||||
const OFFSET_CASE: u8 = 'a' as u8 - 'A' as u8;
|
||||
std::thread::spawn(move || {
|
||||
// This will block.
|
||||
std::env::set_var("KEYBOARD_ONLY", "y"); // pass to rdev
|
||||
@ -329,7 +331,7 @@ impl Handler {
|
||||
if let Some(k) = control_key {
|
||||
key_event.set_control_key(k);
|
||||
} else {
|
||||
let chr = match evt.name {
|
||||
let mut chr = match evt.name {
|
||||
Some(ref s) => s.chars().next().unwrap_or('\0'),
|
||||
_ => '\0',
|
||||
};
|
||||
@ -338,6 +340,10 @@ impl Handler {
|
||||
me.lock_screen();
|
||||
return;
|
||||
}
|
||||
// <= 1.1.8, caps modifier only for 'a' -> 'z', so here adjust it
|
||||
if version <= 1001008 && chr >= 'A' && chr <= 'Z' {
|
||||
chr = (chr as u8 + OFFSET_CASE) as _;
|
||||
}
|
||||
key_event.set_chr(chr as _);
|
||||
} else {
|
||||
log::error!("Unknown key {:?}", evt);
|
||||
|
Loading…
x
Reference in New Issue
Block a user