mirror of
https://github.com/servo/servo.git
synced 2025-08-05 05:30:08 +01:00
Using NodeFlags ctor to set InEnabledState when needed
This commit is contained in:
parent
6a2e3cad87
commit
b0f7ad2240
1 changed files with 11 additions and 17 deletions
|
@ -141,6 +141,15 @@ impl NodeFlags {
|
||||||
pub fn new(type_id: NodeTypeId) -> NodeFlags {
|
pub fn new(type_id: NodeTypeId) -> NodeFlags {
|
||||||
match type_id {
|
match type_id {
|
||||||
DocumentNodeTypeId => IsInDoc,
|
DocumentNodeTypeId => IsInDoc,
|
||||||
|
// The following elements are enabled by default.
|
||||||
|
ElementNodeTypeId(HTMLButtonElementTypeId) |
|
||||||
|
ElementNodeTypeId(HTMLInputElementTypeId) |
|
||||||
|
ElementNodeTypeId(HTMLSelectElementTypeId) |
|
||||||
|
ElementNodeTypeId(HTMLTextAreaElementTypeId) |
|
||||||
|
ElementNodeTypeId(HTMLOptGroupElementTypeId) |
|
||||||
|
ElementNodeTypeId(HTMLOptionElementTypeId) |
|
||||||
|
//ElementNodeTypeId(HTMLMenuItemElementTypeId) |
|
||||||
|
ElementNodeTypeId(HTMLFieldSetElementTypeId) => InEnabledState,
|
||||||
_ => NodeFlags::empty(),
|
_ => NodeFlags::empty(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -973,7 +982,7 @@ impl Node {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn new_(type_id: NodeTypeId, doc: Option<JSRef<Document>>) -> Node {
|
fn new_(type_id: NodeTypeId, doc: Option<JSRef<Document>>) -> Node {
|
||||||
let node = Node {
|
Node {
|
||||||
eventtarget: EventTarget::new_inherited(NodeTargetTypeId(type_id)),
|
eventtarget: EventTarget::new_inherited(NodeTargetTypeId(type_id)),
|
||||||
type_id: type_id,
|
type_id: type_id,
|
||||||
|
|
||||||
|
@ -988,22 +997,7 @@ impl Node {
|
||||||
flags: Traceable::new(RefCell::new(NodeFlags::new(type_id))),
|
flags: Traceable::new(RefCell::new(NodeFlags::new(type_id))),
|
||||||
|
|
||||||
layout_data: LayoutDataRef::new(),
|
layout_data: LayoutDataRef::new(),
|
||||||
};
|
|
||||||
match type_id {
|
|
||||||
// The following elements are enabled by default.
|
|
||||||
ElementNodeTypeId(HTMLButtonElementTypeId) |
|
|
||||||
ElementNodeTypeId(HTMLInputElementTypeId) |
|
|
||||||
ElementNodeTypeId(HTMLSelectElementTypeId) |
|
|
||||||
ElementNodeTypeId(HTMLTextAreaElementTypeId) |
|
|
||||||
ElementNodeTypeId(HTMLOptGroupElementTypeId) |
|
|
||||||
ElementNodeTypeId(HTMLOptionElementTypeId) |
|
|
||||||
//ElementNodeTypeId(HTMLMenuItemElementTypeId) |
|
|
||||||
ElementNodeTypeId(HTMLFieldSetElementTypeId) => {
|
|
||||||
node.flags.deref().borrow_mut().insert(InEnabledState);
|
|
||||||
},
|
|
||||||
_ => ()
|
|
||||||
}
|
}
|
||||||
node
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// http://dom.spec.whatwg.org/#concept-node-adopt
|
// http://dom.spec.whatwg.org/#concept-node-adopt
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue