diff options
Diffstat (limited to 'src/niri.rs')
| -rw-r--r-- | src/niri.rs | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/src/niri.rs b/src/niri.rs index a4801cc5..ef4e8e6c 100644 --- a/src/niri.rs +++ b/src/niri.rs @@ -4519,6 +4519,7 @@ impl Niri { &mut self, renderer: &mut GlesRenderer, output: &Output, + write_to_disk: bool, ) -> anyhow::Result<()> { let _span = tracy_client::span!("Niri::screenshot"); @@ -4541,7 +4542,7 @@ impl Niri { elements, )?; - self.save_screenshot(size, pixels) + self.save_screenshot(size, pixels, write_to_disk) .context("error saving screenshot") } @@ -4550,6 +4551,7 @@ impl Niri { renderer: &mut GlesRenderer, output: &Output, mapped: &Mapped, + write_to_disk: bool, ) -> anyhow::Result<()> { let _span = tracy_client::span!("Niri::screenshot_window"); @@ -4585,7 +4587,7 @@ impl Niri { elements, )?; - self.save_screenshot(geo.size, pixels) + self.save_screenshot(geo.size, pixels, write_to_disk) .context("error saving screenshot") } @@ -4593,14 +4595,17 @@ impl Niri { &self, size: Size<i32, Physical>, pixels: Vec<u8>, + write_to_disk: bool, ) -> anyhow::Result<()> { - let path = match make_screenshot_path(&self.config.borrow()) { - Ok(path) => path, - Err(err) => { - warn!("error making screenshot path: {err:?}"); - None - } - }; + let path = write_to_disk + .then(|| match make_screenshot_path(&self.config.borrow()) { + Ok(path) => path, + Err(err) => { + warn!("error making screenshot path: {err:?}"); + None + } + }) + .flatten(); // Prepare to set the encoded image as our clipboard selection. This must be done from the // main thread. |
