mirror of
https://github.com/servo/servo.git
synced 2025-07-20 22:03:42 +01:00
dom: framerenderer: implement HTMLMediaFrameSource trait for MediaFrameRenderer
This commit is contained in:
parent
623229dd8a
commit
524750f41f
1 changed files with 12 additions and 0 deletions
|
@ -1,4 +1,5 @@
|
||||||
use servo_media::player::frame::{Frame, FrameRenderer};
|
use servo_media::player::frame::{Frame, FrameRenderer};
|
||||||
|
use script_layout_interface::HTMLMediaFrameSource;
|
||||||
use std::mem;
|
use std::mem;
|
||||||
use std::sync::{Arc, Mutex};
|
use std::sync::{Arc, Mutex};
|
||||||
use webrender_api::{
|
use webrender_api::{
|
||||||
|
@ -29,6 +30,17 @@ impl FrameRenderer for MediaFrameRenderer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl HTMLMediaFrameSource for MediaFrameRenderer {
|
||||||
|
fn get_current_frame(&self) -> Option<(ImageKey, i32, i32)> {
|
||||||
|
let inner = self.inner.lock().unwrap();
|
||||||
|
inner.current_frame.clone()
|
||||||
|
}
|
||||||
|
|
||||||
|
fn clone_boxed(&self) -> Box<HTMLMediaFrameSource> {
|
||||||
|
Box::new(self.clone())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
struct MediaFrameRendererInner {
|
struct MediaFrameRendererInner {
|
||||||
api: RenderApi,
|
api: RenderApi,
|
||||||
current_frame: Option<(ImageKey, i32, i32)>,
|
current_frame: Option<(ImageKey, i32, i32)>,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue