INNER CODE UNIT · Rust
on_event
marc2332/freya · crates/freya-borderless-plugin/src/lib.rs:96
fn on_event(&mut self, event: &mut PluginEvent, _handle: PluginHandle) {
if self.corner_radius <= 0. {
return;
}
match event {
PluginEvent::BeforeRender { canvas, window, .. } => {
canvas.clear(Color::TRANSPARENT);
canvas.save();
if window.fullscreen().is_some() || window.is_maximized() {
return;
}
let size = window.inner_size();
let radius = self.corner_radius * window.scale_factor() as f32;
let rounded_window = RRect::new_rect_xy(
SkRect::from_wh(size.width as f32, size.height as f32),
radius,
radius,
);