Merge branch 'input-method-enable' of https://gitlab.com/flamingradian/unfettered-keyboard into HEAD
This commit is contained in:
commit
2eba66cca7
3 changed files with 26 additions and 6 deletions
|
|
@ -110,3 +110,4 @@ Configuration example:
|
|||
|
||||
wayland:
|
||||
height: 185
|
||||
input-method: true
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ pub struct Configuration {
|
|||
repeat: u64,
|
||||
layout: String,
|
||||
wayland_height: i32,
|
||||
wayland_im_enable: bool,
|
||||
}
|
||||
|
||||
impl Configuration {
|
||||
|
|
@ -30,6 +31,13 @@ impl Configuration {
|
|||
let height = height.expect("Wayland height should be a 32-bit signed integer");
|
||||
self.wayland_height = height;
|
||||
}
|
||||
|
||||
let im_enable = yaml.get(&Yaml::String(String::from("input-method")));
|
||||
if let Some(im_enable) = im_enable {
|
||||
let im_enable = im_enable.as_bool();
|
||||
let im_enable = im_enable.expect("Wayland height should be a 32-bit signed integer");
|
||||
self.wayland_im_enable = im_enable;
|
||||
}
|
||||
}
|
||||
|
||||
pub fn load() -> Result<Self, LoadError>
|
||||
|
|
@ -39,6 +47,7 @@ impl Configuration {
|
|||
repeat: 25,
|
||||
layout: String::from("latn_qwerty_us.xml"),
|
||||
wayland_height: 185,
|
||||
wayland_im_enable: true,
|
||||
};
|
||||
|
||||
if let Ok(file) = File::open("/etc/unfettered-keyboard.yaml") {
|
||||
|
|
@ -104,4 +113,10 @@ impl Configuration {
|
|||
{
|
||||
self.wayland_height
|
||||
}
|
||||
|
||||
#[inline(always)]
|
||||
pub fn wayland_im_enable(&self) -> bool
|
||||
{
|
||||
self.wayland_im_enable
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,13 +68,17 @@ impl Dispatcher {
|
|||
Err(_) => None,
|
||||
};
|
||||
|
||||
let im_man = match globals.bind(&queue, 1..=1, ()) {
|
||||
Ok(g) => Some(g),
|
||||
Err(_) => None,
|
||||
};
|
||||
let im_man = if cfg.wayland_im_enable() {
|
||||
let _: Result<zwp_input_method_v1::ZwpInputMethodV1, BindError>
|
||||
= globals.bind(&queue, 1..=1, ());
|
||||
|
||||
let _: Result<zwp_input_method_v1::ZwpInputMethodV1, BindError>
|
||||
= globals.bind(&queue, 1..=1, ());
|
||||
match globals.bind(&queue, 1..=1, ()) {
|
||||
Ok(g) => Some(g),
|
||||
Err(_) => None,
|
||||
}
|
||||
} else {
|
||||
None
|
||||
};
|
||||
|
||||
let frac_scale_man = match globals.bind(&queue, 1..=1, ()) {
|
||||
Ok(g) => Some(g),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue