Enable stable features by default

Currently the embedder is required to do this, but it doesn't happen under some
tests (eg. those which use MockRenderThread). As it's not clear when an
embedder should be able to disable stable features, that functionality is also
removed.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@166996 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix incorrect animation for some values of background-position.

There is a bug which causes incorrect animation for background-position
values with right/bottom edge origin. This is because we interpolate
the offset value itself, but do not take into account that the offset
value represents different positions based on the edge origin of the
offset.

Example: If we want to animate from "left 10px" to "right 20px", we
interpolate 10px to 20px, but "forget" the edge affinitiy of the second
value, and end up with a value offset from the left.

Fixed by emitting calculated lengths for bottom/right edge origins during
animation, such that "right N" or "bottom N" becomes "calc(100% - N)".

BUG=341440
TEST=automated

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

git-svn-id: svn://svn.chromium.org/blink/trunk@166997 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Make PassOwnPtr comparison operators const.

(This change is similar to https://codereview.chromium.org/53173005.)

Without this change the following snippet compiles (even though it
is not supposed to) and can behave unexpectedly:

bool compare(const PassOwnPtr& a, const PassOwnPtr& b)
{
   return a == b; // Convert to UnspecifiedBoolType and then compare.
}

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

git-svn-id: svn://svn.chromium.org/blink/trunk@166998 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add cross-origin BindingsSecurity checks to 'EventTarget::dispatchEvent'.

BUG=342618

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

git-svn-id: svn://svn.chromium.org/blink/trunk@166999 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Address FIXME in CreateWindow: use FocusController to change focus

The main difference is that going via the ChromeClient will also raise
the window. This is, however, undesirable, as a page can open its own
frames without limitations, and therefore can use this to create
popunders

BUG=343064
R=mkwst@chromium.org

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

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