示例#1
0
void TestRunner::queueLoad(JSStringRef url, JSStringRef target)
{
    WKRetainPtr<WKURLRef> baseURLWK(AdoptWK, WKBundleFrameCopyURL(WKBundlePageGetMainFrame(InjectedBundle::shared().page()->page())));
    WKRetainPtr<WKURLRef> urlWK(AdoptWK, WKURLCreateWithBaseURL(baseURLWK.get(), toWTFString(toWK(url)).utf8().data()));
    WKRetainPtr<WKStringRef> urlStringWK(AdoptWK, WKURLCopyString(urlWK.get()));

    InjectedBundle::shared().queueLoad(urlStringWK.get(), toWK(target).get());
}
示例#2
0
void TestRunner::queueLoad(JSStringRef url, JSStringRef target, bool shouldOpenExternalURLs)
{
    auto& injectedBundle = InjectedBundle::singleton();
    WKRetainPtr<WKURLRef> baseURLWK(AdoptWK, WKBundleFrameCopyURL(WKBundlePageGetMainFrame(injectedBundle.page()->page())));
    WKRetainPtr<WKURLRef> urlWK(AdoptWK, WKURLCreateWithBaseURL(baseURLWK.get(), toWTFString(toWK(url)).utf8().data()));
    WKRetainPtr<WKStringRef> urlStringWK(AdoptWK, WKURLCopyString(urlWK.get()));

    injectedBundle.queueLoad(urlStringWK.get(), toWK(target).get(), shouldOpenExternalURLs);
}
示例#3
0
文件: Tab.cpp 项目: setanta/drowser
void Tab::onCommitLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef, const void *clientInfo)
{
    Tab* self = ((Tab*)clientInfo);

    if (page != self->m_page || !WKFrameIsMainFrame(frame))
        return;

    WKURLRef url = WKPageCopyActiveURL(page);
    WKStringRef urlString = WKURLCopyString(url);
    postToBundle(self->m_browser->ui(), "urlChanged", self->m_id, urlString);
    WKRelease(url);
    WKRelease(urlString);
}
示例#4
0
QString QtWebError::url() const
{
    return WKStringCopyQString(WKURLCopyString(WKErrorCopyFailingURL(error.get())));
}