Adding handlers for user gesture callbacks. Whenever a UserGestureToken is created, calls all registered callbacks to alert them of gesture.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@162707 bbb929c8-8fbe-4397-9dbb-9b2b20218538
IndexedDB: Prevent leaks due to IDBRequest holding ScriptValue

An IDBRequest's result may sometimes be a serialized value into which
it must inject a key. This is done eagerly when the message arrives from
the back-end by deserializing into a ScriptValue, which is then retained.
This can result in leaks if the resulting value is given a pointer
back to the request object.

Fix this by making the injection lazy; make the result an IDBAny which
holds the serialized value, key and key path, and only deserialize
and inject the key when called from script.

BUG=322124
R=haraken,alecflett

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

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