Bug 78616 - Consider formulating RenderReplaced as an effect of shadow DOM
Summary: Consider formulating RenderReplaced as an effect of shadow DOM
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Web Components Team
Depends on:
Blocks: 82313
  Show dependency treegraph
Reported: 2012-02-14 10:03 PST by Dimitri Glazkov (Google)
Modified: 2012-12-11 19:11 PST (History)
6 users (show)

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Dimitri Glazkov (Google) 2012-02-14 10:03:15 PST
From discussion on bug 50126, Niwa-san suggested a pretty nifty idea: what if we re-describe all elements that currently rely on RenderReplaced for rendering as elements with a shadow DOM (created by UA), that looks like this--taken from Ryosuke's comment:

HTMLCanvasElement -> ShadowRoot -> some-special-element/renderer, inaccessible from ES5
fallback contents (accessible from DOM, focus, etc... would just work when shown)

This would solve nicely the fallback content issues with focus and possibly allow us to replace RenderReplaced with a better-defined shadow DOM logic.

Also, this dovetails pretty well into https://www.w3.org/Bugs/Public/show_bug.cgi?id=15802.
Comment 1 Ryosuke Niwa 2012-02-14 11:12:18 PST
One drawback of this approach is that we'll double or triple the number of nodes for replaced elements depending on how we implement them. So we might want to add some clever memory-saving mechanism along the way.