Auto merge of #11565 - nox:fonts, r=metajack

Introduce FontFaceRules::effective_sources()

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11565)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2016-06-07 03:50:18 -05:00
commit b64b21ace0
2 changed files with 45 additions and 9 deletions

View file

@ -355,19 +355,23 @@ fn add_font_face_rules(stylesheet: &Stylesheet,
font_cache_thread: &FontCacheThread,
font_cache_sender: &IpcSender<()>,
outstanding_web_fonts_counter: &Arc<AtomicUsize>) {
for font_face in stylesheet.effective_rules(&device).font_face() {
for source in &font_face.sources {
if opts::get().load_webfonts_synchronously {
let (sender, receiver) = ipc::channel().unwrap();
if opts::get().load_webfonts_synchronously {
let (sender, receiver) = ipc::channel().unwrap();
for font_face in stylesheet.effective_rules(&device).font_face() {
for source in font_face.effective_sources() {
font_cache_thread.add_web_font(font_face.family.clone(),
(*source).clone(),
sender);
(*source).clone(),
sender.clone());
receiver.recv().unwrap();
} else {
}
}
} else {
for font_face in stylesheet.effective_rules(&device).font_face() {
for source in font_face.effective_sources() {
outstanding_web_fonts_counter.fetch_add(1, Ordering::SeqCst);
font_cache_thread.add_web_font(font_face.family.clone(),
(*source).clone(),
(*font_cache_sender).clone());
(*source).clone(),
(*font_cache_sender).clone());
}
}
}