On 01/30/2014 10:25 AM, Patrick Walton wrote:
Hi everyone,

Preface: This is a total bikeshed.

I was wondering whether we might want to rename "render" to "paint". The issue is that "render" means different things in different browser engines and so the term is kind of confusing. As far as I can tell "render" in Gecko means either "layout" or "paint" depending on the circumstances. This is also true in WebKit, where "render" usually means "layout". But in Servo "render" means "paint" only, which is somewhat at odds with how the term is used in other engines.

So I'd like to propose renaming "render" to "paint" in Servo. More broadly, I was thinking about using these headings for the various rendering phases, which are a hopefully-clear intersection of the Gecko and WebKit terminology:

* "Layout" (from Gecko; WebKit calls this "rendering")
- "Style recalc" (from WebKit; I'm not sure if Gecko has a name for this specifically)
    o Initialization of layout data
    o CSS selector matching/cascading
    o "Dirty marking" (from Gecko)
  - "Reflow" (from Gecko; WebKit calls this "layout")
    o Bubble widths (perhaps rename to "compute min/pref widths"?)
    o Assign widths
    o Assign heights/store overflow
- Display list building (from Gecko; WebKit ports that use display lists call this "painting")
* "Painting" (from WebKit ports that do not use display lists)
  - Buffer preparation
  - Drawing
* Compositing

Thoughts?

+1. I love that you're thinking hard about naming, and that everything is well researched. Could be good material for the wiki.
_______________________________________________
dev-servo mailing list
dev-servo@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-servo

Reply via email to