diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/bar.rs | 14 | ||||
| -rw-r--r-- | src/config.rs | 2 |
2 files changed, 13 insertions, 3 deletions
@@ -118,12 +118,20 @@ impl Bar { let cairo_ctx = cairo::Context::new(&cairo_surf).expect("cairo context"); cairo_ctx.scale(scale_f, scale_f); + if !ss.config.blend { + cairo_ctx.set_operator(cairo::Operator::Source); + } + // Background - cairo_ctx.save().unwrap(); - cairo_ctx.set_operator(cairo::Operator::Source); + if ss.config.blend { + cairo_ctx.save().unwrap(); + cairo_ctx.set_operator(cairo::Operator::Source); + } ss.config.background.apply(&cairo_ctx); cairo_ctx.paint().unwrap(); - cairo_ctx.restore().unwrap(); + if ss.config.blend { + cairo_ctx.restore().unwrap(); + } // Compute tags if self.tags_computed.is_empty() { diff --git a/src/config.rs b/src/config.rs index f6ff47d..382f968 100644 --- a/src/config.rs +++ b/src/config.rs @@ -43,6 +43,7 @@ pub struct Config { pub hide_inactive_tags: bool, pub invert_touchpad_scrolling: bool, pub show_layout_name: bool, + pub blend: bool, // wm-specific pub wm: WmConfig, // overrides @@ -83,6 +84,7 @@ impl Default for Config { hide_inactive_tags: true, invert_touchpad_scrolling: true, show_layout_name: true, + blend: true, wm: WmConfig { river: RiverConfig { max_tag: 9 }, |
