Make WebPluginInfo more generic
- To account for pepper plugins, it grows a type field
- move WebPluginInfo from webkit::npapi to webkit:: and move the files as well.
This will allow us to remove hacks to get pepper plugins to load soon
BUG=89248
TEST=none
Review URL: http://codereview.chromium.org/7648017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96718 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/metrics/metrics_log.cc b/chrome/browser/metrics/metrics_log.cc
index c826923e..ce82634 100644
--- a/chrome/browser/metrics/metrics_log.cc
+++ b/chrome/browser/metrics/metrics_log.cc
@@ -26,7 +26,7 @@
#include "chrome/common/pref_names.h"
#include "content/browser/gpu/gpu_data_manager.h"
#include "googleurl/src/gurl.h"
-#include "webkit/plugins/npapi/webplugininfo.h"
+#include "webkit/plugins/webplugininfo.h"
#define OPEN_ELEMENT_FOR_SCOPE(name) ScopedElement scoped_element(this, name)
@@ -270,12 +270,12 @@
}
void MetricsLog::WritePluginList(
- const std::vector<webkit::npapi::WebPluginInfo>& plugin_list) {
+ const std::vector<webkit::WebPluginInfo>& plugin_list) {
DCHECK(!locked_);
OPEN_ELEMENT_FOR_SCOPE("plugins");
- for (std::vector<webkit::npapi::WebPluginInfo>::const_iterator iter =
+ for (std::vector<webkit::WebPluginInfo>::const_iterator iter =
plugin_list.begin();
iter != plugin_list.end(); ++iter) {
OPEN_ELEMENT_FOR_SCOPE("plugin");
@@ -291,7 +291,7 @@
#endif
WriteAttribute("filename", CreateBase64Hash(filename_bytes));
WriteAttribute("version", UTF16ToUTF8(iter->version));
- WriteIntAttribute("disabled", !webkit::npapi::IsPluginEnabled(*iter));
+ WriteIntAttribute("disabled", !webkit::IsPluginEnabled(*iter));
}
}
@@ -302,7 +302,7 @@
}
void MetricsLog::RecordEnvironment(
- const std::vector<webkit::npapi::WebPluginInfo>& plugin_list,
+ const std::vector<webkit::WebPluginInfo>& plugin_list,
const DictionaryValue* profile_metrics) {
DCHECK(!locked_);
diff --git a/chrome/browser/metrics/metrics_log.h b/chrome/browser/metrics/metrics_log.h
index 36f2ec5d5..fbab92e 100644
--- a/chrome/browser/metrics/metrics_log.h
+++ b/chrome/browser/metrics/metrics_log.h
@@ -22,10 +22,8 @@
}
namespace webkit {
-namespace npapi {
struct WebPluginInfo;
}
-}
class MetricsLog : public MetricsLogBase {
public:
@@ -44,7 +42,7 @@
// that are to be recorded. Each value in profile_metrics should be a
// dictionary giving the metrics for the profile.
void RecordEnvironment(
- const std::vector<webkit::npapi::WebPluginInfo>& plugin_list,
+ const std::vector<webkit::WebPluginInfo>& plugin_list,
const base::DictionaryValue* profile_metrics);
// Records the input text, available choices, and selected entry when the
@@ -92,7 +90,7 @@
// Writes the list of installed plugins.
void WritePluginList(
- const std::vector<webkit::npapi::WebPluginInfo>& plugin_list);
+ const std::vector<webkit::WebPluginInfo>& plugin_list);
// Within the profile group, write basic install info including appversion.
void WriteInstallElement();
diff --git a/chrome/browser/metrics/metrics_service.cc b/chrome/browser/metrics/metrics_service.cc
index 281905b..aec969f7 100644
--- a/chrome/browser/metrics/metrics_service.cc
+++ b/chrome/browser/metrics/metrics_service.cc
@@ -191,7 +191,7 @@
#include "content/common/child_process_info.h"
#include "content/common/notification_service.h"
#include "webkit/plugins/npapi/plugin_list.h"
-#include "webkit/plugins/npapi/webplugininfo.h"
+#include "webkit/plugins/webplugininfo.h"
// TODO(port): port browser_distribution.h.
#if !defined(OS_POSIX)
@@ -321,7 +321,7 @@
public:
explicit InitTaskComplete(
const std::string& hardware_class,
- const std::vector<webkit::npapi::WebPluginInfo>& plugins)
+ const std::vector<webkit::WebPluginInfo>& plugins)
: hardware_class_(hardware_class), plugins_(plugins) {}
virtual void Run() {
@@ -331,7 +331,7 @@
private:
std::string hardware_class_;
- std::vector<webkit::npapi::WebPluginInfo> plugins_;
+ std::vector<webkit::WebPluginInfo> plugins_;
};
class MetricsService::InitTask : public Task {
@@ -340,7 +340,7 @@
: callback_loop_(callback_loop) {}
virtual void Run() {
- std::vector<webkit::npapi::WebPluginInfo> plugins;
+ std::vector<webkit::WebPluginInfo> plugins;
webkit::npapi::PluginList::Singleton()->GetPlugins(&plugins);
std::string hardware_class; // Empty string by default.
#if defined(OS_CHROMEOS)
@@ -794,7 +794,7 @@
void MetricsService::OnInitTaskComplete(
const std::string& hardware_class,
- const std::vector<webkit::npapi::WebPluginInfo>& plugins) {
+ const std::vector<webkit::WebPluginInfo>& plugins) {
DCHECK(state_ == INIT_TASK_SCHEDULED);
hardware_class_ = hardware_class;
plugins_ = plugins;
diff --git a/chrome/browser/metrics/metrics_service.h b/chrome/browser/metrics/metrics_service.h
index 8d38f99..8e477a6 100644
--- a/chrome/browser/metrics/metrics_service.h
+++ b/chrome/browser/metrics/metrics_service.h
@@ -40,11 +40,8 @@
}
namespace webkit {
-namespace npapi {
struct WebPluginInfo;
}
-}
-
class MetricsService : public NotificationObserver,
public URLFetcher::Delegate,
@@ -156,7 +153,7 @@
// Callback to let us know that the init task is done.
void OnInitTaskComplete(
const std::string& hardware_class,
- const std::vector<webkit::npapi::WebPluginInfo>& plugins);
+ const std::vector<webkit::WebPluginInfo>& plugins);
// When we start a new version of Chromium (different from our last run), we
// need to discard the old crash stats so that we don't attribute crashes etc.
@@ -356,7 +353,7 @@
std::string hardware_class_;
// The list of plugins which was retrieved on the file thread.
- std::vector<webkit::npapi::WebPluginInfo> plugins_;
+ std::vector<webkit::WebPluginInfo> plugins_;
// The outstanding transmission appears as a URL Fetch operation.
scoped_ptr<URLFetcher> current_fetch_;