Replace glass effects with plain backdrop blur and refine shell layout

This commit is contained in:
Samuel Onoja committed 2026-09-26 09:12:51 +01:00
1 parent af32c29a49
commit 64c95f0b97
13 files changed
+823 -1036

No files matched your search

+3 -27
View File
@@ -5,10 +5,7 @@ use smithay::utils::{Physical, Rectangle};
const REPORT_INTERVAL: Duration = Duration::from_secs(5);
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
pub(crate) struct FrameEffectMetrics {
pub(crate) blur_regions: u64,
pub(crate) blur_sample_pixels: u64,
}
pub(crate) struct FrameEffectMetrics;
#[derive(Debug)]
pub(crate) struct RenderMetrics {
@@ -19,9 +16,6 @@ pub(crate) struct RenderMetrics {
damaged_pixels: u64,
total_render_time: Duration,
longest_render_time: Duration,
blur_frames: u64,
blur_regions: u64,
blur_sample_pixels: u64,
}
impl RenderMetrics {
@@ -42,9 +36,6 @@ impl RenderMetrics {
damaged_pixels: 0,
total_render_time: Duration::ZERO,
longest_render_time: Duration::ZERO,
blur_frames: 0,
blur_regions: 0,
blur_sample_pixels: 0,
}
}
@@ -53,7 +44,7 @@ impl RenderMetrics {
render_time: Duration,
damage: &[Rectangle<i32, Physical>],
missed_deadlines: u64,
effects: FrameEffectMetrics,
_effects: FrameEffectMetrics,
) {
if !self.enabled {
return;
@@ -63,9 +54,6 @@ impl RenderMetrics {
self.damaged_pixels += damage.iter().map(rectangle_area).sum::<u64>();
self.total_render_time += render_time;
self.longest_render_time = self.longest_render_time.max(render_time);
self.blur_frames += u64::from(effects.blur_regions > 0);
self.blur_regions += effects.blur_regions;
self.blur_sample_pixels += effects.blur_sample_pixels;
let now = Instant::now();
let elapsed = now.saturating_duration_since(self.interval_started);
@@ -87,9 +75,6 @@ impl RenderMetrics {
average_render_us,
longest_render_us = self.longest_render_time.as_micros(),
missed_deadlines,
blur_frames = self.blur_frames,
blur_regions = self.blur_regions,
blur_sample_pixels = self.blur_sample_pixels,
"render performance"
);
@@ -98,9 +83,6 @@ impl RenderMetrics {
self.damaged_pixels = 0;
self.total_render_time = Duration::ZERO;
self.longest_render_time = Duration::ZERO;
self.blur_frames = 0;
self.blur_regions = 0;
self.blur_sample_pixels = 0;
}
}
@@ -139,18 +121,12 @@ mod tests {
Rectangle::new((10, 10).into(), (20, 10).into()),
],
0,
FrameEffectMetrics {
blur_regions: 2,
blur_sample_pixels: 4_096,
},
FrameEffectMetrics,
);
assert_eq!(metrics.rendered_frames, 1);
assert_eq!(metrics.damaged_pixels, 5_200);
assert_eq!(metrics.total_render_time, Duration::from_millis(2));
assert_eq!(metrics.longest_render_time, Duration::from_millis(2));
assert_eq!(metrics.blur_frames, 1);
assert_eq!(metrics.blur_regions, 2);
assert_eq!(metrics.blur_sample_pixels, 4_096);
}
}