Clear absolute clip rects when transform changes

A layer's absolute clip rects are no longer valid when its
transform or the transform of an ancestor changes, since the
layer moves in absolute space. This CL clears the absolute
clip rects of a layer and its descendants when the layer's
transform changes.

BUG=246965

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

git-svn-id: svn://svn.chromium.org/blink/trunk@176432 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Include HTMLFrameOwnerElement.h in fewer headers

Because HTMLFrameOwnerElement.h includes Document.h, the consequence is
mostly that Document.h includes need to be added.

Locally, this reduces the number of recompilation steps when touching
HTMLFrameOwnerElement.h from 579 to 117, and when touching Document.h
from 1214 to 1160.

There is a risk of performance regressions due to outlining
Frame::deprecatedLocalOwner().

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

git-svn-id: svn://svn.chromium.org/blink/trunk@176433 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Custom Elements: Encapsulates Async and Sync Queues into one class.

This refactoring encapsulates sync and async microtask queues into
CustomElementMicrotaskStepDispatcher class.
Also, it renames CustomElementMicrotaskQueue to CustomElementSyncMicrotaskQueue
for clarifying the difference from the async queue.

This is a preparation for fixing crbug.com/384516

BUG=384516
TEST=none
R=dglazkov@chromium.org, dominicc@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@176434 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[IndexedDB] Use consistent enums on both sides of IPC.

Numerous IndexedDB IPC messages sent renderer->browser are defined members that are enums from Blink (public/platform), and on receipt are static_cast to types
defined in Chromium:

blink::WebIDBCursor::Direction => indexed_db::CursorDirection
blink::WebIDBDatabase::TaskType => IndexedDBDatabase::TaskType
blink::WebIDBDatabase::PutMode => IndexedDBDatabase::PutMode
blink::WebIDBDatabase::TransactionMode => uint16 => indexed_db::TransactionMode

Nothing enforces the equality of these enums at compile time.

So the approach adopted here is to move the Blink-side enums into public/platform/WebIDBTypes.h and use it everywhere.

Patch spread across chromium content side as well as on Blink side.
Chromium side: https://codereview.chromium.org/320833002
Blink side: https://codereview.chromium.org/325683002

BUG=381848
R=dglazkov@chromium.org, jsbell@chromium.org

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

Patch from Pritam Nikam <pritam.nikam@samsung.com>.

git-svn-id: svn://svn.chromium.org/blink/trunk@176435 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Removing using declarations that import names in the C++ Standard library.

According to the coding guidelines for blink, we should not use
"using" declarations of any kind to import names in the C++ Standard
library. This patch removes all those "using" declarations.

Effected folder: Source/core/css

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

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