decoder/tiling: Make shared frame buffer a struct
This commit is contained in:
parent
6827a9c176
commit
139bd4ebb2
6 changed files with 52 additions and 68 deletions
|
|
@ -48,13 +48,11 @@ use std::sync::Arc;
|
|||
|
||||
use adw::prelude::*;
|
||||
use adw::subclass::prelude::*;
|
||||
use arc_swap::ArcSwap;
|
||||
use futures_lite::StreamExt;
|
||||
use glib::subclass::Signal;
|
||||
use glib::{Properties, SignalGroup};
|
||||
use once_cell::sync::Lazy;
|
||||
|
||||
use crate::decoder::tiling::FrameBufferExt;
|
||||
use crate::decoder::{self, tiling, Decoder, DecoderUpdate};
|
||||
use crate::deps::*;
|
||||
use crate::metadata::Metadata;
|
||||
|
|
@ -126,6 +124,7 @@ pub enum FitMode {
|
|||
|
||||
mod imp {
|
||||
use super::*;
|
||||
use crate::decoder::tiling::SharedFrameBuffer;
|
||||
|
||||
#[derive(Debug, Default, Properties)]
|
||||
#[properties(wrapper_type = super::LpImage)]
|
||||
|
|
@ -148,7 +147,7 @@ mod imp {
|
|||
|
||||
/// Track changes to this image
|
||||
pub(super) file_monitor: RefCell<Option<gio::FileMonitor>>,
|
||||
pub(super) frame_buffer: Arc<ArcSwap<tiling::FrameBuffer>>,
|
||||
pub(super) frame_buffer: Arc<SharedFrameBuffer>,
|
||||
pub(super) decoder: RefCell<Option<Arc<Decoder>>>,
|
||||
|
||||
/// Rotation final value (can differ from `rotation` during animation)
|
||||
|
|
|
|||
|
|
@ -23,11 +23,10 @@ use adw::subclass::prelude::*;
|
|||
use glib::Properties;
|
||||
use gtk::prelude::*;
|
||||
|
||||
use super::image;
|
||||
use crate::deps::*;
|
||||
use crate::widgets::LpPrint;
|
||||
|
||||
use super::image;
|
||||
|
||||
mod imp_page {
|
||||
use super::*;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue