aboutsummaryrefslogtreecommitdiff
path: root/src/input
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-08-20 14:31:34 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-08-20 14:43:50 +0300
commite81f356908fe38ec45c74cf822dd102efbcf6457 (patch)
tree5c5263b210a0755f48b1511cc1ff8c2697e095a6 /src/input
parent1013147ba3154788cb16ffc32b8155fd2008dfa3 (diff)
downloadniri-e81f356908fe38ec45c74cf822dd102efbcf6457.tar.gz
niri-e81f356908fe38ec45c74cf822dd102efbcf6457.tar.bz2
niri-e81f356908fe38ec45c74cf822dd102efbcf6457.zip
Add spawn-sh, spawn-at-startup-sh
Our top 10 most confusing config moments
Diffstat (limited to 'src/input')
-rw-r--r--src/input/mod.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/input/mod.rs b/src/input/mod.rs
index cc07aed3..711a09dd 100644
--- a/src/input/mod.rs
+++ b/src/input/mod.rs
@@ -44,7 +44,7 @@ use crate::layout::scrolling::ScrollDirection;
use crate::layout::{ActivateWindow, LayoutElement as _};
use crate::niri::{CastTarget, PointerVisibility, State};
use crate::ui::screenshot_ui::ScreenshotUi;
-use crate::utils::spawning::spawn;
+use crate::utils::spawning::{spawn, spawn_sh};
use crate::utils::{center, get_monotonic_time, ResizeEdge};
pub mod backend_ext;
@@ -595,6 +595,10 @@ impl State {
let (token, _) = self.niri.activation_state.create_external_token(None);
spawn(command, Some(token.clone()));
}
+ Action::SpawnSh(command) => {
+ let (token, _) = self.niri.activation_state.create_external_token(None);
+ spawn_sh(command, Some(token.clone()));
+ }
Action::DoScreenTransition(delay_ms) => {
self.backend.with_primary_renderer(|renderer| {
self.niri.do_screen_transition(renderer, delay_ms);