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()); }
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); }
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); }
QString QtWebError::url() const { return WKStringCopyQString(WKURLCopyString(WKErrorCopyFailingURL(error.get()))); }