aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/tty.rs6
-rw-r--r--src/ipc/server.rs5
-rw-r--r--src/niri.rs18
3 files changed, 21 insertions, 8 deletions
diff --git a/src/backend/tty.rs b/src/backend/tty.rs
index 4e7055ee..ddf6c54b 100644
--- a/src/backend/tty.rs
+++ b/src/backend/tty.rs
@@ -714,7 +714,7 @@ impl Tty {
.borrow()
.outputs
.iter()
- .find(|o| o.name == output_name)
+ .find(|o| o.name.eq_ignore_ascii_case(&output_name))
.cloned()
.unwrap_or_default();
@@ -1574,7 +1574,7 @@ impl Tty {
.borrow()
.outputs
.iter()
- .find(|o| o.name == surface.name)
+ .find(|o| o.name.eq_ignore_ascii_case(&surface.name))
.cloned()
.unwrap_or_default();
if config.off {
@@ -1704,7 +1704,7 @@ impl Tty {
.borrow()
.outputs
.iter()
- .find(|o| o.name == output_name)
+ .find(|o| o.name.eq_ignore_ascii_case(&output_name))
.cloned()
.unwrap_or_default();
diff --git a/src/ipc/server.rs b/src/ipc/server.rs
index 251f70bc..534fb072 100644
--- a/src/ipc/server.rs
+++ b/src/ipc/server.rs
@@ -171,7 +171,10 @@ fn process(ctx: &ClientCtx, request: Request) -> Reply {
}
Request::Output { output, action } => {
let ipc_outputs = ctx.ipc_outputs.lock().unwrap();
- let response = if ipc_outputs.contains_key(&output) {
+ let found = ipc_outputs
+ .keys()
+ .any(|name| name.eq_ignore_ascii_case(&output));
+ let response = if found {
OutputConfigChanged::Applied
} else {
OutputConfigChanged::OutputWasMissing
diff --git a/src/niri.rs b/src/niri.rs
index aee3650b..7d90baae 100644
--- a/src/niri.rs
+++ b/src/niri.rs
@@ -1012,7 +1012,10 @@ impl State {
for output in self.niri.global_space.outputs() {
let name = output.name();
let config = self.niri.config.borrow_mut();
- let config = config.outputs.iter().find(|o| o.name == name);
+ let config = config
+ .outputs
+ .iter()
+ .find(|o| o.name.eq_ignore_ascii_case(&name));
let scale = config.and_then(|c| c.scale).unwrap_or_else(|| {
let size_mm = output.physical_properties().size;
@@ -1058,7 +1061,11 @@ impl State {
pub fn apply_transient_output_config(&mut self, name: &str, action: niri_ipc::OutputAction) {
{
let mut config = self.niri.config.borrow_mut();
- let config = if let Some(config) = config.outputs.iter_mut().find(|o| o.name == name) {
+ let config = if let Some(config) = config
+ .outputs
+ .iter_mut()
+ .find(|o| o.name.eq_ignore_ascii_case(name))
+ {
config
} else {
config.outputs.push(niri_config::Output {
@@ -1564,7 +1571,7 @@ impl Niri {
let config = config
.outputs
.iter()
- .find(|o| o.name == name)
+ .find(|o| o.name.eq_ignore_ascii_case(&name))
.and_then(|c| c.position);
outputs.push(Data {
@@ -1670,7 +1677,10 @@ impl Niri {
let name = output.name();
let config = self.config.borrow();
- let c = config.outputs.iter().find(|o| o.name == name);
+ let c = config
+ .outputs
+ .iter()
+ .find(|o| o.name.eq_ignore_ascii_case(&name));
let scale = c.and_then(|c| c.scale).unwrap_or_else(|| {
let size_mm = output.physical_properties().size;
let resolution = output.current_mode().unwrap().size;