On Tue, Mar 25, 2014 at 9:41 AM, Patrick Walton <pcwal...@mozilla.com>wrote:

> On 3/24/14 1:40 PM, Robert O'Callahan wrote:
>
>>
>>> We have multiple layers support. I reworked because it was bogus, but
>>> it's
>>> a hard problem with iframes in multiple threads
>>>
>>
>>
>> Would it be helpful to explain how multiprocess layer trees work in Gecko?
>>
>
> Sure, any info is helpful.


OK, so it's fairly obvious but it works well. Basically a process can
construct RefLayers, which are a hole in the layer tree where another layer
tree can be attached by the compositor. There is a global namespace of
layer-tree IDs; when publishing a layer tree to the compositor, it's
assigned an ID, and a RefLayer specifies the ID of the layer tree it should
host. Before each composition, the compositor does a pass over the layer
tree where it temporarily connects all the non-root layer trees as children
of their RefLayers. There is no need for different processes to coordinate
their layer tree update transactions in general.

Rob
-- 
Jtehsauts  tshaei dS,o n" Wohfy  Mdaon  yhoaus  eanuttehrotraiitny  eovni
le atrhtohu gthot sf oirng iyvoeu rs ihnesa.r"t sS?o  Whhei csha iids  teoa
stiheer :p atroa lsyazye,d  'mYaonu,r  "sGients  uapr,e  tfaokreg iyvoeunr,
'm aotr  atnod  sgaoy ,h o'mGee.t"  uTph eann dt hwea lmka'n?  gBoutt  uIp
waanndt  wyeonut  thoo mken.o w
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to