void WebChromeClient::unavailablePluginButtonClicked(Element* element, RenderEmbeddedObject::PluginUnavailabilityReason pluginUnavailabilityReason) const { #if ENABLE(NETSCAPE_PLUGIN_API) ASSERT(element->hasTagName(objectTag) || element->hasTagName(embedTag) || element->hasTagName(appletTag)); ASSERT(pluginUnavailabilityReason == RenderEmbeddedObject::PluginMissing || pluginUnavailabilityReason == RenderEmbeddedObject::InsecurePluginVersion || pluginUnavailabilityReason); HTMLPlugInImageElement* pluginElement = static_cast<HTMLPlugInImageElement*>(element); String frameURLString = pluginElement->document().frame()->loader().documentLoader()->responseURL().string(); String pageURLString = m_page->mainFrame()->loader().documentLoader()->responseURL().string(); String pluginURLString = pluginElement->document().completeURL(pluginElement->url()).string(); URL pluginspageAttributeURL = element->document().completeURL(stripLeadingAndTrailingHTMLSpaces(pluginElement->getAttribute(pluginspageAttr))); if (!pluginspageAttributeURL.protocolIsInHTTPFamily()) pluginspageAttributeURL = URL(); m_page->send(Messages::WebPageProxy::UnavailablePluginButtonClicked(pluginUnavailabilityReason, pluginElement->serviceType(), pluginURLString, pluginspageAttributeURL.string(), frameURLString, pageURLString)); #else UNUSED_PARAM(element); UNUSED_PARAM(pluginUnavailabilityReason); #endif // ENABLE(NETSCAPE_PLUGIN_API) }
void WebChromeClient::unavailablePluginButtonClicked(Element* element, RenderEmbeddedObject::PluginUnavailabilityReason pluginUnavailabilityReason) const { ASSERT(element->hasTagName(objectTag) || element->hasTagName(embedTag)); ASSERT(pluginUnavailabilityReason == RenderEmbeddedObject::PluginMissing || pluginUnavailabilityReason == RenderEmbeddedObject::InsecurePluginVersion); HTMLPlugInImageElement* pluginElement = static_cast<HTMLPlugInImageElement*>(element); m_page->send(Messages::WebPageProxy::UnavailablePluginButtonClicked(pluginUnavailabilityReason, pluginElement->serviceType(), pluginElement->url(), pluginElement->getAttribute(pluginspageAttr))); }
void WebChromeClient::missingPluginButtonClicked(Element* element) const { ASSERT(element->hasTagName(objectTag) || element->hasTagName(embedTag)); HTMLPlugInImageElement* pluginElement = static_cast<HTMLPlugInImageElement*>(element); m_page->send(Messages::WebPageProxy::MissingPluginButtonClicked(pluginElement->serviceType(), pluginElement->url(), pluginElement->getAttribute(pluginspageAttr))); }