FocusController::setFocusedNode should take an Element* argument. 
- Change an argument type: Node* -> Element*
- Rename the function: setFocusedNode -> setFocusedElement

DOM, HTML, and SVG specifications assume only elements can be focused.
  http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-doc-focus
  http://www.whatwg.org/specs/web-apps/current-work/multipage/editing.html#focus
  http://www.w3.org/TR/SVG2/interact.html#focus-management

This is a preparation to remove focus-related features from Node class.
This was inspired by akling's WebKit changes.

BUG=258763

Review URL: https://chromiumcodereview.appspot.com/18240004

git-svn-id: svn://svn.chromium.org/blink/trunk@153864 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move border image and border radius properties from DeprecatedStyleBuilder to StyleBuilderFunctions

Continue moving properties to the python/jinja2 templating engine.
Handling the border image modifier properties in a single macro feels a
bit awkward, but I didn't think splitting these up into four separate
groups made it any better.

BUG=237400

Review URL: https://chromiumcodereview.appspot.com/18307004

git-svn-id: svn://svn.chromium.org/blink/trunk@153865 bbb929c8-8fbe-4397-9dbb-9b2b20218538
When trying to break a line after an image followed by some text, contrary to the expected behavior the text doesn't move to a new line, instead, the caret position just shifts to the end of line.

As per the existing implementation for inserting a paragraph separator,
the insertion position obtained corresponds to the point after the image
element.
Since the insertion position doesn't resolve to being offset in the
following text node (0 offset), no splitting of text occurs and the block
to be inserted is placed after the containing (start) block (thereby
causing the caret position to shift).

If the computed insertionPosition points to an element that shall be
ignored for editing purposes (i.e. cannot have a VisiblePosition inside
it), and the position lies either at the start or at the end of such
an element, we should move our Position either upstream or
downstream (respectively) so as to obtain a valid position which can
be used further for splitting of the text.

Moving the insertionPosition either upstream or downstream, if the point
lies either at the start or at the end of the anchor node.
The ensuing position, if a text node, can then be used for splitting of
the text correctly.

This patch has landed in Webkit: https://trac.webkit.org/changeset/151604

BUG=251209
R=leviw@chromium.org

Review URL: https://chromiumcodereview.appspot.com/17381003

git-svn-id: svn://svn.chromium.org/blink/trunk@153866 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Inherit EventTarget interface instead of duplicating its code

Update most interfaces to stop using [EventTarget] IDL extended attribute
and inherit EventTarget instead. This avoids duplicating the EventTarget
API in each IDL and makes our IDL more standard.

Also remove [NoInterfaceObject] extended attribute from EventTarget to
facilitate testing and match the specification:
http://dom.spec.whatwg.org/#interface-eventtarget

Only 3 interfaces were not updated yet (Node, Window, Performance) because
they require special treatment at the moment.

BUG=257583

Review URL: https://chromiumcodereview.appspot.com/18778002

git-svn-id: svn://svn.chromium.org/blink/trunk@153867 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert "ASSERT that we only ever resolve style on elements in the StyleResolver's document"

A bunch of SVG tests have started hitting this ASSERT.

This reverts commit 78039addf2a4b4f6f428d02dbcaf914f9fa3668c.

TBR=eseidel
BUG=

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

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