mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
style: Use nsAtom instead of nsString for FontFamilyName.
Bug: 1490997 Reviewed-by: lsalzman
This commit is contained in:
parent
cc53ec805d
commit
5c66290142
1 changed files with 16 additions and 7 deletions
|
@ -483,16 +483,19 @@ impl SingleFontFamily {
|
||||||
FontFamilyType::eFamily_fantasy => SingleFontFamily::Generic(atom!("fantasy")),
|
FontFamilyType::eFamily_fantasy => SingleFontFamily::Generic(atom!("fantasy")),
|
||||||
FontFamilyType::eFamily_moz_fixed => SingleFontFamily::Generic(atom!("-moz-fixed")),
|
FontFamilyType::eFamily_moz_fixed => SingleFontFamily::Generic(atom!("-moz-fixed")),
|
||||||
FontFamilyType::eFamily_named => {
|
FontFamilyType::eFamily_named => {
|
||||||
let name = Atom::from(&*family.mName);
|
let name = unsafe { Atom::from_raw(family.mName.mRawPtr) };
|
||||||
SingleFontFamily::FamilyName(FamilyName {
|
SingleFontFamily::FamilyName(FamilyName {
|
||||||
name,
|
name,
|
||||||
syntax: FamilyNameSyntax::Identifiers,
|
syntax: FamilyNameSyntax::Identifiers,
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
FontFamilyType::eFamily_named_quoted => SingleFontFamily::FamilyName(FamilyName {
|
FontFamilyType::eFamily_named_quoted => {
|
||||||
name: (&*family.mName).into(),
|
let name = unsafe { Atom::from_raw(family.mName.mRawPtr) };
|
||||||
syntax: FamilyNameSyntax::Quoted,
|
SingleFontFamily::FamilyName(FamilyName {
|
||||||
}),
|
name,
|
||||||
|
syntax: FamilyNameSyntax::Quoted,
|
||||||
|
})
|
||||||
|
},
|
||||||
_ => panic!("Found unexpected font FontFamilyType"),
|
_ => panic!("Found unexpected font FontFamilyType"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -538,9 +541,15 @@ impl Hash for FontFamilyList {
|
||||||
where
|
where
|
||||||
H: Hasher,
|
H: Hasher,
|
||||||
{
|
{
|
||||||
|
use string_cache::WeakAtom;
|
||||||
|
|
||||||
for name in self.0.mNames.iter() {
|
for name in self.0.mNames.iter() {
|
||||||
name.mType.hash(state);
|
name.mType.hash(state);
|
||||||
name.mName.hash(state);
|
if !name.mName.mRawPtr.is_null() {
|
||||||
|
unsafe {
|
||||||
|
WeakAtom::new(name.mName.mRawPtr).hash(state);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -552,7 +561,7 @@ impl PartialEq for FontFamilyList {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
for (a, b) in self.0.mNames.iter().zip(other.0.mNames.iter()) {
|
for (a, b) in self.0.mNames.iter().zip(other.0.mNames.iter()) {
|
||||||
if a.mType != b.mType || &*a.mName != &*b.mName {
|
if a.mType != b.mType || a.mName.mRawPtr != b.mName.mRawPtr {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue