Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Separate the DOM and layout into separate crates. | Patrick Walton | 2013-05-28 | 132 | -31174/+0 |
| | |||||
* | Remove the layout debug methods. | Patrick Walton | 2013-05-28 | 1 | -8/+6 |
| | | | | | Premature abstraction; nothing used the traits polymorphically. Furthermore, they increased coupling between layout and the DOM. | ||||
* | Reduce coupling between layout and the DOM by separating out the layout ↵ | Patrick Walton | 2013-05-28 | 3 | -16/+14 |
| | | | | | | | interface. Eventually, the layout interface will be moved along with the DOM into a separate crate. | ||||
* | Introduce a phantom type to prevent script from accessing the layout data ↵ | Patrick Walton | 2013-05-28 | 11 | -118/+117 |
| | | | | | | | | | | | | | | | | | directly. Nodes are now parameterized over a "View" type. The particular View type determines which methods can be called. Layout data accessors and mutators are only accessible to nodes with a LayoutView. The only way to convert a `Node<ScriptView>` to a `Node<LayoutView>` is through a transmutation, which is done at the moment the layout task receives nodes. (This should be factored better to contain the unsafety.) We should also lock down DOM node mutation to the ScriptView to forbid data races, but this patch doesn't do that. This also reduces coupling between DOM and layout. Soon I would like to move the DOM into its own crate, and this is a step on the way of doing that. | ||||
* | Remove the `servo-` prefix from core components. | Patrick Walton | 2013-05-28 | 132 | -0/+31179 |