display: make DisplayControls cloneable in a multi-thread context

This commit is contained in:
2025-10-17 14:38:49 +02:00
parent d957615d4e
commit eb9f949e4e
5 changed files with 130 additions and 82 deletions

View File

@@ -1,9 +1,10 @@
use embassy_time::{Duration, Timer};
use figments::surface::Surface;
use figments_render::output::Brightness;
use core::{fmt::Debug, ops::{Deref, DerefMut}};
use log::*;
use crate::events::DisplayControls;
use crate::display::DisplayControls;
#[derive(Default, Debug, Clone, Copy)]
pub struct Animation {
@@ -28,7 +29,7 @@ impl<S: Surface> AnimationActor for S {
}
#[derive(Debug)]
pub struct AnimDisplay<'a>(pub &'a DisplayControls);
pub struct AnimDisplay<'a>(pub &'a mut DisplayControls);
impl<'a> AnimationActor for AnimDisplay<'a> {
fn get_opacity(&self) -> u8 {