DragController cleanup, part 1

Refactor out the code for generating drag images. startDrag() is already
long enough as it is. Also remove a few unnecessary variables, clean up
null checks (it's not possible for Frame::page() to be null in startDrag),
and move some helper functions closer to where they're actually used.

BUG=none
R=tony@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153456 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move OrderIterator to its own file

This is a preparating change for supporting 'order' on grid items.
The property is shared with flexbox and RenderGrid will need to do
similar 'order'-modified iterations so will reuse the class.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153457 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove ElementTimeControl IDL interface

Remove ElementTimeControl IDL interface and move its attributes
to the SVGAnimationElement IDL interface as per the latest SVG2
specification:
https://svgwg.org/svg2-draft/animate.html#InterfaceSVGAnimationElement

Also remove [NoInterfaceObject] IDL extended attribute from
SVGAnimationElement as it is not present in the specification.

This is one step towards removing IDL multiple inheritance in SVG.

BUG=256618

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153458 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Move SVGTests attributes parsing to SVGGraphicsElement

Move SVGTests attributes parsing to SVGGraphicsElement instead of doing
this in each of its subclasses. SVGGraphicsElement is now the one
subclassing SVGTests after r153166.

BUG=256618

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153459 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DragController cleanup, part 2

Remove some member fields that are only used in startDrag(). In
several cases, DragController updated the data... and then never
used it again.

BUG=none
R=tony@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153460 bbb929c8-8fbe-4397-9dbb-9b2b20218538
VisiblePosition shouldn't use bloatedCharacters()

This use is particularly silly.

R=eseidel
BUG=254708

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153461 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use the partition allocator and run the test in debug too.

We also relax an overly aggressive leak-detecting ASSERT,
which is not compatible with a huge number of our tests (both
Blink and Chromium) which utilize statically-scoped objects.
We keep and use the leak-detection capability for the unit
test, though, as it provides a little coverage.


BUG=251480

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153462 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add ability to keep selection on confirmComposition

Android needs two ways confirmComposition:
1. Cursor moves to the end of the composition (existing behaviour)
2. Cursor stays where it was (new behaviour)

BUG=239923

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

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