core: config: add config option to enable the wayland input method
Having multiple input methods at once causes behaviour defined by the Wayland compositor. In a recent update by Phoc, the most recently started input method would take priority to demonstrate the instability. Add a configuration option so the Wayland input method can be disabled to accommodate a second input method. Also update the README with the new option.
This commit is contained in:
parent
57265544ab
commit
4cd29eec3b
2 changed files with 16 additions and 0 deletions
|
|
@ -110,3 +110,4 @@ Configuration example:
|
||||||
|
|
||||||
wayland:
|
wayland:
|
||||||
height: 185
|
height: 185
|
||||||
|
input-method: true
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ pub struct Configuration {
|
||||||
repeat: u64,
|
repeat: u64,
|
||||||
layout: String,
|
layout: String,
|
||||||
wayland_height: i32,
|
wayland_height: i32,
|
||||||
|
wayland_im_enable: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Configuration {
|
impl Configuration {
|
||||||
|
|
@ -30,6 +31,13 @@ impl Configuration {
|
||||||
let height = height.expect("Wayland height should be a 32-bit signed integer");
|
let height = height.expect("Wayland height should be a 32-bit signed integer");
|
||||||
self.wayland_height = height;
|
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>
|
pub fn load() -> Result<Self, LoadError>
|
||||||
|
|
@ -39,6 +47,7 @@ impl Configuration {
|
||||||
repeat: 25,
|
repeat: 25,
|
||||||
layout: String::from("latn_qwerty_us.xml"),
|
layout: String::from("latn_qwerty_us.xml"),
|
||||||
wayland_height: 185,
|
wayland_height: 185,
|
||||||
|
wayland_im_enable: true,
|
||||||
};
|
};
|
||||||
|
|
||||||
if let Ok(file) = File::open("/etc/unfettered-keyboard.yaml") {
|
if let Ok(file) = File::open("/etc/unfettered-keyboard.yaml") {
|
||||||
|
|
@ -106,4 +115,10 @@ impl Configuration {
|
||||||
{
|
{
|
||||||
self.wayland_height
|
self.wayland_height
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[inline(always)]
|
||||||
|
pub fn wayland_im_enable(&self) -> bool
|
||||||
|
{
|
||||||
|
self.wayland_im_enable
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue