CachedImage* TextFieldDecoratorImpl::imageForNormalState() { if (!m_cachedImageForNormalState) { WebCString imageName = m_client->imageNameForNormalState(); ASSERT(!imageName.isEmpty()); RefPtr<Image> image = Image::loadPlatformResource(imageName.data()); m_cachedImageForNormalState = new CachedImage(image.get()); // The CachedImage owns a RefPtr to the Image. } return m_cachedImageForNormalState.get(); }
String ChromiumBridge::getFontFamilyForCharacters(const UChar* characters, size_t numCharacters) { if (webKitClient()->sandboxSupport()) return webKitClient()->sandboxSupport()->getFontFamilyForCharacters(characters, numCharacters); WebCString family = WebFontInfo::familyForChars(characters, numCharacters); if (family.data()) return WebString::fromUTF8(family.data()); return WebString(); }
CachedImage* TextFieldDecoratorImpl::imageForDisabledState() { if (!m_cachedImageForDisabledState) { WebCString imageName = m_client->imageNameForDisabledState(); if (imageName.isEmpty()) m_cachedImageForDisabledState = imageForNormalState(); else { RefPtr<Image> image = Image::loadPlatformResource(imageName.data()); m_cachedImageForDisabledState = new CachedImage(image.get()); } } return m_cachedImageForDisabledState.get(); }
void WebDevToolsAgentImpl::attach() { if (m_attached) return; if (!m_client->exposeV8DebuggerProtocol()) ClientMessageLoopAdapter::ensureClientMessageLoopCreated(m_client); m_debuggerAgentImpl.set( new DebuggerAgentImpl(m_webViewImpl, this, m_client)); WebCString debuggerScriptJs = m_client->debuggerScriptSource(); WebCore::ScriptDebugServer::shared().setDebuggerScriptSource( WTF::String(debuggerScriptJs.data(), debuggerScriptJs.length())); m_attached = true; }
int WebCString::compare(const WebCString& other) const { // A null string is always less than a non null one. if (isNull() != other.isNull()) return isNull() ? -1 : 1; if (isNull()) return 0; // Both WebStrings are null. return strcmp(m_private->data(), other.m_private->data()); }
TEST_F(WebPageNewSerializeTest, TestMHTMLEncodingWithMorphingDataURL) { // Load a page with some data urls. WebURL topFrameURL = toKURL(m_baseURL); registerMockedURLLoad(topFrameURL, WebString::fromUTF8("page_with_morphing_data.html"), WebString::fromUTF8("pageserializer/"), htmlMimeType()); loadURLInTopFrame(topFrameURL); WebCString mhtmlData = WebPageSerializer::serializeToMHTML(webView()); ASSERT_FALSE(mhtmlData.isEmpty()); // Read the MHTML data line and check that the string data:image is found // exactly two times. size_t nbDataURLs = 0; LineReader lineReader(std::string(mhtmlData.data())); std::string line; while (lineReader.getNextLine(&line)) { if (line.find("data:text") != std::string::npos) nbDataURLs++; } EXPECT_EQ(2u, nbDataURLs); }
void TestRunner::sendWebIntentResponse(const CppArgumentList& arguments, CppVariant* result) { v8::HandleScope scope; v8::Local<v8::Context> ctx = m_webView->mainFrame()->mainWorldScriptContext(); result->set(m_webView->mainFrame()->selectionAsMarkup().utf8()); v8::Context::Scope cscope(ctx); WebIntentRequest* request = m_delegate->currentWebIntentRequest(); if (request->isNull()) return; if (arguments.size() == 1) { WebCString reply = cppVariantToWebString(arguments[0]).utf8(); v8::Handle<v8::Value> v8value = v8::String::New(reply.data(), reply.length()); request->postResult(WebSerializedScriptValue::serialize(v8value)); } else { v8::Handle<v8::Value> v8value = v8::String::New("ERROR"); request->postFailure(WebSerializedScriptValue::serialize(v8value)); } result->setNull(); }
void TestRunner::deliverWebIntent(const CppArgumentList& arguments, CppVariant* result) { if (arguments.size() < 3) return; v8::HandleScope scope; v8::Local<v8::Context> ctx = m_webView->mainFrame()->mainWorldScriptContext(); result->set(m_webView->mainFrame()->selectionAsMarkup().utf8()); v8::Context::Scope cscope(ctx); WebString action = cppVariantToWebString(arguments[0]); WebString type = cppVariantToWebString(arguments[1]); WebCString data = cppVariantToWebString(arguments[2]).utf8(); WebSerializedScriptValue serializedData = WebSerializedScriptValue::serialize(v8::String::New(data.data(), data.length())); WebIntent intent = WebIntent::create(action, type, serializedData.toString(), WebVector<WebString>(), WebVector<WebString>()); m_webView->mainFrame()->deliverIntent(intent, 0, m_intentClient.get()); }
void WebDevToolsAgentImpl::compileUtilityScripts() { v8::HandleScope handleScope; v8::Context::Scope contextScope(m_utilityContext); // Inject javascript into the context. WebCString injectedScriptJs = m_client->injectedScriptSource(); v8::Script::Compile(v8::String::New( injectedScriptJs.data(), injectedScriptJs.length()))->Run(); WebCString injectDispatchJs = m_client->injectedScriptDispatcherSource(); v8::Script::Compile(v8::String::New( injectDispatchJs.data(), injectDispatchJs.length()))->Run(); }