15d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)// Copyright 2014 The Chromium Authors. All rights reserved.
25d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)// found in the LICENSE file.
45d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
55d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)#include "config.h"
65d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)#include "web/NavigatorContentUtilsClientImpl.h"
75d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
85d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)#include "public/web/WebViewClient.h"
95d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)#include "web/WebViewImpl.h"
105d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
115d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)namespace blink {
125d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
135d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)PassOwnPtr<NavigatorContentUtilsClientImpl> NavigatorContentUtilsClientImpl::create(WebViewImpl* webView)
145d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles){
155d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)    return adoptPtr(new NavigatorContentUtilsClientImpl(webView));
165d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)}
175d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
185d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)NavigatorContentUtilsClientImpl::NavigatorContentUtilsClientImpl(WebViewImpl* webView)
195d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)    : m_webView(webView)
205d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles){
215d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)}
225d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
237242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tuccivoid NavigatorContentUtilsClientImpl::registerProtocolHandler(const String& scheme, const KURL& url, const String& title)
245d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles){
257242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    m_webView->client()->registerProtocolHandler(scheme, url, title);
265d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)}
275d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
287242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano TucciNavigatorContentUtilsClient::CustomHandlersState NavigatorContentUtilsClientImpl::isProtocolHandlerRegistered(const String& scheme, const KURL& url)
295d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles){
307242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    return static_cast<NavigatorContentUtilsClient::CustomHandlersState>(m_webView->client()->isProtocolHandlerRegistered(scheme, url));
315d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)}
325d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
337242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tuccivoid NavigatorContentUtilsClientImpl::unregisterProtocolHandler(const String& scheme, const KURL& url)
345d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles){
357242dc3dbeb210b5e876a3c42d1ec1a667fc621aPrimiano Tucci    m_webView->client()->unregisterProtocolHandler(scheme, url);
365d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)}
375d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
385d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)} // namespace blink
395d92fedcae5e801a8b224de090094f2d9df0b54aTorne (Richard Coles)
40