aboutsummaryrefslogtreecommitdiff
path: root/src/utils
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-05-12 08:16:01 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-05-12 09:10:59 +0300
commitc98537a2b084b5c7a38578ffe15f410d967758ac (patch)
treeea44a5db18cb802fbefe2dfc3e9f04ba79c836ef /src/utils
parent9c103f1f1d3636d28d2759138e4ebf9eebbe5e0c (diff)
downloadniri-c98537a2b084b5c7a38578ffe15f410d967758ac.tar.gz
niri-c98537a2b084b5c7a38578ffe15f410d967758ac.tar.bz2
niri-c98537a2b084b5c7a38578ffe15f410d967758ac.zip
Implement baba-is-float for layers
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/mod.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/utils/mod.rs b/src/utils/mod.rs
index c1e57b7b..2ac37721 100644
--- a/src/utils/mod.rs
+++ b/src/utils/mod.rs
@@ -1,4 +1,5 @@
use std::cmp::{max, min};
+use std::f64;
use std::ffi::{CString, OsStr};
use std::io::Write;
use std::os::unix::prelude::OsStrExt;
@@ -396,6 +397,12 @@ pub fn center_preferring_top_left_in_area(
area.loc + offset
}
+pub fn baba_is_float_offset(now: Duration, view_height: f64) -> f64 {
+ let now = now.as_secs_f64();
+ let amplitude = view_height / 96.;
+ amplitude * ((f64::consts::TAU * now / 3.6).sin() - 1.)
+}
+
#[cfg(feature = "dbus")]
pub fn show_screenshot_notification(image_path: Option<PathBuf>) -> anyhow::Result<()> {
use std::collections::HashMap;