diff --git a/src/ui/presenter.rs b/src/ui/presenter.rs index 5a604b5..565cead 100644 --- a/src/ui/presenter.rs +++ b/src/ui/presenter.rs @@ -1,37 +1,38 @@ use miette::{IntoDiagnostic, Result}; +use resvg::usvg::fontdb; use std::{fs::File, io::BufReader, path::PathBuf, sync::Arc}; use cosmic::{ - Task, iced::{ - Background, Border, Color, ContentFit, Font, Length, Shadow, - Vector, alignment::Horizontal, border, font::{Family, Stretch, Style, Weight}, + Background, Border, Color, ContentFit, Font, Length, Shadow, + Vector, }, iced_widget::{ rich_text, scrollable::{ - AbsoluteOffset, Direction, Scrollbar, scroll_to, + scroll_to, AbsoluteOffset, Direction, Scrollbar, }, span, stack, vertical_rule, }, prelude::*, widget::{ - Column, Container, Id, Row, Space, container, image, - mouse_area, responsive, scrollable, text, + container, image, mouse_area, responsive, scrollable, text, + Column, Container, Id, Row, Space, }, + Task, }; -use iced_video_player::{Position, Video, VideoPlayer, gst_pbutils}; +use iced_video_player::{gst_pbutils, Position, Video, VideoPlayer}; use rodio::{Decoder, OutputStream, Sink}; use tracing::{debug, error, info, warn}; use url::Url; use crate::{ - BackgroundKind, core::{service_items::ServiceItem, slide::Slide}, ui::text_svg, + BackgroundKind, }; const REFERENCE_WIDTH: f32 = 1920.0; @@ -132,9 +133,7 @@ impl Presenter { Some(v) } Err(e) => { - error!( - "Had an error creating the video object: {e}, likely the first slide isn't a video" - ); + error!("Had an error creating the video object: {e}, likely the first slide isn't a video"); None } } @@ -380,7 +379,7 @@ impl Presenter { self.hovered_slide = slide; } Message::StartAudio => { - return Action::Task(self.start_audio()); + return Action::Task(self.start_audio()) } Message::EndAudio => { self.sink.1.stop(); @@ -643,9 +642,7 @@ impl Presenter { self.video = Some(v) } Err(e) => { - error!( - "Had an error creating the video object: {e}" - ); + error!("Had an error creating the video object: {e}"); self.video = None; } } diff --git a/todo.org b/todo.org index 427d985..005086d 100644 --- a/todo.org +++ b/todo.org @@ -16,10 +16,6 @@ Actually, what if we just made the svg at load/creation time and stored it in th ** SVG performs badly Since SVG's apparently run poorly in iced, instead I'll need to see about either creating a new text element, or teaching Iced to render strokes and shadows on text. -** Fork Cryoglyph -This fork will render text 3 times. Once for the text, once for the stroke, once for the shadow. This will only be used in the slides and therefore should not be much of a performance hit since we will only be render 3 copies of the given text. This should not be bad performance since it's not a large amount of text. - -This also means in our custom widget with our custom fork, we can animate each individually perhaps. * TODO [#C] Make the presenter more modular so things are easier to change.