Selection Action mode triggered like a context menu

Currently the selection action mode is triggered by selection events
(SELECTION_HANDLES_SHOWN). The goal of this CL is to make the mode be triggered
by context menu events. This is beneficial for two reasons:

1) The paste popup menu is already being triggered by context menu events and
we'd like to eventually unify the selection and paste menus.

2) Currently the selection action mode uses state from the IME which can lead to
race conditions causing the menu to show stale information. Using context menu
events fixes this problem because we can pass all relevant state through
|ContextMenuParams|.

In Blink we make range touch selections trigger contextmenu events. This means
that a long-press or double tap that results in a range selection sends a context
menu event. Because of Android O's smart select we also need to know if the
context menu was triggered by moving touch handles or select all so we plumb that
information through to ContextMenuParams.

BUG=627234

Review-Url: https://codereview.chromium.org/2785853002
Cr-Commit-Position: refs/heads/master@{#476355}
28 files changed