use std::{path::PathBuf, rc::Rc, time::Duration}; use cosmic::{ dialog::ashpd::url::Url, iced::{widget::text, Background, Color, ContentFit, Length}, iced_widget::stack, prelude::*, widget::{container, image, Container, Row, Space}, Task, }; use iced_video_player::{Position, Video, VideoPlayer}; use miette::{Context, IntoDiagnostic, Result}; use tracing::{debug, error, info}; use crate::{core::slide::Slide, BackgroundKind}; // #[derive(Default, Clone, Debug)] pub(crate) struct Presenter { pub slides: Vec, pub current_slide: Slide, pub current_slide_index: u16, pub video: Option