mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
fonts: Store web fonts in the per-Layout FontContext
(#32303)
This moves mangement of web fonts to the per-Layout `FontContext`, preventing web fonts from being available in different Documents. Fixes #12920. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
This commit is contained in:
parent
8d2d955bbb
commit
be5b527ea3
30 changed files with 1010 additions and 558 deletions
|
@ -486,7 +486,10 @@ where
|
|||
None => StyleFontStyle::NORMAL,
|
||||
};
|
||||
let descriptor = FontTemplateDescriptor::new(weight, stretch, style);
|
||||
callback(FontTemplate::new_local(local_font_identifier, descriptor));
|
||||
callback(FontTemplate::new_for_local_font(
|
||||
local_font_identifier,
|
||||
descriptor,
|
||||
));
|
||||
};
|
||||
|
||||
if let Some(family) = FONT_LIST.find_family(family_name) {
|
||||
|
|
|
@ -152,7 +152,10 @@ where
|
|||
};
|
||||
let descriptor = FontTemplateDescriptor::new(weight, stretch, style);
|
||||
|
||||
callback(FontTemplate::new_local(local_font_identifier, descriptor))
|
||||
callback(FontTemplate::new_for_local_font(
|
||||
local_font_identifier,
|
||||
descriptor,
|
||||
))
|
||||
}
|
||||
|
||||
FcFontSetDestroy(matches);
|
||||
|
|
|
@ -158,7 +158,10 @@ where
|
|||
stretch,
|
||||
style,
|
||||
};
|
||||
callback(FontTemplate::new_local(local_font_identifier, descriptor));
|
||||
callback(FontTemplate::new_for_local_font(
|
||||
local_font_identifier,
|
||||
descriptor,
|
||||
));
|
||||
};
|
||||
|
||||
if let Some(family) = FONT_LIST.find_family(family_name) {
|
||||
|
|
|
@ -81,7 +81,7 @@ where
|
|||
postscript_name: Atom::from(family_descriptor.font_name()),
|
||||
path: Atom::from(path),
|
||||
};
|
||||
callback(FontTemplate::new_local(identifier, descriptor));
|
||||
callback(FontTemplate::new_for_local_font(identifier, descriptor));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -81,7 +81,7 @@ where
|
|||
let local_font_identifier = LocalFontIdentifier {
|
||||
font_descriptor: Arc::new(font.to_descriptor()),
|
||||
};
|
||||
callback(FontTemplate::new_local(
|
||||
callback(FontTemplate::new_for_local_font(
|
||||
local_font_identifier,
|
||||
template_descriptor,
|
||||
))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue