mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
Further changes required by Servo
This commit is contained in:
parent
017036dba8
commit
9822db5d3c
4 changed files with 18 additions and 5 deletions
|
@ -2,6 +2,7 @@
|
||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
|
use crate::dom::attr::AttrHelpersForLayout;
|
||||||
use crate::dom::bindings::inheritance::{
|
use crate::dom::bindings::inheritance::{
|
||||||
CharacterDataTypeId, DocumentFragmentTypeId, ElementTypeId,
|
CharacterDataTypeId, DocumentFragmentTypeId, ElementTypeId,
|
||||||
};
|
};
|
||||||
|
@ -264,6 +265,16 @@ impl<'dom, LayoutDataType: LayoutDataTrait> style::dom::TElement
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[inline(always)]
|
||||||
|
fn each_attr_name<F>(&self, mut callback: F)
|
||||||
|
where
|
||||||
|
F: FnMut(&style::LocalName),
|
||||||
|
{
|
||||||
|
for attr in self.element.attrs() {
|
||||||
|
callback(style::values::GenericAtomIdent::cast(attr.local_name()))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fn has_dirty_descendants(&self) -> bool {
|
fn has_dirty_descendants(&self) -> bool {
|
||||||
unsafe {
|
unsafe {
|
||||||
self.as_node()
|
self.as_node()
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
#![deny(missing_docs)]
|
#![deny(missing_docs)]
|
||||||
|
|
||||||
use crate::dom::{SendElement, TElement};
|
use crate::dom::{SendElement, TElement};
|
||||||
|
use crate::LocalName;
|
||||||
use atomic_refcell::{AtomicRefCell, AtomicRefMut};
|
use atomic_refcell::{AtomicRefCell, AtomicRefMut};
|
||||||
use owning_ref::OwningHandle;
|
use owning_ref::OwningHandle;
|
||||||
use selectors::bloom::BloomFilter;
|
use selectors::bloom::BloomFilter;
|
||||||
|
@ -107,9 +108,8 @@ impl<E: TElement> PushedElement<E> {
|
||||||
/// We do this for attributes that are very common but not commonly used in
|
/// We do this for attributes that are very common but not commonly used in
|
||||||
/// selectors.
|
/// selectors.
|
||||||
#[inline]
|
#[inline]
|
||||||
#[cfg(feature = "gecko")]
|
pub fn is_attr_name_excluded_from_filter(name: &LocalName) -> bool {
|
||||||
pub fn is_attr_name_excluded_from_filter(atom: &crate::Atom) -> bool {
|
return *name == local_name!("class") || *name == local_name!("id") || *name == local_name!("style")
|
||||||
*atom == atom!("class") || *atom == atom!("id") || *atom == atom!("style")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn each_relevant_element_hash<E, F>(element: E, mut f: F)
|
fn each_relevant_element_hash<E, F>(element: E, mut f: F)
|
||||||
|
|
|
@ -520,10 +520,9 @@ pub trait TElement:
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Internal iterator for the attribute names of this element.
|
/// Internal iterator for the attribute names of this element.
|
||||||
#[cfg(feature = "gecko")]
|
|
||||||
fn each_attr_name<F>(&self, callback: F)
|
fn each_attr_name<F>(&self, callback: F)
|
||||||
where
|
where
|
||||||
F: FnMut(&AtomIdent);
|
F: FnMut(&LocalName);
|
||||||
|
|
||||||
/// Internal iterator for the part names that this element exports for a
|
/// Internal iterator for the part names that this element exports for a
|
||||||
/// given part name.
|
/// given part name.
|
||||||
|
|
|
@ -137,7 +137,10 @@ impl<T: 'static> SelectorMap<T> {
|
||||||
local_name_hash: HashMap::default(),
|
local_name_hash: HashMap::default(),
|
||||||
namespace_hash: HashMap::default(),
|
namespace_hash: HashMap::default(),
|
||||||
other: SmallVec::new(),
|
other: SmallVec::new(),
|
||||||
|
#[cfg(feature = "gecko")]
|
||||||
bucket_attributes: static_prefs::pref!("layout.css.bucket-attribute-names.enabled"),
|
bucket_attributes: static_prefs::pref!("layout.css.bucket-attribute-names.enabled"),
|
||||||
|
#[cfg(feature = "servo")]
|
||||||
|
bucket_attributes: false,
|
||||||
count: 0,
|
count: 0,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue