diff options
Diffstat (limited to 'src/render_helpers/debug.rs')
| -rw-r--r-- | src/render_helpers/debug.rs | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/render_helpers/debug.rs b/src/render_helpers/debug.rs index 164e4370..6843aeb4 100644 --- a/src/render_helpers/debug.rs +++ b/src/render_helpers/debug.rs @@ -1,10 +1,11 @@ use smithay::backend::renderer::damage::OutputDamageTracker; -use smithay::backend::renderer::element::solid::SolidColorRenderElement; use smithay::backend::renderer::element::{Element, Id, Kind}; use smithay::backend::renderer::utils::CommitCounter; +use smithay::backend::renderer::Color32F; use smithay::utils::Scale; use super::renderer::NiriRenderer; +use super::solid_color::SolidColorRenderElement; use crate::niri::OutputRenderElements; pub fn draw_opaque_regions<R: NiriRenderer>( @@ -35,9 +36,9 @@ pub fn draw_opaque_regions<R: NiriRenderer>( for rect in opaque { let color = SolidColorRenderElement::new( Id::new(), - rect, + rect.to_f64().to_logical(scale), CommitCounter::default(), - [0., 0., 0.2, 0.2], + Color32F::from([0., 0., 0.2, 0.2]), Kind::Unspecified, ); elements.insert(i - 1, OutputRenderElements::SolidColor(color)); @@ -47,9 +48,9 @@ pub fn draw_opaque_regions<R: NiriRenderer>( for rect in semitransparent { let color = SolidColorRenderElement::new( Id::new(), - rect, + rect.to_f64().to_logical(scale), CommitCounter::default(), - [0.3, 0., 0., 0.3], + Color32F::from([0.3, 0., 0., 0.3]), Kind::Unspecified, ); elements.insert(i - 1, OutputRenderElements::SolidColor(color)); @@ -64,6 +65,10 @@ pub fn draw_damage<R: NiriRenderer>( ) { let _span = tracy_client::span!("draw_damage"); + let Ok((_, scale, _)) = damage_tracker.mode().try_into() else { + return; + }; + let Ok((Some(damage), _)) = damage_tracker.damage_output(1, elements) else { return; }; @@ -71,9 +76,9 @@ pub fn draw_damage<R: NiriRenderer>( for rect in damage { let color = SolidColorRenderElement::new( Id::new(), - *rect, + rect.to_f64().to_logical(scale), CommitCounter::default(), - [0.3, 0., 0., 0.3], + Color32F::from([0.3, 0., 0., 0.3]), Kind::Unspecified, ); elements.insert(0, OutputRenderElements::SolidColor(color)); |
