Revert "Disable default touch icons handling."

This reverts commit d870331d1487e957c0ff6b1fe8cf5842f736c5a7.

This caused org.chromium.android_webview.test.AwContentsClientFaviconTest (testReceiveBasicTouchIconRoot) to fail.

Log: http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered_tests/builds/70244/steps/slave_steps/logs/stdio

BUG=
TBR=qsr@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153928 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Make indexedSecurityCheckCustom more robust

I don't know any way in which this change is observable, but this CL makes
indexedSecurityCheckCustom match namedSecurityCheckCustom in form.

BUG=257748
R=adamk

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153929 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Teach ShadowData about the create() pattern and PassOwnPtr

I noticed manual adoptPtr calls in SVGCSSStyleSelector
one of which I think was a double adopt in the inherit
case (and thus prossibly a double-free?) and decided to
fix ShadowData to never need a manual adoptPtr call.

I also fixed percentageOrNumberToFloat to include the
primativeValue null-check so that callers did not have to
(sorry for mixing that into this CL).

BUG=237268
R=dglazkov@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@153930 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix and cleanup drag start initiation.

This fixes a regression caused by an earlier DragController cleanup
patch in the drag initiation code. DragController originally checked
all the conditions for what type of drag to try in each branch
conditional. r153456 moved several of the conditionals for image drags
to the body of an else if.

Unfortunately, imageURL might be non-empty sometimes for non-image
drags, such as when dragging images inside draggable containers styled
in a certain way. With the original code, this would fall through to
the DHTML case. However, the updated code would erroneously enter the
branch for image drags, which would then fail, since the actual
element being dragged was a <div>. Most notably, this caused tiles on
Chrome's NTP page to become undraggable if the drag was started by
clicking on the image.

The fix is to simply use the hint for the drag type that
DragController::draggableNode() already generated, and then checking
that all the appropriate things are non-null in the body of each
branch. Since DragController::draggableNode() correctly classifies
dragging a NTP tile as a DHTML drag, the code never enters the wrong
branch.

Since the fix also simplifies the DragController logic significantly,
a lot of dead/unused code has been removed from both DragController
and EventHandler.

DragController:
- Remove m_dragSourceAction from DragController, which is used... but
  was always set to the value DragSourceActionAny.
- Update populateDragClipboard() and startDrag() methods to use
  DragState::m_dragType instead as a hint for the type of drag.
  Previously, those methods checked if certain bits were set in
  m_dragSourceAction... but since m_dragSourceAction was always set to
  DragSourceActionAny, the checks were always true.

EventHandler:
- Remove passMouseMovedEventToScrollbars(), which is never called.
- Move the logic to dispatch the actual dragstart event out of
  handleDrag() so it doesn't need to use goto to perform clean up.
- Consistently protect FrameView when calling into handleDrag().
- Remove some unnecessary null checks for m_frame->view().

BUG=257273
R=tony@chromium.org

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

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