Commit graph

909 commits

Author SHA1 Message Date
Brian Anderson
fdf7dc1a02 Add most font metrics for FreeType 2012-10-15 18:14:10 -07:00
Brian J. Burg
952d0ce2f1 Remove spurious debug statement 2012-10-15 17:27:54 -07:00
Brian J. Burg
451828bce0 Implement TextRun::metrics_for_range, and text box splitter helper. 2012-10-15 17:23:15 -07:00
Brian J. Burg
78cfdee5e8 Use text run's font when measuring text run min width. 2012-10-15 17:23:15 -07:00
Brian J. Burg
357905c202 Store text run's font on the TextRun object; write a dummy serialize/deserialize method so textruns can still be copied into/out of display list. 2012-10-15 17:23:15 -07:00
Brian J. Burg
4aa9bbd2ab Add trait for TextRun methods. 2012-10-15 17:23:15 -07:00
Brian J. Burg
8b80e15fd0 Add stubs for box-splitting. 2012-10-15 17:23:15 -07:00
Brian Anderson
40f26cf63e Move rust-css to rust-netsurfcss 2012-10-15 16:43:33 -07:00
Brian Anderson
6ffde5fdda Fix linux breakage 2012-10-15 16:43:33 -07:00
Brian J. Burg
a81bf8692e Fix CoreText font metrics bindings. 2012-10-15 15:10:38 -07:00
Brian J. Burg
ec9cbeb150 Fix arithmetic error in au::from_pt(). 2012-10-15 15:10:38 -07:00
Brian J. Burg
54f1e83844 Fonts compute their own metrics using NativeFont. 2012-10-15 15:10:37 -07:00
Brian J. Burg
e28827d1c0 measure_text(): actually extend text bounding box with each new glyph advance. 2012-10-15 15:10:37 -07:00
Brian J. Burg
47144ce3c3 Stub out more complicated RunMetrics. 2012-10-15 15:10:37 -07:00
Brian J. Burg
f7e3886231 Implement au::scale_by 2012-10-15 15:10:37 -07:00
Brian Anderson
c2567fb2f3 Apply background colors to all box types 2012-10-15 15:02:23 -07:00
Brian Anderson
fc93bea3c6 Make GenericBox display background colors again 2012-10-15 14:33:37 -07:00
Brian J. Burg
d1caa74d44 Improve debug logging for range repair in TextRunScanner 2012-10-15 11:11:09 -07:00
Brian Anderson
3e9254ef0f Add rust-css, bindings for libcss 2012-10-14 17:40:56 -07:00
Brian J. Burg
c8f686083a Fix stack blowup. 2012-10-14 12:43:08 -07:00
Brian J. Burg
2441c77991 Rewrite the box builder's guts; decompose things and make the BuilderContext do the heavy lifting. 2012-10-14 12:43:08 -07:00
Brian Anderson
c41ff73847 Rate limit resize events 2012-10-14 12:35:05 -07:00
Brian Anderson
a06d45f2a5 Refactor how dom events are propagated
There is no longer an out-of-place add_event_listener method on Compositor.
Instead the creator of Engine sets of the dom (Port, SharedChan) pair and
distributes a channel to OSMain and the Port to ContentTask.
2012-10-14 12:16:18 -07:00
Brian Anderson
bee47744a3 Convert the content task's control messages and dom events to pipes 2012-10-14 12:16:16 -07:00
Brian Anderson
c2377c574c Renderer can't just skip frames 2012-10-14 01:09:28 -07:00
Brian Anderson
1d23caffe8 Add more timing to layout_task 2012-10-14 01:02:23 -07:00
Brian Anderson
e6c8ee9913 Refactor layout_task a little 2012-10-14 00:42:25 -07:00
Brian Anderson
ad937a6167 Add lots of logging to content and layout messages 2012-10-14 00:04:02 -07:00
Brian Anderson
147cd4589b Update rust-layers 2012-10-14 00:04:02 -07:00
Brian J. Burg
8f96b06eb9 Extract the flow simplication code that is run after a flow's children are built; add a new case that prunes whitespace-only inline flows that are first/last children of block flows. 2012-10-13 18:15:18 -07:00
Brian J. Burg
b5c05307e0 add RenderBox::is_whitespace() 2012-10-13 18:14:12 -07:00
Brian J. Burg
d1c6e186bf Add some helper methods to util::tree for accessing tree fields (it wasn't possible before due to multiple with_tree_fields implementations) 2012-10-13 18:13:44 -07:00
Brian J. Burg
69ebb04268 Update rust commit hash in README.md. 2012-10-13 17:02:33 -07:00
Brian J. Burg
3496e2645c Add some issue numbers for TODOs 2012-10-13 16:54:59 -07:00
Brian J. Burg
7a6a1265f9 Rewrite FlowContext's box iterator methods to compose better. 2012-10-13 15:34:28 -07:00
Patrick Walton
cb356cbcc4 Update for library changes (current Rust commit 57b4d10ff652d3beddae64782c882a07822bac3c) 2012-10-13 00:47:09 -07:00
Patrick Walton
cb1a25d69f Update submodules 2012-10-13 00:47:01 -07:00
Brian Anderson
04d8c708a0 Actually do caching in LocalImageCache 2012-10-12 20:24:42 -07:00
Brian Anderson
630fca3007 Use LocalImageCache in LayoutTask instead of ImageCacheTask 2012-10-12 20:24:42 -07:00
Brian Anderson
6571c6c990 Add LocalImageCache 2012-10-12 20:24:41 -07:00
Brian J. Burg
77c1b060fd Add util::tree::remove_child, and some tests. Add eq requirement for util::tree::WriteMethods 2012-10-12 18:09:39 -07:00
Brian J. Burg
9c982693e1 Replace Node's broken impl of cmp:Eq with a generic implementation for cow::Handle. 2012-10-12 18:09:38 -07:00
Brian Anderson
af5985b6e2 Convert image_cache_task to pipes 2012-10-12 16:55:55 -07:00
Patrick Walton
b9e2571a35 layout: Make some slow debug code only execute when RUST_LOG is set appropriately 2012-10-12 15:27:41 -07:00
Brian Anderson
561879848c Do less copying in image_cache_task 2012-10-12 15:20:17 -07:00
Patrick Walton
127a6ba191 layout: Remove some more debug stuff 2012-10-12 15:03:19 -07:00
Brian J. Burg
afb8f9493b Fix logic bug in transform_text; convert do to for; add some simple tests for each compression mode. 2012-10-12 15:00:49 -07:00
Brian J. Burg
f5a5f35314 Compress the text of text nodes before combining into a single text run. Also, repair the inline flow's element map after merging text nodes. 2012-10-12 15:00:49 -07:00
Brian J. Burg
e01ffd9477 Cleanup various debug output. 2012-10-12 15:00:49 -07:00
Brian J. Burg
be53bb14f7 Clarify the invariants for InlineFlow's elems mapping. Only create NodeRanges for non-leaf elements in the inline flow. Fix the range length recorded in the NodeRanges. 2012-10-12 14:59:50 -07:00