Commit graph

3647 commits

Author SHA1 Message Date
Patrick Walton
a1d12897e8 Add NSPR and NSS submodules 2013-05-30 14:05:22 -07:00
Patrick Walton
233a2040da Implement the beginnings of the box model for render boxes 2013-05-30 14:05:22 -07:00
Patrick Walton
c14a137233 Update rust-geom 2013-05-30 14:05:22 -07:00
Jack Moffitt
50726a9c9d Update README.md
Fix README typos.
2013-05-30 11:36:45 -05:00
bors-servo
273b6cfe29 auto merge of #476 : pcwalton/servo/display-list-refactor, r=pcwalton
r? @metajack
2013-05-30 00:42:39 -07:00
bors-servo
473b0941ec auto merge of #474 : pcwalton/servo/separation, r=pcwalton
r? @metajack
2013-05-30 00:06:42 -07:00
bors-servo
90b01df4c3 auto merge of #466 : pcwalton/servo/phantom-type, r=pcwalton
See the explanation on the commit for more detail.

r? @metajack
2013-05-29 19:30:47 -07:00
Patrick Walton
6012a3e13e Refactor display lists to use less memory. 2013-05-28 18:51:57 -07:00
Patrick Walton
0b22336c45 etc: Make tidy more resilient to dirty build directories 2013-05-28 17:48:55 -07:00
Patrick Walton
bf82bc54f3 Separate the DOM and layout into separate crates. 2013-05-28 17:13:40 -07:00
Patrick Walton
0ea1a94f8e Remove the layout debug methods.
Premature abstraction; nothing used the traits polymorphically. Furthermore,
they increased coupling between layout and the DOM.
2013-05-28 16:55:07 -07:00
Patrick Walton
0a95672236 Reduce coupling between layout and the DOM by separating out the layout interface.
Eventually, the layout interface will be moved along with the DOM into a
separate crate.
2013-05-28 16:41:55 -07:00
Patrick Walton
83e1bd81e8 Fix merge fallout. 2013-05-28 16:16:34 -07:00
Patrick Walton
4f3ca373d4 Introduce a phantom type to prevent script from accessing the layout data 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.
2013-05-28 15:40:47 -07:00
Patrick Walton
c7bce98236 Remove the servo- prefix from core components. 2013-05-28 15:40:47 -07:00
Patrick Walton
c658c6dea9 Move the test harnesses into test/.
This is preparation for removing the `servo-` prefixes from the various
Servo components.
2013-05-28 15:40:39 -07:00
Patrick Walton
729a5ff441 Reduce the number of messages needed to exchange buffers from 3 to 2 2013-05-28 15:40:39 -07:00
Patrick Walton
6d16f11296 Merge pull request #488 from eric93/baseline_final
Align text at baseline
2013-05-28 15:32:19 -07:00
Eric Atkinson
1fd9a8f162 Merge with TextRenderBox refactor 2013-05-28 10:37:49 -07:00
Eric Atkinson
ad9fad097c Tweak inline layout so text is baseline-aligned 2013-05-28 09:18:56 -07:00
bors-servo
8f33dfa360 auto merge of #485 : oncemoreification/servo/refactor_TextRenderBox, r=jdm
This removes the TextBoxData struct and places its properties directly on the TextRenderBox. 

It also removes the font_size property from RenderBox's, in the thinking that this should be (and is) managed by stylers.
2013-05-27 16:27:32 -07:00
JJ Weber
5c8c776f0a Refactor TextRenderBox to handle range and run data and let a RenderBox's style handle font size 2013-05-26 14:21:54 -07:00
bors-servo
5be7bfa14f auto merge of #483 : oncemoreification/servo/fix_some_warnings, r=brson
Less yelling: https://github.com/mozilla/servo/issues/455
2013-05-25 16:30:33 -07:00
JJ Weber
1b3d19fb94 Unweird 'pub' token 2013-05-25 16:02:17 -07:00
JJ Weber
c6c9533cd1 Cleanup dynamic freeze scope artificially extended warnings 2013-05-25 16:02:17 -07:00
JJ Weber
3503cb3df9 Remove unused 'mut' 2013-05-25 16:02:17 -07:00
bors-servo
40cb22d270 auto merge of #481 : eric93/servo/underline_tweak, r=metajack
Fix style problems with last PR. Also better propagation of text-decoration.
2013-05-24 16:42:28 -07:00
Eric Atkinson
457008e1ee Removed unnecessary FIXME 2013-05-24 14:57:01 -07:00
Eric Atkinson
656c741f21 Better propagation of text-decoration, though still not perfect. Also, boxes now cannot be merged if they have different text-decorations. 2013-05-24 14:39:03 -07:00
Eric Atkinson
e45ae15640 Fix style issues 2013-05-24 10:34:16 -07:00
Eric Atkinson
d4b837bba6 Clean up code a little 2013-05-24 09:12:02 -07:00
Eric Atkinson
1016e273a6 Fix rebase issues 2013-05-24 09:12:02 -07:00
Eric Atkinson
cd39d0931f Added underline test 2013-05-24 09:12:02 -07:00
Eric Atkinson
135d11684c Add underline to layout and gfx. 2013-05-24 09:12:02 -07:00
bors-servo
b9c33f8361 auto merge of #478 : tkuehn/servo/profiling, r=pcwalton 2013-05-23 19:03:29 -07:00
Tim Kuehn
207a4e1f43 comment on updating NUM_BUCKETS in time.rs 2013-05-23 18:50:29 -07:00
Tim Kuehn
089b1fc0c7 ProfilerMsg ==> ProfilerCategory; all enums end in Category; added const NUM_BUCKETS; other minor changes 2013-05-23 18:44:31 -07:00
tkuehn
6758f9aebb Profiling in lieu of time::time, rm util alias 2013-05-23 18:43:06 -07:00
bors-servo
943139b397 auto merge of #468 : jdm/servo/investigate, r=metajack
By the power vested in me through the agency of gdb, massif, and valgrind, here are some changes that fix various crashes that occur when shutting down at arbitrary points, along with some honest-to-goodness shutdown leaks reported by valgrind, and the layout cycles that were causing 1gb/s memory explosions when running test_hammer_layout.html.
2013-05-22 12:57:28 -07:00
bors-servo
f3e74dad76 auto merge of #469 : metajack/servo/ignore-objdir, r=jdm
This is the directory that moz buildbots use to build Servo.
2013-05-22 11:39:31 -07:00
Jack Moffitt
8a3c3ce6e5 Ignore objdir directory.
This is the directory that moz buildbots use to build Servo.
2013-05-22 12:24:00 -06:00
Josh Matthews
48fbce9f2b Avoid creating a TextRun which won't be used, thus creating a permanent cycle with no way to break it. 2013-05-22 14:20:15 -04:00
Josh Matthews
ec4f16fa68 Add teardown phase to the start of each layout operation that manually breaks cycles between flows, boxes, fonts, shapers, and textruns on stale layout data. 2013-05-22 14:19:18 -04:00
bors-servo
de2f913c34 auto merge of #467 : ILyoan/servo/jsval2, r=metajack
This is a fix for #309 and #308 along with https://github.com/mozilla-servo/rust-mozjs/pull/18. 
Change JSVal from u64 to {u64}
2013-05-22 11:18:25 -07:00
Josh Matthews
982dd0c0f0 Add document teardown operation to safely remove rooting for DOM tree and prevent leaks. 2013-05-22 14:14:33 -04:00
Josh Matthews
818d29d13a Remove unnecessary cycle between FontEntry and FontFamily. 2013-05-22 14:02:32 -04:00
Josh Matthews
c8b10ec6b8 Avoid leaking FcPattern pointers. 2013-05-22 13:59:35 -04:00
Josh Matthews
a43f92a300 Ensure FontHandles on Linux don't outlast the FreeType library reference. 2013-05-22 13:55:51 -04:00
ILyoan
c6b3c2d927 Fix codejen as JSVal changed 64 -> {64} 2013-05-22 16:27:22 +09:00
ILyoan
755975eacf Update rust-mozjs as change of JSVal 2013-05-22 16:27:22 +09:00