aboutsummaryrefslogtreecommitdiff
path: root/src/window
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-02-02 08:41:42 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-02-10 07:29:33 -0800
commita451f75917e427a4b4c7d986ce74e5a3999e563d (patch)
tree0e0f74e81e85485d5ff07f2ceb5567d4059a06d2 /src/window
parent1515410012842c419e8bc3de717b8a51b1a0b45c (diff)
downloadniri-a451f75917e427a4b4c7d986ce74e5a3999e563d.tar.gz
niri-a451f75917e427a4b4c7d986ce74e5a3999e563d.tar.bz2
niri-a451f75917e427a4b4c7d986ce74e5a3999e563d.zip
Implement tab indicators
Diffstat (limited to 'src/window')
-rw-r--r--src/window/mod.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/window/mod.rs b/src/window/mod.rs
index ec0f7150..10aecbfe 100644
--- a/src/window/mod.rs
+++ b/src/window/mod.rs
@@ -2,7 +2,7 @@ use std::cmp::{max, min};
use niri_config::{
BlockOutFrom, BorderRule, CornerRadius, FloatingPosition, Match, PresetSize, ShadowRule,
- WindowRule,
+ TabIndicatorRule, WindowRule,
};
use niri_ipc::ColumnDisplay;
use smithay::reexports::wayland_protocols::xdg::shell::server::xdg_toplevel;
@@ -83,6 +83,8 @@ pub struct ResolvedWindowRules {
pub border: BorderRule,
/// Shadow overrides.
pub shadow: ShadowRule,
+ /// Tab indicator overrides.
+ pub tab_indicator: TabIndicatorRule,
/// Whether or not to draw the border with a solid background.
///
@@ -191,6 +193,12 @@ impl ResolvedWindowRules {
color: None,
inactive_color: None,
},
+ tab_indicator: TabIndicatorRule {
+ active_color: None,
+ inactive_color: None,
+ active_gradient: None,
+ inactive_gradient: None,
+ },
draw_border_with_background: None,
opacity: None,
geometry_corner_radius: None,
@@ -290,6 +298,7 @@ impl ResolvedWindowRules {
resolved.focus_ring.merge_with(&rule.focus_ring);
resolved.border.merge_with(&rule.border);
resolved.shadow.merge_with(&rule.shadow);
+ resolved.tab_indicator.merge_with(&rule.tab_indicator);
if let Some(x) = rule.draw_border_with_background {
resolved.draw_border_with_background = Some(x);