Speed up moving cursor/selection up or down past non-renderered elements.

Skips calling firstPositionInOrBeforeNode when a node doesn't have a
renderer, since there couldn't possibly be a visible position there.
This was particularly wasteful when trying to move the cursor up when at
the beginning of a document, as it did a O(n^2) scan through the document head.

See bug for easy repro steps.

BUG=263499

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154977 bbb929c8-8fbe-4397-9dbb-9b2b20218538
RenderMedia should not allow generated content

When I removed the explicit treeScope() checks from HTMLMediaElement I accidentally enabled
::before and ::after on <video> and <audio> since they both override canHaveChildren to return
true to allow ShadowRoots. Unfortunately they also assume that the only renderer children they
ever have are from the shadow controls element not from generated content so they'll crash
in RenderMedia::layout.

To fix this I disabled generated content on RenderMedia so that nothing can shove a ::before or
::after down into it. Eventually we might consider allowing video::before and ::after which would
require modifying RenderMedia::layout to be generated content aware.

BUG=263810

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

git-svn-id: svn://svn.chromium.org/blink/trunk@154979 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert "Remove toV8FastForMainWorld."

This reverts revision 154673.

Reason: We want to see if the dromaeo regression goes away, see
crbug.com/264056

TBR=marja,abarth
BUG=264056

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

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