Move innerHTML and outerHTML to Element

Per the DOM Parsing specification, innerHTML and outerHTML should be
available on Element, not HTMLElement. Since HTMLElement and SVGElement
are the only interfaces that inherit from Element, the only Web visible
difference should be that innerHTML and outerHTML are now available for
SVG elements.

For <svg>.innerHTML = "<!-- svg elements here -->" to insert elements
with correct namespace URI, one adjustment has to be made to the tree
builder step of the html parsing algorithm. The changes are described in
the spec change <http://html5.org/r/7768>. The new concept of
'adjustedCurrentNode' is used when processing and when deciding to
process foreign content and makes sure that parsed elements go into the
correct namespace.

Some layout tests that (perhaps accidentally) use innerHTML and
outerHTML on SVG elements are adjusted slightly.

BUG=311080

Review URL: https://codereview.chromium.org/44333002

git-svn-id: svn://svn.chromium.org/blink/trunk@160869 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Document::recalcStyle should check isActive()

Entering recalcStyle on a Document that is being detached is bad news,
don't let this ever happen. This was the reason that my patch that made
Document.cpp stop using confusingAndOftenMisusedAttached() was reverted.
The Pepper bindings were causing a recalcStyle during page tear down.

Review URL: https://codereview.chromium.org/47923010

git-svn-id: svn://svn.chromium.org/blink/trunk@160870 bbb929c8-8fbe-4397-9dbb-9b2b20218538
ElementShadow::detach does need to check confusingAndOftenMisusedAttached()

If the ElementShadow is going through a detach (meaning its in the Document)
then all the ShadowRoots are attached as well so there's no reason to check.
This is the same as ContainerNode::detachChildren which also doesn't check.

Review URL: https://codereview.chromium.org/48593006

git-svn-id: svn://svn.chromium.org/blink/trunk@160871 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Moved most viewport layout tests into a unit test

BUG=

Review URL: https://codereview.chromium.org/48613005

git-svn-id: svn://svn.chromium.org/blink/trunk@160873 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[CSS Regions][CSS Shapes] Update updateShapeAndSegmentsForCurrentLineInFlowThread to deal better with the first lines

We have a complex condition in updateShapeAndSegmentsForCurrentLineInFlowThread, which is
adjusting the first line to the shape's top. This patch adds two boolean to make that clear.

Merged WebKit revision: http://trac.webkit.org/changeset/158015

Review URL: https://codereview.chromium.org/50263005

git-svn-id: svn://svn.chromium.org/blink/trunk@160874 bbb929c8-8fbe-4397-9dbb-9b2b20218538
RefPtr should not be fast allocated

RefPtr should not be fast allocated in particular and it should not be allocated on
heap in general (except placement 'new' cases, as placement 'new' is used by WTF
containers).

Review URL: https://codereview.chromium.org/50493006

git-svn-id: svn://svn.chromium.org/blink/trunk@160875 bbb929c8-8fbe-4397-9dbb-9b2b20218538
HTMLFormControlElementWithState::shouldSaveAndRestoreFormControlState should not use confusingAndOftenMisusedAttached()

This code is used when restoring and saving form control state in the
history controller and when parsing. What it was really trying to check
was that the elements are in an active document so change the call to
inActiveDocument().

Review URL: https://codereview.chromium.org/51053002

git-svn-id: svn://svn.chromium.org/blink/trunk@160876 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Have ChildFrameDisconnector / ChildListMutationScope deal with references

Have ChildFrameDisconnector / ChildListMutationScope deal with references instead
of pointers as these could never be null.

R=adamk

Review URL: https://codereview.chromium.org/51273002

git-svn-id: svn://svn.chromium.org/blink/trunk@160877 bbb929c8-8fbe-4397-9dbb-9b2b20218538