Get the NotificationPresenter from WebFrameClient instead of WebViewClient.

I'll be moving the other objects hooked on Page using Supplement in future cls. In the meantime, I made LocalFrame derive from Supplementable to support this.

BUG=304341

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

git-svn-id: svn://svn.chromium.org/blink/trunk@171523 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove completeURL() call from WebSocket construction code

The WebSocket constructor takes only absolute URLs. See this spec:
http://www.whatwg.org/specs/web-apps/current-work/multipage/network.html#parse-a-websocket-url's-components

This completeURL() call is not just unnecessary but converting given
data into invalid data. Also, implicit KURL to String conversion
happened on WebCore::WebSocket::connect() call caused spec violation.
That is it accepted URLs with double colons i.e. "ws:://example.com" by mistake.

BUG=322818

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

git-svn-id: svn://svn.chromium.org/blink/trunk@171524 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Make ServiceWorker an EventTarget and dispatch statechange to it.

Some infelicities with the event when reusing a service worker, and
unregistering service workers, are noted in FIXMEs in the test. Those
fixes must come later.

BUG=363413
R=kinuko@chromium.org

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

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