void WebUIClient::unavailablePluginButtonClicked(WebPageProxy* page, WKPluginUnavailabilityReason pluginUnavailabilityReason, ImmutableDictionary* pluginInformation) { if (pluginUnavailabilityReason == kWKPluginUnavailabilityReasonPluginMissing) { if (m_client.missingPluginButtonClicked_deprecatedForUseWithV0) m_client.missingPluginButtonClicked_deprecatedForUseWithV0( toAPI(page), toAPI(pluginInformation->get<WebString>(pluginInformationMIMETypeKey())), toAPI(pluginInformation->get<WebString>(pluginInformationPluginURLKey())), toAPI(pluginInformation->get<WebString>(pluginInformationPluginspageAttributeURLKey())), m_client.clientInfo); } if (m_client.unavailablePluginButtonClicked_deprecatedForUseWithV1) m_client.unavailablePluginButtonClicked_deprecatedForUseWithV1( toAPI(page), pluginUnavailabilityReason, toAPI(pluginInformation->get<WebString>(pluginInformationMIMETypeKey())), toAPI(pluginInformation->get<WebString>(pluginInformationPluginURLKey())), toAPI(pluginInformation->get<WebString>(pluginInformationPluginspageAttributeURLKey())), m_client.clientInfo); if (m_client.unavailablePluginButtonClicked) m_client.unavailablePluginButtonClicked( toAPI(page), pluginUnavailabilityReason, toAPI(pluginInformation), m_client.clientInfo); }
PassRefPtr<ImmutableDictionary> createPluginInformationDictionary(const PluginModuleInfo& plugin, const String& frameURLString, const String& mimeType, const String& pageURLString, const String& pluginspageAttributeURLString, const String& pluginURLString, bool replacementObscured) { ImmutableDictionary::MapType map; getPluginModuleInformation(plugin, map); if (!frameURLString.isEmpty()) map.set(pluginInformationFrameURLKey(), API::URL::create(frameURLString)); if (!mimeType.isEmpty()) map.set(pluginInformationMIMETypeKey(), API::String::create(mimeType)); if (!pageURLString.isEmpty()) map.set(pluginInformationPageURLKey(), API::URL::create(pageURLString)); if (!pluginspageAttributeURLString.isEmpty()) map.set(pluginInformationPluginspageAttributeURLKey(), API::URL::create(pluginspageAttributeURLString)); if (!pluginURLString.isEmpty()) map.set(pluginInformationPluginURLKey(), API::URL::create(pluginURLString)); map.set(plugInInformationReplacementObscuredKey(), API::Boolean::create(replacementObscured)); return ImmutableDictionary::create(std::move(map)); }