本文整理汇总了C++中WebViewImpl类的典型用法代码示例。如果您正苦于以下问题:C++ WebViewImpl类的具体用法?C++ WebViewImpl怎么用?C++ WebViewImpl使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了WebViewImpl类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: s_messageLoopDispatchHandler
void DebuggerAgentManager::hostDispatchHandler(const Vector<WebCore::Page*>& pages)
{
if (!s_messageLoopDispatchHandler)
return;
if (s_inHostDispatchHandler)
return;
s_inHostDispatchHandler = true;
Vector<WebViewImpl*> views;
// 1. Disable active objects and input events.
for (size_t i = 0; i < pages.size(); i++) {
WebCore::Page* page = pages[i];
WebViewImpl* view = WebViewImpl::fromPage(page);
s_pageDeferrers.set(view , new WebCore::PageGroupLoadDeferrer(page, true));
views.append(view);
view->setIgnoreInputEvents(true);
}
// 2. Process messages.
s_messageLoopDispatchHandler();
// 3. Bring things back.
for (Vector<WebViewImpl*>::iterator it = views.begin(); it != views.end(); ++it) {
if (s_pageDeferrers.contains(*it)) {
// The view was not closed during the dispatch.
(*it)->setIgnoreInputEvents(false);
}
}
deleteAllValues(s_pageDeferrers);
s_pageDeferrers.clear();
s_inHostDispatchHandler = false;
}
开发者ID:UIKit0,项目名称:WebkitAIR,代码行数:35,代码来源:DebuggerAgentManager.cpp
示例2: registerMockedURLFromBaseURL
void ImeOnFocusTest::runImeOnFocusTest(std::string fileName, int expectedImeRequestCount, IntPoint tapPoint, const AtomicString& focusElement, std::string frame)
{
ImeRequestTrackingWebViewClient client;
registerMockedURLFromBaseURL(WebString::fromUTF8(m_baseURL), WebString::fromUTF8(fileName));
WebViewImpl* webView = m_webViewHelper.initialize(true, 0, &client);
webView->resize(WebSize(800, 1200));
loadFrame(webView->mainFrame(), m_baseURL + fileName);
m_document = m_webViewHelper.webViewImpl()->mainFrameImpl()->document().unwrap<Document>();
if (!focusElement.isNull())
focus(focusElement);
EXPECT_EQ(0, client.imeRequestCount());
if (tapPoint.x() >= 0 && tapPoint.y() >= 0)
sendGestureTap(webView, tapPoint);
if (!frame.empty()) {
registerMockedURLFromBaseURL(WebString::fromUTF8(m_baseURL), WebString::fromUTF8(frame));
WebFrame* childFrame = webView->mainFrame()->firstChild();
loadFrame(childFrame, m_baseURL + frame);
}
if (!focusElement.isNull())
focus(focusElement);
EXPECT_EQ(expectedImeRequestCount, client.imeRequestCount());
m_webViewHelper.reset();
}
开发者ID:aobzhirov,项目名称:ChromiumGStreamerBackend,代码行数:28,代码来源:ImeOnFocusTest.cpp
示例3: ASSERT
bool IDBFactoryBackendProxy::allowIndexedDB(ScriptExecutionContext* context, const String& name, const WebSecurityOrigin& origin, PassRefPtr<IDBCallbacks> callbacks)
{
bool allowed;
ASSERT(context->isDocument() || context->isWorkerContext());
if (context->isDocument()) {
Document* document = static_cast<Document*>(context);
WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame());
WebViewImpl* webView = webFrame->viewImpl();
// FIXME: webView->permissionClient() returns 0 in test_shell and content_shell http://crbug.com/137269
allowed = !webView->permissionClient() || webView->permissionClient()->allowIndexedDB(webFrame, name, origin);
} else {
WorkerContext* workerContext = static_cast<WorkerContext*>(context);
WebWorkerBase* webWorkerBase = static_cast<WebWorkerBase*>(&workerContext->thread()->workerLoaderProxy());
WorkerRunLoop& runLoop = workerContext->thread()->runLoop();
String mode = allowIndexedDBMode;
mode.append(String::number(runLoop.createUniqueId()));
RefPtr<AllowIndexedDBMainThreadBridge> bridge = AllowIndexedDBMainThreadBridge::create(webWorkerBase, mode, name);
// Either the bridge returns, or the queue gets terminated.
if (runLoop.runInMode(workerContext, mode) == MessageQueueTerminated) {
bridge->cancel();
allowed = false;
} else
allowed = bridge->result();
}
if (!allowed)
callbacks->onError(WebIDBDatabaseError(IDBDatabaseException::UNKNOWN_ERR, "The user denied permission to access the database."));
return allowed;
}
开发者ID:dog-god,项目名称:iptv,代码行数:32,代码来源:IDBFactoryBackendProxy.cpp
示例4: ASSERT
bool DatabaseObserver::canEstablishDatabase(ScriptExecutionContext* scriptExecutionContext, const String& name, const String& displayName, unsigned long estimatedSize)
{
ASSERT(scriptExecutionContext->isContextThread());
ASSERT(scriptExecutionContext->isDocument() || scriptExecutionContext->isWorkerGlobalScope());
if (scriptExecutionContext->isDocument()) {
Document* document = toDocument(scriptExecutionContext);
WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame());
if (!webFrame)
return false;
WebViewImpl* webView = webFrame->viewImpl();
if (!webView)
return false;
if (webView->permissionClient())
return webView->permissionClient()->allowDatabase(webFrame, name, displayName, estimatedSize);
} else {
WorkerGlobalScope* workerGlobalScope = toWorkerGlobalScope(scriptExecutionContext);
WebWorkerBase* webWorker = static_cast<WebWorkerBase*>(workerGlobalScope->thread()->workerLoaderProxy().toWebWorkerBase());
WebView* view = webWorker->view();
if (!view)
return false;
return allowDatabaseForWorker(view->mainFrame(), name, displayName, estimatedSize);
}
return true;
}
开发者ID:IllusionRom-deprecated,项目名称:android_platform_external_chromium_org_third_party_WebKit,代码行数:25,代码来源:DatabaseObserver.cpp
示例5: postProgressFinishedNotification
void FrameLoaderClientImpl::postProgressFinishedNotification()
{
// FIXME: why might the webview be null? http://b/1234461
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->client())
webview->client()->didStopLoading();
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:7,代码来源:FrameLoaderClientImpl.cpp
示例6: ASSERT
bool DatabaseObserver::canEstablishDatabase(ExecutionContext* executionContext, const String& name, const String& displayName, unsigned long estimatedSize)
{
ASSERT(executionContext->isContextThread());
ASSERT(executionContext->isDocument() || executionContext->isWorkerGlobalScope());
if (executionContext->isDocument()) {
Document* document = toDocument(executionContext);
WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame());
if (!webFrame)
return false;
WebViewImpl* webView = webFrame->viewImpl();
if (!webView)
return false;
if (webView->permissionClient())
return webView->permissionClient()->allowDatabase(webFrame, name, displayName, estimatedSize);
} else {
WorkerGlobalScope* workerGlobalScope = toWorkerGlobalScope(executionContext);
WorkerPermissionClient* permissionClient = WorkerPermissionClient::from(workerGlobalScope);
if (permissionClient->proxy())
return permissionClient->allowDatabase(name, displayName, estimatedSize);
// FIXME: Deprecate this bridge code when PermissionClientProxy is
// implemented by the embedder.
WebWorkerBase* webWorker = static_cast<WebWorkerBase*>(workerGlobalScope->thread()->workerLoaderProxy().toWebWorkerBase());
WebView* view = webWorker->view();
if (!view)
return false;
return allowDatabaseForWorker(view->mainFrame(), name, displayName, estimatedSize);
}
return true;
}
开发者ID:rzr,项目名称:Tizen_Crosswalk,代码行数:31,代码来源:DatabaseObserver.cpp
示例7: ASSERT
bool DatabaseObserver::canEstablishDatabase(ScriptExecutionContext* scriptExecutionContext, const String& name, const String& displayName, unsigned long estimatedSize)
{
ASSERT(scriptExecutionContext->isContextThread());
ASSERT(scriptExecutionContext->isDocument() || scriptExecutionContext->isWorkerContext());
if (scriptExecutionContext->isDocument()) {
Document* document = static_cast<Document*>(scriptExecutionContext);
WebFrameImpl* webFrame = WebFrameImpl::fromFrame(document->frame());
if (!webFrame)
return false;
WebViewImpl* webView = webFrame->viewImpl();
if (!webView)
return false;
if (webView->permissionClient())
return webView->permissionClient()->allowDatabase(webFrame, name, displayName, estimatedSize);
} else {
#if ENABLE(WORKERS)
WorkerContext* workerContext = static_cast<WorkerContext*>(scriptExecutionContext);
WorkerLoaderProxy* workerLoaderProxy = &workerContext->thread()->workerLoaderProxy();
NewWebWorkerBase* webWorker = static_cast<NewWebWorkerBase*>(workerLoaderProxy);
return allowDatabaseForWorker(webWorker->newCommonClient(), webWorker->view()->mainFrame(), name, displayName, estimatedSize);
#else
ASSERT_NOT_REACHED();
#endif
}
return true;
}
开发者ID:jparound30,项目名称:webkit,代码行数:27,代码来源:DatabaseObserver.cpp
示例8: adoptPtrWillBeNoop
// static
PassOwnPtrWillBeRawPtr<WebDevToolsAgentImpl> WebDevToolsAgentImpl::create(WebLocalFrameImpl* frame, WebDevToolsAgentClient* client)
{
WebViewImpl* view = frame->viewImpl();
bool isMainFrame = view && view->mainFrameImpl() == frame;
if (!isMainFrame) {
WebDevToolsAgentImpl* agent = new WebDevToolsAgentImpl(frame, client, frame->inspectorOverlay());
if (frame->frameWidget())
agent->layerTreeViewChanged(frame->frameWidget()->layerTreeView());
return adoptPtrWillBeNoop(agent);
}
WebDevToolsAgentImpl* agent = new WebDevToolsAgentImpl(frame, client, view->inspectorOverlay());
agent->registerAgent(InspectorRenderingAgent::create(view));
agent->registerAgent(InspectorEmulationAgent::create(view));
// TODO(dgozman): migrate each of the following agents to frame once module is ready.
agent->registerAgent(InspectorDatabaseAgent::create(view->page()));
agent->registerAgent(DeviceOrientationInspectorAgent::create(view->page()));
agent->registerAgent(InspectorFileSystemAgent::create(view->page()));
agent->registerAgent(InspectorIndexedDBAgent::create(view->page()));
agent->registerAgent(InspectorAccessibilityAgent::create(view->page()));
agent->registerAgent(InspectorDOMStorageAgent::create(view->page()));
agent->registerAgent(InspectorCacheStorageAgent::create());
agent->layerTreeViewChanged(view->layerTreeView());
return adoptPtrWillBeNoop(agent);
}
开发者ID:alexanderbill,项目名称:blink-crosswalk,代码行数:26,代码来源:WebDevToolsAgentImpl.cpp
示例9: didNotAllowPlugins
void FrameLoaderClientImpl::didNotAllowPlugins()
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->permissionClient())
webview->permissionClient()->didNotAllowPlugins(m_webFrame);
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:7,代码来源:FrameLoaderClientImpl.cpp
示例10: backForwardLength
unsigned FrameLoaderClientImpl::backForwardLength() {
WebViewImpl* webview = m_webFrame->viewImpl();
if (!webview || !webview->client())
return 0;
return webview->client()->historyBackListCount() + 1 +
webview->client()->historyForwardListCount();
}
开发者ID:mirror,项目名称:chromium,代码行数:7,代码来源:FrameLoaderClientImpl.cpp
示例11: getNavigationPolicy
Page* ChromeClientImpl::createWindow(
Frame* frame, const FrameLoadRequest& r, const WindowFeatures& features, const NavigationAction& action)
{
if (!m_webView->client())
return 0;
// FrameLoaderClientImpl may have given us a policy to use for the next new
// window navigation. If not, determine the policy using the same logic as
// show().
WebNavigationPolicy policy;
if (m_nextNewWindowNavigationPolicy != WebNavigationPolicyIgnore) {
policy = m_nextNewWindowNavigationPolicy;
m_nextNewWindowNavigationPolicy = WebNavigationPolicyIgnore;
} else
policy = getNavigationPolicy();
WrappedResourceRequest request;
if (!r.resourceRequest().isEmpty())
request.bind(r.resourceRequest());
else if (!action.resourceRequest().isEmpty())
request.bind(action.resourceRequest());
WebViewImpl* newView = static_cast<WebViewImpl*>(
m_webView->client()->createView(WebFrameImpl::fromFrame(frame), request, features, r.frameName(), policy));
if (!newView)
return 0;
return newView->page();
}
开发者ID:Moondee,项目名称:Artemis,代码行数:28,代码来源:ChromeClientImpl.cpp
示例12: TEST_F
TEST_F(DocumentLoaderTest, isCommittedButEmpty) {
WebViewImpl* webViewImpl =
m_webViewHelper.initializeAndLoad("about:blank", true);
EXPECT_TRUE(toLocalFrame(webViewImpl->page()->mainFrame())
->loader()
.documentLoader()
->isCommittedButEmpty());
}
开发者ID:,项目名称:,代码行数:8,代码来源:
示例13: postProgressEstimateChangedNotification
void FrameLoaderClientImpl::postProgressEstimateChangedNotification()
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->client()) {
webview->client()->didChangeLoadProgress(
m_webFrame, m_webFrame->frame()->page()->progress().estimatedProgress());
}
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:8,代码来源:FrameLoaderClientImpl.cpp
示例14: allowScriptFromSource
bool FrameLoaderClientImpl::allowScriptFromSource(bool enabledPerSettings, const KURL& scriptURL)
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->permissionClient())
return webview->permissionClient()->allowScriptFromSource(m_webFrame, enabledPerSettings, scriptURL);
return enabledPerSettings;
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:8,代码来源:FrameLoaderClientImpl.cpp
示例15: allowImage
bool FrameLoaderClientImpl::allowImage(bool enabledPerSettings, const KURL& imageURL)
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->permissionClient())
return webview->permissionClient()->allowImage(m_webFrame, enabledPerSettings, imageURL);
return enabledPerSettings;
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:8,代码来源:FrameLoaderClientImpl.cpp
示例16: didCreateScriptContext
void FrameLoaderClientImpl::didCreateScriptContext(v8::Handle<v8::Context> context, int extensionGroup, int worldId)
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview->devToolsAgentPrivate())
webview->devToolsAgentPrivate()->didCreateScriptContext(m_webFrame, worldId);
if (m_webFrame->client())
m_webFrame->client()->didCreateScriptContext(m_webFrame, context, extensionGroup, worldId);
}
开发者ID:darktears,项目名称:blink-crosswalk,代码行数:8,代码来源:FrameLoaderClientImpl.cpp
示例17: allowRunningInsecureContent
bool FrameLoaderClientImpl::allowRunningInsecureContent(bool enabledPerSettings, SecurityOrigin* context, const KURL& url)
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->permissionClient())
return webview->permissionClient()->allowRunningInsecureContent(m_webFrame, enabledPerSettings, WebSecurityOrigin(context), WebURL(url));
return enabledPerSettings;
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:8,代码来源:FrameLoaderClientImpl.cpp
示例18: allowPlugins
bool FrameLoaderClientImpl::allowPlugins(bool enabledPerSettings)
{
WebViewImpl* webview = m_webFrame->viewImpl();
if (webview && webview->permissionClient())
return webview->permissionClient()->allowPlugins(m_webFrame, enabledPerSettings);
return enabledPerSettings;
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:8,代码来源:FrameLoaderClientImpl.cpp
示例19: dispatchDidCommitLoad
void FrameLoaderClientImpl::dispatchDidCommitLoad()
{
WebViewImpl* webview = m_webFrame->viewImpl();
bool isNewNavigation;
webview->didCommitLoad(&isNewNavigation, false);
if (m_webFrame->client())
m_webFrame->client()->didCommitProvisionalLoad(m_webFrame, isNewNavigation);
}
开发者ID:huningxin,项目名称:blink-crosswalk,代码行数:9,代码来源:FrameLoaderClientImpl.cpp
示例20: getWebView
void AutofillPopupMenuClient::popupDidHide()
{
WebViewImpl* webView = getWebView();
if (!webView)
return;
webView->autofillPopupDidHide();
webView->autofillClient()->didClearAutofillSelection(WebNode(getTextField()));
}
开发者ID:rzr,项目名称:Tizen_Crosswalk,代码行数:9,代码来源:AutofillPopupMenuClient.cpp
注:本文中的WebViewImpl类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论