Commit graph

10 commits

Author SHA1 Message Date
Jack Moffitt
c6ab60dbfc Cargoify servo 2014-09-08 20:21:42 -06:00
Clark Gaebel
dafd0b652d Added a fast no-message RPC interface to the layout task. 2014-09-04 14:10:07 -07:00
Josh Matthews
015b07f1e0 Decouple compositing and script crates. 2014-08-08 16:17:17 -04:00
Ms2ger
944d8b00b0 Call the generated rather than the hand-written traits (fixes #2936). 2014-07-27 23:00:17 +02:00
Cameron Zwarich
a7eafbc48e Revert "Merge pull request #2819 from bjwbell/iframe-layers"
This reverts commit 0200b61f71, reversing
changes made to ca96821902.
2014-07-19 17:17:00 -07:00
Bryan Bell
0c9f469f64 Restructure compositor layers to work with iframes
When a frame is selected via set_ids, a tree of root compositor
layers is also created, matching the tree of pipelines in the frame.
This decouples the chronological ordering dependency for parent frames
and child iframes sending CreateOrUpdateRootLayer &
CreateOrUpdateDescendentLayer messages.

Change the Compositor ready and render states to per pipeline.
This ensures the compositor doesn't composite for an epoch until
every *pipeline* in the epoch is finished rendering.

For iframes it fixes a bug where the compositor didnt wait on the
child pipeline ready state before compositing the window.

Gotchas:
* layout task or script task failure on exit ("task '' failed at sending
  on a closed channel"), this happens if the child iframe shares the
  same script task as the parent and can be avoided by adding the
  sandbox attribute to the iframe.

Other changes:
* Inline set_clipping_rect in compositor.rs
* Commented out ref test simple_iframe.html fails on os x
2014-07-19 10:46:11 -07:00
eshyong
f085655cc6 Made Page.window_size and Page.next_subpage_id Traceable, added trait Encodable for WindowSizeData, ViewportPx, PagePx, and DevicePixel 2014-07-06 23:49:01 -04:00
Ms2ger
c90a8529c5 Use internal mutability for Attr::value. 2014-06-22 20:39:21 +09:00
Matt Brubeck
4fef0d1c1c Separate "desktop" and "mobile" zoom calculations.
This ensures that the layout viewport responds to each type of zoom correctly,
and lays the ground for CSS Media Queries and CSS Device Adaption.

Until we have proper touch support, mobile-style "pinch" zoom can be simulated
by holding Ctrl while scrolling with a mousewheel or trackpad gesture.
2014-06-20 16:33:57 -07:00
Edit Balint
94ec3cde8a Split Page code out of script_task.rs #2530 2014-06-13 19:28:57 +02:00