mirror of
https://github.com/servo/servo.git
synced 2025-08-07 14:35:33 +01:00
Thread the image cache task through to the layout task
This commit is contained in:
parent
e4a09a3287
commit
8e428ce5f0
2 changed files with 11 additions and 4 deletions
|
@ -7,6 +7,8 @@ import content::{Content, ExecuteMsg, ParseMsg, ExitMsg, create_content};
|
|||
import resource::resource_task;
|
||||
import resource::resource_task::{ResourceTask};
|
||||
import std::net::url::url;
|
||||
import resource::image_cache_task;
|
||||
import image_cache_task::{ImageCacheTask, image_cache_task};
|
||||
|
||||
import pipes::{port, chan};
|
||||
|
||||
|
@ -14,21 +16,24 @@ class Engine<S:Sink send copy> {
|
|||
let sink: S;
|
||||
|
||||
let renderer: Renderer;
|
||||
let layout: Layout;
|
||||
let resource_task: ResourceTask;
|
||||
let image_cache_task: ImageCacheTask;
|
||||
let layout: Layout;
|
||||
let content: comm::chan<content::ControlMsg>;
|
||||
|
||||
new(+sink: S) {
|
||||
self.sink = sink;
|
||||
|
||||
let renderer = Renderer(sink);
|
||||
let layout = Layout(renderer);
|
||||
let resource_task = ResourceTask();
|
||||
let image_cache_task = image_cache_task(resource_task);
|
||||
let layout = Layout(renderer, image_cache_task);
|
||||
let content = create_content(layout, sink, resource_task);
|
||||
|
||||
self.renderer = renderer;
|
||||
self.layout = layout;
|
||||
self.resource_task = resource_task;
|
||||
self.image_cache_task = image_cache_task;
|
||||
self.layout = layout;
|
||||
self.content = content;
|
||||
}
|
||||
|
||||
|
@ -62,6 +67,7 @@ class Engine<S:Sink send copy> {
|
|||
self.renderer.send(renderer::ExitMsg(response_chan));
|
||||
response_port.recv();
|
||||
|
||||
self.image_cache_task.send(image_cache_task::Exit);
|
||||
self.resource_task.send(resource_task::Exit);
|
||||
|
||||
sender.send(());
|
||||
|
|
|
@ -9,6 +9,7 @@ import dom::base::Node;
|
|||
import dom::style::Stylesheet;
|
||||
import gfx::geometry::px_to_au;
|
||||
import gfx::renderer::Renderer;
|
||||
import resource::image_cache_task::ImageCacheTask;
|
||||
|
||||
import task::*;
|
||||
import comm::*;
|
||||
|
@ -21,7 +22,7 @@ enum Msg {
|
|||
ExitMsg
|
||||
}
|
||||
|
||||
fn Layout(renderer: Renderer) -> Layout {
|
||||
fn Layout(renderer: Renderer, image_cache_task: ImageCacheTask) -> Layout {
|
||||
do spawn_listener::<Msg>|request| {
|
||||
loop {
|
||||
match request.recv() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue