diff options
Diffstat (limited to 'chrome')
92 files changed, 901 insertions, 444 deletions
diff --git a/chrome/browser/content_setting_bubble_model.cc b/chrome/browser/content_setting_bubble_model.cc index 65f1baa..2cc5d911 100644 --- a/chrome/browser/content_setting_bubble_model.cc +++ b/chrome/browser/content_setting_bubble_model.cc @@ -474,6 +474,21 @@ ContentSettingBubbleModel::ContentSettingBubbleModel( ContentSettingBubbleModel::~ContentSettingBubbleModel() { } +ContentSettingBubbleModel::RadioGroup::RadioGroup() : default_item(0) {} + +ContentSettingBubbleModel::RadioGroup::~RadioGroup() {} + +ContentSettingBubbleModel::DomainList::DomainList() {} + +ContentSettingBubbleModel::DomainList::~DomainList() {} + +ContentSettingBubbleModel::BubbleContent::BubbleContent() + : load_plugins_link_enabled(false) { +} + +ContentSettingBubbleModel::BubbleContent::~BubbleContent() {} + + void ContentSettingBubbleModel::AddBlockedResource( const std::string& resource_identifier) { bubble_content_.resource_identifiers.insert(resource_identifier); diff --git a/chrome/browser/content_setting_bubble_model.h b/chrome/browser/content_setting_bubble_model.h index 97664d8..49af1b2 100644 --- a/chrome/browser/content_setting_bubble_model.h +++ b/chrome/browser/content_setting_bubble_model.h @@ -42,6 +42,9 @@ class ContentSettingBubbleModel : public NotificationObserver { typedef std::vector<std::string> RadioItems; struct RadioGroup { + RadioGroup(); + ~RadioGroup(); + GURL url; std::string title; RadioItems radio_items; @@ -49,11 +52,17 @@ class ContentSettingBubbleModel : public NotificationObserver { }; struct DomainList { + DomainList(); + ~DomainList(); + std::string title; std::set<std::string> hosts; }; struct BubbleContent { + BubbleContent(); + ~BubbleContent(); + std::string title; PopupItems popup_items; RadioGroup radio_group; @@ -64,6 +73,9 @@ class ContentSettingBubbleModel : public NotificationObserver { std::string info_link; std::string load_plugins_link_title; bool load_plugins_link_enabled; + + private: + DISALLOW_COPY_AND_ASSIGN(BubbleContent); }; const BubbleContent& bubble_content() const { return bubble_content_; } diff --git a/chrome/browser/file_path_watcher.cc b/chrome/browser/file_path_watcher.cc new file mode 100644 index 0000000..19aff7a --- /dev/null +++ b/chrome/browser/file_path_watcher.cc @@ -0,0 +1,19 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Cross platform methods for FilePathWatcher. See the various platform +// specific implementaiton files, too. + +#include "chrome/browser/file_path_watcher.h" + +FilePathWatcher::~FilePathWatcher() { + impl_->Cancel(); +} + +bool FilePathWatcher::Watch(const FilePath& path, + Delegate* delegate) { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); + DCHECK(path.IsAbsolute()); + return impl_->Watch(path, delegate); +} diff --git a/chrome/browser/file_path_watcher.h b/chrome/browser/file_path_watcher.h index da123c6..51d25cf 100644 --- a/chrome/browser/file_path_watcher.h +++ b/chrome/browser/file_path_watcher.h @@ -33,17 +33,11 @@ class FilePathWatcher { }; FilePathWatcher(); - ~FilePathWatcher() { - impl_->Cancel(); - } + ~FilePathWatcher(); // Register interest in any changes on |path|. OnPathChanged will be called // back for each change. Returns true on success. - bool Watch(const FilePath& path, Delegate* delegate) WARN_UNUSED_RESULT { - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); - DCHECK(path.IsAbsolute()); - return impl_->Watch(path, delegate); - } + bool Watch(const FilePath& path, Delegate* delegate) WARN_UNUSED_RESULT; // Used internally to encapsulate different members on different platforms. class PlatformDelegate diff --git a/chrome/browser/geolocation/device_data_provider.cc b/chrome/browser/geolocation/device_data_provider.cc new file mode 100644 index 0000000..9fe592a --- /dev/null +++ b/chrome/browser/geolocation/device_data_provider.cc @@ -0,0 +1,105 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/geolocation/device_data_provider.h" + +namespace { + +bool CellDataMatches(const CellData &data1, const CellData &data2) { + return data1.Matches(data2); +} + +} // namespace + +CellData::CellData() + : cell_id(kint32min), + location_area_code(kint32min), + mobile_network_code(kint32min), + mobile_country_code(kint32min), + radio_signal_strength(kint32min), + timing_advance(kint32min) { +} + +RadioData::RadioData() + : home_mobile_network_code(kint32min), + home_mobile_country_code(kint32min), + radio_type(RADIO_TYPE_UNKNOWN) { +} + +RadioData::~RadioData() {} + +bool RadioData::Matches(const RadioData &other) const { + if (cell_data.size() != other.cell_data.size()) { + return false; + } + if (!std::equal(cell_data.begin(), cell_data.end(), other.cell_data.begin(), + CellDataMatches)) { + return false; + } + return device_id == other.device_id && + home_mobile_network_code == other.home_mobile_network_code && + home_mobile_country_code == other.home_mobile_country_code && + radio_type == other.radio_type && + carrier == other.carrier; +} + +AccessPointData::AccessPointData() + : radio_signal_strength(kint32min), + channel(kint32min), + signal_to_noise(kint32min) { +} + +AccessPointData::~AccessPointData() {} + +WifiData::WifiData() {} + +WifiData::~WifiData() {} + +bool WifiData::DiffersSignificantly(const WifiData& other) const { + // More than 4 or 50% of access points added or removed is significant. + static const size_t kMinChangedAccessPoints = 4; + const size_t min_ap_count = + std::min(access_point_data.size(), other.access_point_data.size()); + const size_t max_ap_count = + std::max(access_point_data.size(), other.access_point_data.size()); + const size_t difference_threadhold = std::min(kMinChangedAccessPoints, + min_ap_count / 2); + if (max_ap_count > min_ap_count + difference_threadhold) + return true; + // Compute size of interesction of old and new sets. + size_t num_common = 0; + for (AccessPointDataSet::const_iterator iter = access_point_data.begin(); + iter != access_point_data.end(); + iter++) { + if (other.access_point_data.find(*iter) != + other.access_point_data.end()) { + ++num_common; + } + } + DCHECK(num_common <= min_ap_count); + + // Test how many have changed. + return max_ap_count > num_common + difference_threadhold; +} + +GatewayData::GatewayData() {} + +GatewayData::~GatewayData() {} + +bool GatewayData::DiffersSignificantly(const GatewayData& other) const { + // Any change is significant. + if (this->router_data.size() != other.router_data.size()) + return true; + RouterDataSet::const_iterator iter1 = router_data.begin(); + RouterDataSet::const_iterator iter2 = other.router_data.begin(); + while (iter1 != router_data.end()) { + if (iter1->mac_address != iter2->mac_address) { + // There is a difference between the sets of routers. + return true; + } + ++iter1; + ++iter2; + } + return false; +} diff --git a/chrome/browser/geolocation/device_data_provider.h b/chrome/browser/geolocation/device_data_provider.h index 9cd4390..b6a3882 100644 --- a/chrome/browser/geolocation/device_data_provider.h +++ b/chrome/browser/geolocation/device_data_provider.h @@ -44,13 +44,7 @@ // Cell radio data relating to a single cell tower. struct CellData { - CellData() - : cell_id(kint32min), - location_area_code(kint32min), - mobile_network_code(kint32min), - mobile_country_code(kint32min), - radio_signal_strength(kint32min), - timing_advance(kint32min) {} + CellData(); bool Matches(const CellData &other) const { // Ignore radio_signal_strength when matching. return cell_id == other.cell_id && @@ -70,10 +64,6 @@ struct CellData { // meters. }; -static bool CellDataMatches(const CellData &data1, const CellData &data2) { - return data1.Matches(data2); -} - enum RadioType { RADIO_TYPE_UNKNOWN, RADIO_TYPE_GSM, @@ -83,24 +73,11 @@ enum RadioType { // All data for the cell radio. struct RadioData { - RadioData() - : home_mobile_network_code(kint32min), - home_mobile_country_code(kint32min), - radio_type(RADIO_TYPE_UNKNOWN) {} - bool Matches(const RadioData &other) const { - if (cell_data.size() != other.cell_data.size()) { - return false; - } - if (!std::equal(cell_data.begin(), cell_data.end(), other.cell_data.begin(), - CellDataMatches)) { - return false; - } - return device_id == other.device_id && - home_mobile_network_code == other.home_mobile_network_code && - home_mobile_country_code == other.home_mobile_country_code && - radio_type == other.radio_type && - carrier == other.carrier; - } + RadioData(); + ~RadioData(); + + bool Matches(const RadioData &other) const; + // Determines whether a new set of radio data differs significantly from this. bool DiffersSignificantly(const RadioData &other) const { // This is required by MockDeviceDataProviderImpl. @@ -113,15 +90,14 @@ struct RadioData { int home_mobile_network_code; // For the device's home network. int home_mobile_country_code; // For the device's home network. RadioType radio_type; // Mobile radio type. - string16 carrier; // Carrier name. + string16 carrier; // Carrier name. }; // Wifi data relating to a single access point. struct AccessPointData { - AccessPointData() - : radio_signal_strength(kint32min), - channel(kint32min), - signal_to_noise(kint32min) {} + AccessPointData(); + ~AccessPointData(); + // MAC address, formatted as per MacAddressAsString16. string16 mac_address; int radio_signal_strength; // Measured in dBm @@ -141,33 +117,11 @@ struct AccessPointDataLess { // All data for wifi. struct WifiData { - // Determines whether a new set of WiFi data differs significantly from this. - bool DiffersSignificantly(const WifiData& other) const { - // More than 4 or 50% of access points added or removed is significant. - static const size_t kMinChangedAccessPoints = 4; - const size_t min_ap_count = - std::min(access_point_data.size(), other.access_point_data.size()); - const size_t max_ap_count = - std::max(access_point_data.size(), other.access_point_data.size()); - const size_t difference_threadhold = std::min(kMinChangedAccessPoints, - min_ap_count / 2); - if (max_ap_count > min_ap_count + difference_threadhold) - return true; - // Compute size of interesction of old and new sets. - size_t num_common = 0; - for (AccessPointDataSet::const_iterator iter = access_point_data.begin(); - iter != access_point_data.end(); - iter++) { - if (other.access_point_data.find(*iter) != - other.access_point_data.end()) { - ++num_common; - } - } - DCHECK(num_common <= min_ap_count); + WifiData(); + ~WifiData(); - // Test how many have changed. - return max_ap_count > num_common + difference_threadhold; - } + // Determines whether a new set of WiFi data differs significantly from this. + bool DiffersSignificantly(const WifiData& other) const; // Store access points as a set, sorted by MAC address. This allows quick // comparison of sets for detecting changes and for caching. @@ -177,7 +131,6 @@ struct WifiData { // Gateway data relating to a single router. struct RouterData { - RouterData() {} // MAC address, formatted as per MacAddressAsString16. string16 mac_address; }; @@ -193,24 +146,12 @@ struct RouterDataLess { // All gateway data for routers. struct GatewayData { + GatewayData(); + ~GatewayData(); + // Determines whether a new set of gateway data differs significantly // from this. - bool DiffersSignificantly(const GatewayData& other) const { - // Any change is significant. - if (this->router_data.size() != other.router_data.size()) - return true; - RouterDataSet::const_iterator iter1 = router_data.begin(); - RouterDataSet::const_iterator iter2 = other.router_data.begin(); - while (iter1 != router_data.end()) { - if (iter1->mac_address != iter2->mac_address) { - // There is a difference between the sets of routers. - return true; - } - ++iter1; - ++iter2; - } - return false; - } + bool DiffersSignificantly(const GatewayData& other) const; // Store routers as a set, sorted by MAC address. This allows quick // comparison of sets for detecting changes and for caching. diff --git a/chrome/browser/gtk/options/simple_content_exceptions_window.cc b/chrome/browser/gtk/options/simple_content_exceptions_window.cc index 68c211a..682cca1 100644 --- a/chrome/browser/gtk/options/simple_content_exceptions_window.cc +++ b/chrome/browser/gtk/options/simple_content_exceptions_window.cc @@ -153,6 +153,8 @@ SimpleContentExceptionsWindow::SimpleContentExceptionsWindow( g_signal_connect(dialog_, "destroy", G_CALLBACK(OnWindowDestroyThunk), this); } +SimpleContentExceptionsWindow::~SimpleContentExceptionsWindow() {} + void SimpleContentExceptionsWindow::SetColumnValues(int row, GtkTreeIter* iter) { std::wstring hostname = model_->GetText(row, IDS_EXCEPTIONS_HOSTNAME_HEADER); diff --git a/chrome/browser/gtk/options/simple_content_exceptions_window.h b/chrome/browser/gtk/options/simple_content_exceptions_window.h index c18dab1..2d3b068 100644 --- a/chrome/browser/gtk/options/simple_content_exceptions_window.h +++ b/chrome/browser/gtk/options/simple_content_exceptions_window.h @@ -23,6 +23,8 @@ class SimpleContentExceptionsWindow RemoveRowsTableModel* model, int tile_message_id); + virtual ~SimpleContentExceptionsWindow(); + // gtk_tree::TableAdapter::Delegate implementation: virtual void SetColumnValues(int row, GtkTreeIter* iter); virtual void OnAnyModelUpdateStart(); diff --git a/chrome/browser/icon_manager.cc b/chrome/browser/icon_manager.cc index 98ff322..8f74ce4 100644 --- a/chrome/browser/icon_manager.cc +++ b/chrome/browser/icon_manager.cc @@ -10,6 +10,12 @@ #include "third_party/skia/include/core/SkBitmap.h" #include "third_party/skia/include/core/SkCanvas.h" +struct IconManager::ClientRequest { + scoped_refptr<IconRequest> request; + IconGroupID group; + IconLoader::IconSize size; +}; + IconManager::IconManager() { } diff --git a/chrome/browser/icon_manager.h b/chrome/browser/icon_manager.h index 7ccd55a..210fa28 100644 --- a/chrome/browser/icon_manager.h +++ b/chrome/browser/icon_manager.h @@ -106,13 +106,9 @@ class IconManager : public IconLoader::Delegate, IconMap icon_cache_; typedef CancelableRequest<IconRequestCallback> IconRequest; - typedef struct { - scoped_refptr<IconRequest> request; - IconGroupID group; - IconLoader::IconSize size; - } ClientRequest; // Asynchronous requests that have not yet been completed. + struct ClientRequest; typedef std::map<IconLoader*, ClientRequest> ClientRequests; ClientRequests requests_; diff --git a/chrome/browser/in_process_webkit/indexed_db_callbacks.cc b/chrome/browser/in_process_webkit/indexed_db_callbacks.cc new file mode 100644 index 0000000..faaa933 --- /dev/null +++ b/chrome/browser/in_process_webkit/indexed_db_callbacks.cc @@ -0,0 +1,43 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/in_process_webkit/indexed_db_callbacks.h" + +IndexedDBCallbacksBase::IndexedDBCallbacksBase( + IndexedDBDispatcherHost* dispatcher_host, + int32 response_id) + : dispatcher_host_(dispatcher_host), + response_id_(response_id) { +} + +IndexedDBCallbacksBase::~IndexedDBCallbacksBase() {} + +IndexedDBTransactionCallbacks::IndexedDBTransactionCallbacks( + IndexedDBDispatcherHost* dispatcher_host, + int transaction_id) + : dispatcher_host_(dispatcher_host), + transaction_id_(transaction_id) { +} + +IndexedDBTransactionCallbacks::~IndexedDBTransactionCallbacks() {} + +void IndexedDBCallbacksBase::onError(const WebKit::WebIDBDatabaseError& error) { + dispatcher_host_->Send(new ViewMsg_IDBCallbacksError( + response_id_, error.code(), error.message())); +} + +void IndexedDBTransactionCallbacks::onAbort() { + dispatcher_host_->Send( + new ViewMsg_IDBTransactionCallbacksAbort(transaction_id_)); +} + +void IndexedDBTransactionCallbacks::onComplete() { + dispatcher_host_->Send( + new ViewMsg_IDBTransactionCallbacksComplete(transaction_id_)); +} + +void IndexedDBTransactionCallbacks::onTimeout() { + dispatcher_host_->Send( + new ViewMsg_IDBTransactionCallbacksTimeout(transaction_id_)); +} diff --git a/chrome/browser/in_process_webkit/indexed_db_callbacks.h b/chrome/browser/in_process_webkit/indexed_db_callbacks.h index 1c6ed37..653e211 100644 --- a/chrome/browser/in_process_webkit/indexed_db_callbacks.h +++ b/chrome/browser/in_process_webkit/indexed_db_callbacks.h @@ -37,14 +37,12 @@ template <> struct WebIDBToMsgHelper<WebKit::WebIDBTransaction> { // The code the following two classes share. class IndexedDBCallbacksBase : public WebKit::WebIDBCallbacks { public: - IndexedDBCallbacksBase( - IndexedDBDispatcherHost* dispatcher_host, int32 response_id) - : dispatcher_host_(dispatcher_host), response_id_(response_id) { } + IndexedDBCallbacksBase(IndexedDBDispatcherHost* dispatcher_host, + int32 response_id); - virtual void onError(const WebKit::WebIDBDatabaseError& error) { - dispatcher_host_->Send(new ViewMsg_IDBCallbacksError( - response_id_, error.code(), error.message())); - } + virtual ~IndexedDBCallbacksBase(); + + virtual void onError(const WebKit::WebIDBDatabaseError& error); protected: IndexedDBDispatcherHost* dispatcher_host() const { @@ -166,25 +164,15 @@ class IndexedDBTransactionCallbacks : public WebKit::WebIDBTransactionCallbacks { public: IndexedDBTransactionCallbacks(IndexedDBDispatcherHost* dispatcher_host, - int transaction_id) - : dispatcher_host_(dispatcher_host), - transaction_id_(transaction_id) { - } + int transaction_id); - virtual void onAbort() { - dispatcher_host_->Send( - new ViewMsg_IDBTransactionCallbacksAbort(transaction_id_)); - } + virtual ~IndexedDBTransactionCallbacks(); - virtual void onComplete() { - dispatcher_host_->Send( - new ViewMsg_IDBTransactionCallbacksComplete(transaction_id_)); - } + virtual void onAbort(); - virtual void onTimeout() { - dispatcher_host_->Send( - new ViewMsg_IDBTransactionCallbacksTimeout(transaction_id_)); - } + virtual void onComplete(); + + virtual void onTimeout(); private: scoped_refptr<IndexedDBDispatcherHost> dispatcher_host_; diff --git a/chrome/browser/language_order_table_model.cc b/chrome/browser/language_order_table_model.cc index 0f3680b..c1a4103 100644 --- a/chrome/browser/language_order_table_model.cc +++ b/chrome/browser/language_order_table_model.cc @@ -16,6 +16,8 @@ LanguageOrderTableModel::LanguageOrderTableModel() : observer_(NULL) { } +LanguageOrderTableModel::~LanguageOrderTableModel() {} + void LanguageOrderTableModel::SetAcceptLanguagesString( const std::string& language_list) { std::vector<std::string> languages_vector; diff --git a/chrome/browser/language_order_table_model.h b/chrome/browser/language_order_table_model.h index 4b11748..9cfdf4c 100644 --- a/chrome/browser/language_order_table_model.h +++ b/chrome/browser/language_order_table_model.h @@ -18,6 +18,8 @@ class LanguageOrderTableModel : public TableModel { public: LanguageOrderTableModel(); + virtual ~LanguageOrderTableModel(); + // Set Language List. void SetAcceptLanguagesString(const std::string& language_list); diff --git a/chrome/browser/parsers/metadata_parser_filebase.cc b/chrome/browser/parsers/metadata_parser_filebase.cc index 0146f3f..123cb6f 100644 --- a/chrome/browser/parsers/metadata_parser_filebase.cc +++ b/chrome/browser/parsers/metadata_parser_filebase.cc @@ -9,10 +9,12 @@ #include "base/utf_string_conversions.h" FileMetadataParser::FileMetadataParser(const FilePath& path) - : MetadataParser(path) { - path_ = path; + : MetadataParser(path), + path_(path) { } +FileMetadataParser::~FileMetadataParser() {} + bool FileMetadataParser::Parse() { std::string value; int64 size; @@ -48,6 +50,8 @@ FileMetadataPropertyIterator::FileMetadataPropertyIterator( it = properties_.begin(); } +FileMetadataPropertyIterator::~FileMetadataPropertyIterator() {} + bool FileMetadataPropertyIterator::GetNext(std::string* key, std::string* value) { if (it == properties_.end()) { diff --git a/chrome/browser/parsers/metadata_parser_filebase.h b/chrome/browser/parsers/metadata_parser_filebase.h index 8b232a2..9ed5775 100644 --- a/chrome/browser/parsers/metadata_parser_filebase.h +++ b/chrome/browser/parsers/metadata_parser_filebase.h @@ -21,6 +21,8 @@ class FileMetadataParser : public MetadataParser { public: explicit FileMetadataParser(const FilePath& path); + virtual ~FileMetadataParser(); + // Implementation of MetadataParser virtual bool Parse(); virtual bool GetProperty(const std::string& key, std::string* value); @@ -39,6 +41,8 @@ class FileMetadataPropertyIterator : public MetadataPropertyIterator { public: explicit FileMetadataPropertyIterator(PropertyMap& properties); + virtual ~FileMetadataPropertyIterator(); + // Implementation of MetadataPropertyIterator virtual bool GetNext(std::string* key, std::string* value); virtual int Length(); diff --git a/chrome/browser/policy/config_dir_policy_provider.cc b/chrome/browser/policy/config_dir_policy_provider.cc index 6fe7630..a3f3e04 100644 --- a/chrome/browser/policy/config_dir_policy_provider.cc +++ b/chrome/browser/policy/config_dir_policy_provider.cc @@ -44,6 +44,8 @@ PolicyDirLoader::PolicyDirLoader( DCHECK(policy_.get()); } +PolicyDirLoader::~PolicyDirLoader() {} + void PolicyDirLoader::Stop() { if (!BrowserThread::CurrentlyOn(BrowserThread::FILE)) { BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE, @@ -205,6 +207,8 @@ void PolicyDirLoader::ReloadFromTask() { // PolicyDirWatcher implementation: +PolicyDirWatcher::PolicyDirWatcher() {} + void PolicyDirWatcher::Init(PolicyDirLoader* loader) { // Initialization can happen early when the file thread is not yet available. // So post a task to ourselves on the UI thread which will run after threading @@ -215,6 +219,8 @@ void PolicyDirWatcher::Init(PolicyDirLoader* loader) { scoped_refptr<PolicyDirLoader>(loader))); } +PolicyDirWatcher::~PolicyDirWatcher() {} + void PolicyDirWatcher::InitWatcher( const scoped_refptr<PolicyDirLoader>& loader) { if (!BrowserThread::CurrentlyOn(BrowserThread::FILE)) { diff --git a/chrome/browser/policy/config_dir_policy_provider.h b/chrome/browser/policy/config_dir_policy_provider.h index 3657944..055ce06 100644 --- a/chrome/browser/policy/config_dir_policy_provider.h +++ b/chrome/browser/policy/config_dir_policy_provider.h @@ -38,6 +38,8 @@ class PolicyDirLoader : public FilePathWatcher::Delegate { int settle_interval_seconds, int reload_interval_minutes); + virtual ~PolicyDirLoader(); + // Stops any pending reload tasks. void Stop(); @@ -118,7 +120,7 @@ class PolicyDirLoader : public FilePathWatcher::Delegate { // initializing the watcher object on the file thread. class PolicyDirWatcher : public base::RefCountedThreadSafe<PolicyDirWatcher> { public: - PolicyDirWatcher() {} + PolicyDirWatcher(); // Runs initialization. This is in a separate method since we need to post a // task (which cannot be done from the constructor). @@ -127,7 +129,7 @@ class PolicyDirWatcher : public base::RefCountedThreadSafe<PolicyDirWatcher> { private: // PolicyDirWatcher objects should only be deleted by RefCountedThreadSafe. friend class base::RefCountedThreadSafe<PolicyDirWatcher>; - ~PolicyDirWatcher() {} + virtual ~PolicyDirWatcher(); // Actually sets up the watch with the FilePathWatcher code. void InitWatcher(const scoped_refptr<PolicyDirLoader>& loader); diff --git a/chrome/browser/policy/configuration_policy_pref_store.cc b/chrome/browser/policy/configuration_policy_pref_store.cc index 74c4e51..8ebd74c 100644 --- a/chrome/browser/policy/configuration_policy_pref_store.cc +++ b/chrome/browser/policy/configuration_policy_pref_store.cc @@ -271,6 +271,8 @@ ConfigurationPolicyPrefStore::ConfigurationPolicyPrefStore( use_system_proxy_(false) { } +ConfigurationPolicyPrefStore::~ConfigurationPolicyPrefStore() {} + PrefStore::PrefReadError ConfigurationPolicyPrefStore::ReadPrefs() { proxy_disabled_ = false; proxy_configuration_specified_ = false; diff --git a/chrome/browser/policy/configuration_policy_pref_store.h b/chrome/browser/policy/configuration_policy_pref_store.h index 8f8167d..83ab847 100644 --- a/chrome/browser/policy/configuration_policy_pref_store.h +++ b/chrome/browser/policy/configuration_policy_pref_store.h @@ -26,7 +26,7 @@ class ConfigurationPolicyPrefStore : public PrefStore, // The ConfigurationPolicyPrefStore does not take ownership of the // passed-in |provider|. explicit ConfigurationPolicyPrefStore(ConfigurationPolicyProvider* provider); - virtual ~ConfigurationPolicyPrefStore() { } + virtual ~ConfigurationPolicyPrefStore(); // PrefStore methods: virtual PrefReadError ReadPrefs(); diff --git a/chrome/browser/printing/print_dialog_cloud.cc b/chrome/browser/printing/print_dialog_cloud.cc index 6fd43f4..3fdad4b 100644 --- a/chrome/browser/printing/print_dialog_cloud.cc +++ b/chrome/browser/printing/print_dialog_cloud.cc @@ -152,6 +152,14 @@ void CloudPrintDataSender::CancelPrintDataFile() { helper_ = NULL; } +CloudPrintDataSender::CloudPrintDataSender(CloudPrintDataSenderHelper* helper, + const string16& print_job_title) + : helper_(helper), + print_job_title_(print_job_title) { +} + +CloudPrintDataSender::~CloudPrintDataSender() {} + // Grab the raw PDF file contents and massage them into shape for // sending to the dialog contents (and up to the cloud print server) // by encoding it and prefixing it with the appropriate mime type. @@ -205,6 +213,18 @@ void CloudPrintDataSender::SendPrintDataFile() { } +CloudPrintFlowHandler::CloudPrintFlowHandler(const FilePath& path_to_pdf, + const string16& print_job_title) + : path_to_pdf_(path_to_pdf), + print_job_title_(print_job_title) { +} + +CloudPrintFlowHandler::~CloudPrintFlowHandler() { + // This will also cancel any task in flight. + CancelAnyRunningTask(); +} + + void CloudPrintFlowHandler::SetDialogDelegate( CloudPrintHtmlDialogDelegate* delegate) { // Even if setting a new dom_ui, it means any previous task needs diff --git a/chrome/browser/printing/print_dialog_cloud_internal.h b/chrome/browser/printing/print_dialog_cloud_internal.h index c40f301..4148623 100644 --- a/chrome/browser/printing/print_dialog_cloud_internal.h +++ b/chrome/browser/printing/print_dialog_cloud_internal.h @@ -53,8 +53,7 @@ class CloudPrintDataSender // The owner of this object is also expected to own and control the // lifetime of the helper. CloudPrintDataSender(CloudPrintDataSenderHelper* helper, - const string16& print_job_title) - : helper_(helper), print_job_title_(print_job_title) {} + const string16& print_job_title); // Calls to read in the PDF file (on the FILE thread) then send that // information to the dialog renderer (on the IO thread). We know @@ -69,7 +68,7 @@ class CloudPrintDataSender private: friend class base::RefCountedThreadSafe<CloudPrintDataSender>; - ~CloudPrintDataSender() {} + virtual ~CloudPrintDataSender(); Lock lock_; CloudPrintDataSenderHelper* volatile helper_; @@ -92,13 +91,8 @@ class CloudPrintFlowHandler : public DOMMessageHandler, public NotificationObserver { public: explicit CloudPrintFlowHandler(const FilePath& path_to_pdf, - const string16& print_job_title) - : path_to_pdf_(path_to_pdf), - print_job_title_(print_job_title) {} - virtual ~CloudPrintFlowHandler() { - // This will also cancel any task in flight. - CancelAnyRunningTask(); - } + const string16& print_job_title); + virtual ~CloudPrintFlowHandler(); // DOMMessageHandler implementation. virtual void RegisterMessages(); diff --git a/chrome/browser/renderer_host/audio_renderer_host.cc b/chrome/browser/renderer_host/audio_renderer_host.cc index 0b594a0..e5b9b2b 100644 --- a/chrome/browser/renderer_host/audio_renderer_host.cc +++ b/chrome/browser/renderer_host/audio_renderer_host.cc @@ -67,6 +67,15 @@ static uint32 SelectHardwarePacketSize(AudioParameters params) { return params.channels * samples * params.bits_per_sample / 8; } +AudioRendererHost::AudioEntry::AudioEntry() + : render_view_id(0), + stream_id(0), + pending_buffer_request(false), + pending_close(false) { +} + +AudioRendererHost::AudioEntry::~AudioEntry() {} + /////////////////////////////////////////////////////////////////////////////// // AudioRendererHost implementations. AudioRendererHost::AudioRendererHost() diff --git a/chrome/browser/renderer_host/audio_renderer_host.h b/chrome/browser/renderer_host/audio_renderer_host.h index 8ec3cd1..d2dfd59 100644 --- a/chrome/browser/renderer_host/audio_renderer_host.h +++ b/chrome/browser/renderer_host/audio_renderer_host.h @@ -83,12 +83,8 @@ class AudioRendererHost : public base::RefCountedThreadSafe< typedef std::pair<int32, int> AudioEntryId; struct AudioEntry { - AudioEntry() - : render_view_id(0), - stream_id(0), - pending_buffer_request(false), - pending_close(false) { - } + AudioEntry(); + ~AudioEntry(); // The AudioOutputController that manages the audio stream. scoped_refptr<media::AudioOutputController> controller; diff --git a/chrome/browser/renderer_host/buffered_resource_handler.cc b/chrome/browser/renderer_host/buffered_resource_handler.cc index a19d3c3..d534042 100644 --- a/chrome/browser/renderer_host/buffered_resource_handler.cc +++ b/chrome/browser/renderer_host/buffered_resource_handler.cc @@ -149,6 +149,8 @@ bool BufferedResourceHandler::OnReadCompleted(int request_id, int* bytes_read) { return real_handler_->OnReadCompleted(request_id, bytes_read); } +BufferedResourceHandler::~BufferedResourceHandler() {} + bool BufferedResourceHandler::DelayResponse() { std::string mime_type; request_->GetMimeType(&mime_type); diff --git a/chrome/browser/renderer_host/buffered_resource_handler.h b/chrome/browser/renderer_host/buffered_resource_handler.h index 26bd7f8..69e64c5 100644 --- a/chrome/browser/renderer_host/buffered_resource_handler.h +++ b/chrome/browser/renderer_host/buffered_resource_handler.h @@ -22,21 +22,21 @@ class BufferedResourceHandler : public ResourceHandler { URLRequest* request); // ResourceHandler implementation: - bool OnUploadProgress(int request_id, uint64 position, uint64 size); - bool OnRequestRedirected(int request_id, const GURL& new_url, - ResourceResponse* response, bool* defer); - bool OnResponseStarted(int request_id, ResourceResponse* response); - bool OnWillStart(int request_id, const GURL& url, bool* defer); - bool OnWillRead(int request_id, net::IOBuffer** buf, int* buf_size, - int min_size); - bool OnReadCompleted(int request_id, int* bytes_read); - bool OnResponseCompleted(int request_id, - const URLRequestStatus& status, - const std::string& security_info); - void OnRequestClosed(); + virtual bool OnUploadProgress(int request_id, uint64 position, uint64 size); + virtual bool OnRequestRedirected(int request_id, const GURL& new_url, + ResourceResponse* response, bool* defer); + virtual bool OnResponseStarted(int request_id, ResourceResponse* response); + virtual bool OnWillStart(int request_id, const GURL& url, bool* defer); + virtual bool OnWillRead(int request_id, net::IOBuffer** buf, int* buf_size, + int min_size); + virtual bool OnReadCompleted(int request_id, int* bytes_read); + virtual bool OnResponseCompleted(int request_id, + const URLRequestStatus& status, + const std::string& security_info); + virtual void OnRequestClosed(); private: - ~BufferedResourceHandler() {} + virtual ~BufferedResourceHandler(); // Returns true if we should delay OnResponseStarted forwarding. bool DelayResponse(); diff --git a/chrome/browser/renderer_host/cross_site_resource_handler.cc b/chrome/browser/renderer_host/cross_site_resource_handler.cc index 3198e76..ddab0e7 100644 --- a/chrome/browser/renderer_host/cross_site_resource_handler.cc +++ b/chrome/browser/renderer_host/cross_site_resource_handler.cc @@ -175,6 +175,8 @@ void CrossSiteResourceHandler::ResumeResponse() { } } +CrossSiteResourceHandler::~CrossSiteResourceHandler() {} + // Prepare to render the cross-site response in a new RenderViewHost, by // telling the old RenderViewHost to run its onunload handler. void CrossSiteResourceHandler::StartCrossSiteTransition( diff --git a/chrome/browser/renderer_host/cross_site_resource_handler.h b/chrome/browser/renderer_host/cross_site_resource_handler.h index aa731ca..33c1109 100644 --- a/chrome/browser/renderer_host/cross_site_resource_handler.h +++ b/chrome/browser/renderer_host/cross_site_resource_handler.h @@ -25,26 +25,26 @@ class CrossSiteResourceHandler : public ResourceHandler { ResourceDispatcherHost* resource_dispatcher_host); // ResourceHandler implementation: - bool OnUploadProgress(int request_id, uint64 position, uint64 size); - bool OnRequestRedirected(int request_id, const GURL& new_url, - ResourceResponse* response, bool* defer); - bool OnResponseStarted(int request_id, - ResourceResponse* response); - bool OnWillStart(int request_id, const GURL& url, bool* defer); - bool OnWillRead(int request_id, net::IOBuffer** buf, int* buf_size, - int min_size); - bool OnReadCompleted(int request_id, int* bytes_read); - bool OnResponseCompleted(int request_id, - const URLRequestStatus& status, - const std::string& security_info); - void OnRequestClosed(); + virtual bool OnUploadProgress(int request_id, uint64 position, uint64 size); + virtual bool OnRequestRedirected(int request_id, const GURL& new_url, + ResourceResponse* response, bool* defer); + virtual bool OnResponseStarted(int request_id, + ResourceResponse* response); + virtual bool OnWillStart(int request_id, const GURL& url, bool* defer); + virtual bool OnWillRead(int request_id, net::IOBuffer** buf, int* buf_size, + int min_size); + virtual bool OnReadCompleted(int request_id, int* bytes_read); + virtual bool OnResponseCompleted(int request_id, + const URLRequestStatus& status, + const std::string& security_info); + virtual void OnRequestClosed(); // We can now send the response to the new renderer, which will cause // TabContents to swap in the new renderer and destroy the old one. void ResumeResponse(); private: - ~CrossSiteResourceHandler() {} + virtual ~CrossSiteResourceHandler(); // Prepare to render the cross-site response in a new RenderViewHost, by // telling the old RenderViewHost to run its onunload handler. diff --git a/chrome/browser/renderer_host/database_dispatcher_host.cc b/chrome/browser/renderer_host/database_dispatcher_host.cc index 276ba75..11c5125 100644 --- a/chrome/browser/renderer_host/database_dispatcher_host.cc +++ b/chrome/browser/renderer_host/database_dispatcher_host.cc @@ -124,6 +124,8 @@ void DatabaseDispatcherHost::Send(IPC::Message* message) { delete message; } +DatabaseDispatcherHost::~DatabaseDispatcherHost() {} + void DatabaseDispatcherHost::OnDatabaseOpenFile(const string16& vfs_file_name, int desired_flags, IPC::Message* reply_msg) { diff --git a/chrome/browser/renderer_host/database_dispatcher_host.h b/chrome/browser/renderer_host/database_dispatcher_host.h index 58b9b6e..000c0632 100644 --- a/chrome/browser/renderer_host/database_dispatcher_host.h +++ b/chrome/browser/renderer_host/database_dispatcher_host.h @@ -74,6 +74,9 @@ class DatabaseDispatcherHost void Send(IPC::Message* message); private: + friend class base::RefCountedThreadSafe<DatabaseDispatcherHost>; + virtual ~DatabaseDispatcherHost(); + class PromptDelegate; void AddObserver(); diff --git a/chrome/browser/renderer_host/resource_request_details.cc b/chrome/browser/renderer_host/resource_request_details.cc new file mode 100644 index 0000000..20a255d --- /dev/null +++ b/chrome/browser/renderer_host/resource_request_details.cc @@ -0,0 +1,54 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/renderer_host/resource_request_details.h" + + +ResourceRequestDetails::ResourceRequestDetails(const URLRequest* request, + int cert_id) + : url_(request->url()), + original_url_(request->original_url()), + method_(request->method()), + referrer_(request->referrer()), + has_upload_(request->has_upload()), + load_flags_(request->load_flags()), + status_(request->status()), + ssl_cert_id_(cert_id), + ssl_cert_status_(request->ssl_info().cert_status) { + const ResourceDispatcherHostRequestInfo* info = + ResourceDispatcherHost::InfoForRequest(request); + DCHECK(info); + resource_type_ = info->resource_type(); + frame_origin_ = info->frame_origin(); + main_frame_origin_ = info->main_frame_origin(); + + // If request is from the worker process on behalf of a renderer, use + // the renderer process id, since it consumes the notification response + // such as ssl state etc. + const WorkerProcessHost::WorkerInstance* worker_instance = + WorkerService::GetInstance()->FindWorkerInstance(info->child_id()); + if (worker_instance) { + DCHECK(!worker_instance->worker_document_set()->IsEmpty()); + const WorkerDocumentSet::DocumentInfoSet& parents = + worker_instance->worker_document_set()->documents(); + // TODO(atwilson): need to notify all associated renderers in the case + // of ssl state change (http://crbug.com/25357). For now, just notify + // the first one (works for dedicated workers and shared workers with + // a single process). + origin_child_id_ = parents.begin()->renderer_id(); + } else { + origin_child_id_ = info->child_id(); + } +} + +ResourceRequestDetails::~ResourceRequestDetails() {} + +ResourceRedirectDetails::ResourceRedirectDetails(const URLRequest* request, + int cert_id, + const GURL& new_url) + : ResourceRequestDetails(request, cert_id), + new_url_(new_url) { +} + +ResourceRedirectDetails::~ResourceRedirectDetails() {} diff --git a/chrome/browser/renderer_host/resource_request_details.h b/chrome/browser/renderer_host/resource_request_details.h index 6af9f85..36f3456 100644 --- a/chrome/browser/renderer_host/resource_request_details.h +++ b/chrome/browser/renderer_host/resource_request_details.h @@ -24,43 +24,9 @@ class URLRequest; // Details about a resource request notification. class ResourceRequestDetails { public: - ResourceRequestDetails(const URLRequest* request, int cert_id) - : url_(request->url()), - original_url_(request->original_url()), - method_(request->method()), - referrer_(request->referrer()), - has_upload_(request->has_upload()), - load_flags_(request->load_flags()), - status_(request->status()), - ssl_cert_id_(cert_id), - ssl_cert_status_(request->ssl_info().cert_status) { - const ResourceDispatcherHostRequestInfo* info = - ResourceDispatcherHost::InfoForRequest(request); - DCHECK(info); - resource_type_ = info->resource_type(); - frame_origin_ = info->frame_origin(); - main_frame_origin_ = info->main_frame_origin(); + ResourceRequestDetails(const URLRequest* request, int cert_id); - // If request is from the worker process on behalf of a renderer, use - // the renderer process id, since it consumes the notification response - // such as ssl state etc. - const WorkerProcessHost::WorkerInstance* worker_instance = - WorkerService::GetInstance()->FindWorkerInstance(info->child_id()); - if (worker_instance) { - DCHECK(!worker_instance->worker_document_set()->IsEmpty()); - const WorkerDocumentSet::DocumentInfoSet& parents = - worker_instance->worker_document_set()->documents(); - // TODO(atwilson): need to notify all associated renderers in the case - // of ssl state change (http://crbug.com/25357). For now, just notify - // the first one (works for dedicated workers and shared workers with - // a single process). - origin_child_id_ = parents.begin()->renderer_id(); - } else { - origin_child_id_ = info->child_id(); - } - } - - virtual ~ResourceRequestDetails() {} + virtual ~ResourceRequestDetails(); const GURL& url() const { return url_; } const GURL& original_url() const { return original_url_; } @@ -97,9 +63,8 @@ class ResourceRedirectDetails : public ResourceRequestDetails { public: ResourceRedirectDetails(const URLRequest* request, int cert_id, - const GURL& new_url) - : ResourceRequestDetails(request, cert_id), - new_url_(new_url) {} + const GURL& new_url); + virtual ~ResourceRedirectDetails(); // The URL to which we are being redirected. const GURL& new_url() const { return new_url_; } diff --git a/chrome/browser/renderer_host/save_file_resource_handler.cc b/chrome/browser/renderer_host/save_file_resource_handler.cc index 38f83bd..bc26ba5 100644 --- a/chrome/browser/renderer_host/save_file_resource_handler.cc +++ b/chrome/browser/renderer_host/save_file_resource_handler.cc @@ -115,3 +115,5 @@ void SaveFileResourceHandler::set_content_length( const std::string& content_length) { base::StringToInt64(content_length, &content_length_); } + +SaveFileResourceHandler::~SaveFileResourceHandler() {} diff --git a/chrome/browser/renderer_host/save_file_resource_handler.h b/chrome/browser/renderer_host/save_file_resource_handler.h index ecd8a93..7475bef 100644 --- a/chrome/browser/renderer_host/save_file_resource_handler.h +++ b/chrome/browser/renderer_host/save_file_resource_handler.h @@ -21,32 +21,33 @@ class SaveFileResourceHandler : public ResourceHandler { const GURL& url, SaveFileManager* manager); - bool OnUploadProgress(int request_id, uint64 position, uint64 size); + // ResourceHandler Implementation: + virtual bool OnUploadProgress(int request_id, uint64 position, uint64 size); // Saves the redirected URL to final_url_, we need to use the original // URL to match original request. - bool OnRequestRedirected(int request_id, const GURL& url, - ResourceResponse* response, bool* defer); + virtual bool OnRequestRedirected(int request_id, const GURL& url, + ResourceResponse* response, bool* defer); // Sends the download creation information to the download thread. - bool OnResponseStarted(int request_id, ResourceResponse* response); + virtual bool OnResponseStarted(int request_id, ResourceResponse* response); // Pass-through implementation. - bool OnWillStart(int request_id, const GURL& url, bool* defer); + virtual bool OnWillStart(int request_id, const GURL& url, bool* defer); // Creates a new buffer, which will be handed to the download thread for file // writing and deletion. - bool OnWillRead(int request_id, net::IOBuffer** buf, int* buf_size, - int min_size); + virtual bool OnWillRead(int request_id, net::IOBuffer** buf, int* buf_size, + int min_size); // Passes the buffer to the download file writer. - bool OnReadCompleted(int request_id, int* bytes_read); + virtual bool OnReadCompleted(int request_id, int* bytes_read); - bool OnResponseCompleted(int request_id, - const URLRequestStatus& status, - const std::string& security_info); + virtual bool OnResponseCompleted(int request_id, + const URLRequestStatus& status, + const std::string& security_info); - void OnRequestClosed(); + virtual void OnRequestClosed(); // If the content-length header is not present (or contains something other // than numbers), StringToInt64 returns 0, which indicates 'unknown size' and @@ -58,7 +59,7 @@ class SaveFileResourceHandler : public ResourceHandler { } private: - ~SaveFileResourceHandler() {} + virtual ~SaveFileResourceHandler(); int save_id_; int render_process_id_; diff --git a/chrome/browser/safe_browsing/safe_browsing_service.cc b/chrome/browser/safe_browsing/safe_browsing_service.cc index 6f8619c..24f458c 100644 --- a/chrome/browser/safe_browsing/safe_browsing_service.cc +++ b/chrome/browser/safe_browsing/safe_browsing_service.cc @@ -57,6 +57,22 @@ struct SafeBrowsingService::WhiteListedEntry { UrlCheckResult result; }; +SafeBrowsingService::UnsafeResource::UnsafeResource() + : resource_type(ResourceType::MAIN_FRAME), + client(NULL), + render_process_host_id(-1), + render_view_id(-1) { +} + +SafeBrowsingService::UnsafeResource::~UnsafeResource() {} + +SafeBrowsingService::SafeBrowsingCheck::SafeBrowsingCheck() + : client(NULL), + need_get_hash(false) { +} + +SafeBrowsingService::SafeBrowsingCheck::~SafeBrowsingCheck() {} + SafeBrowsingService::SafeBrowsingService() : database_(NULL), protocol_manager_(NULL), diff --git a/chrome/browser/safe_browsing/safe_browsing_service.h b/chrome/browser/safe_browsing/safe_browsing_service.h index 050437a..acecf4e 100644 --- a/chrome/browser/safe_browsing/safe_browsing_service.h +++ b/chrome/browser/safe_browsing/safe_browsing_service.h @@ -59,6 +59,9 @@ class SafeBrowsingService // Structure used to pass parameters between the IO and UI thread when // interacting with the blocking page. struct UnsafeResource { + UnsafeResource(); + ~UnsafeResource(); + GURL url; GURL original_url; ResourceType::Type resource_type; @@ -70,6 +73,9 @@ class SafeBrowsingService // Bundle of SafeBrowsing state for one URL check. struct SafeBrowsingCheck { + SafeBrowsingCheck(); + ~SafeBrowsingCheck(); + GURL url; Client* client; bool need_get_hash; @@ -77,6 +83,9 @@ class SafeBrowsingService UrlCheckResult result; std::vector<SBPrefix> prefix_hits; std::vector<SBFullHashResult> full_hits; + + private: + DISALLOW_COPY_AND_ASSIGN(SafeBrowsingCheck); }; // Creates the safe browsing service. Need to initialize before using. diff --git a/chrome/browser/sidebar/sidebar_manager.cc b/chrome/browser/sidebar/sidebar_manager.cc index 62c46c14..e77041c 100644 --- a/chrome/browser/sidebar/sidebar_manager.cc +++ b/chrome/browser/sidebar/sidebar_manager.cc @@ -18,6 +18,13 @@ #include "chrome/common/pref_names.h" #include "googleurl/src/gurl.h" +struct SidebarManager::SidebarStateForTab { + // Sidebars linked to this tab. + ContentIdToSidebarHostMap content_id_to_sidebar_host; + // Content id of the currently active (expanded and visible) sidebar. + std::string active_content_id; +}; + // static SidebarManager* SidebarManager::GetInstance() { return g_browser_process->sidebar_manager(); diff --git a/chrome/browser/sidebar/sidebar_manager.h b/chrome/browser/sidebar/sidebar_manager.h index a7fe8b1..6f2d20b 100644 --- a/chrome/browser/sidebar/sidebar_manager.h +++ b/chrome/browser/sidebar/sidebar_manager.h @@ -127,25 +127,18 @@ class SidebarManager : public NotificationObserver, // This map stores sidebars linked to a particular tab. Sidebars are // identified by their unique content id (string). - typedef std::map<std::string, SidebarContainer*> - ContentIdToSidebarHostMap; + typedef std::map<std::string, SidebarContainer*> ContentIdToSidebarHostMap; + // These two maps are for tracking dependencies between tabs and // their SidebarContainers. // // SidebarManager start listening to SidebarContainers when they are put // into these maps and removes them when they are closing. - typedef struct { - // Sidebars linked to this tab. - ContentIdToSidebarHostMap content_id_to_sidebar_host; - // Content id of the currently active (expanded and visible) sidebar. - std::string active_content_id; - } SidebarStateForTab; - typedef std::map<TabContents*, SidebarStateForTab> - TabToSidebarHostMap; + struct SidebarStateForTab; + typedef std::map<TabContents*, SidebarStateForTab> TabToSidebarHostMap; TabToSidebarHostMap tab_to_sidebar_host_; - typedef std::map<SidebarContainer*, TabContents*> - SidebarHostToTabMap; + typedef std::map<SidebarContainer*, TabContents*> SidebarHostToTabMap; SidebarHostToTabMap sidebar_host_to_tab_; DISALLOW_COPY_AND_ASSIGN(SidebarManager); diff --git a/chrome/browser/speech/endpointer/energy_endpointer_params.cc b/chrome/browser/speech/endpointer/energy_endpointer_params.cc new file mode 100644 index 0000000..1ab044a --- /dev/null +++ b/chrome/browser/speech/endpointer/energy_endpointer_params.cc @@ -0,0 +1,53 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/speech/endpointer/energy_endpointer_params.h" + +namespace speech_input { + +EnergyEndpointerParams::EnergyEndpointerParams() { + SetDefaults(); +} + +void EnergyEndpointerParams::SetDefaults() { + frame_period_ = 0.01f; + frame_duration_ = 0.01f; + endpoint_margin_ = 0.2f; + onset_window_ = 0.15f; + speech_on_window_ = 0.4f; + offset_window_ = 0.15f; + onset_detect_dur_ = 0.09f; + onset_confirm_dur_ = 0.075f; + on_maintain_dur_ = 0.10f; + offset_confirm_dur_ = 0.12f; + decision_threshold_ = 150.0f; + min_decision_threshold_ = 50.0f; + fast_update_dur_ = 0.2f; + sample_rate_ = 8000.0f; + min_fundamental_frequency_ = 57.143f; + max_fundamental_frequency_ = 400.0f; + contamination_rejection_period_ = 0.25f; +} + +void EnergyEndpointerParams::operator=(const EnergyEndpointerParams& source) { + frame_period_ = source.frame_period(); + frame_duration_ = source.frame_duration(); + endpoint_margin_ = source.endpoint_margin(); + onset_window_ = source.onset_window(); + speech_on_window_ = source.speech_on_window(); + offset_window_ = source.offset_window(); + onset_detect_dur_ = source.onset_detect_dur(); + onset_confirm_dur_ = source.onset_confirm_dur(); + on_maintain_dur_ = source.on_maintain_dur(); + offset_confirm_dur_ = source.offset_confirm_dur(); + decision_threshold_ = source.decision_threshold(); + min_decision_threshold_ = source.min_decision_threshold(); + fast_update_dur_ = source.fast_update_dur(); + sample_rate_ = source.sample_rate(); + min_fundamental_frequency_ = source.min_fundamental_frequency(); + max_fundamental_frequency_ = source.max_fundamental_frequency(); + contamination_rejection_period_ = source.contamination_rejection_period(); +} + +} // namespace speech_input diff --git a/chrome/browser/speech/endpointer/energy_endpointer_params.h b/chrome/browser/speech/endpointer/energy_endpointer_params.h index c99ff99..86e44c9 100644 --- a/chrome/browser/speech/endpointer/energy_endpointer_params.h +++ b/chrome/browser/speech/endpointer/energy_endpointer_params.h @@ -12,49 +12,11 @@ namespace speech_input { // Input parameters for the EnergyEndpointer class. class EnergyEndpointerParams { public: - EnergyEndpointerParams() { - SetDefaults(); - } - - void SetDefaults() { - frame_period_ = 0.01f; - frame_duration_ = 0.01f; - endpoint_margin_ = 0.2f; - onset_window_ = 0.15f; - speech_on_window_ = 0.4f; - offset_window_ = 0.15f; - onset_detect_dur_ = 0.09f; - onset_confirm_dur_ = 0.075f; - on_maintain_dur_ = 0.10f; - offset_confirm_dur_ = 0.12f; - decision_threshold_ = 150.0f; - min_decision_threshold_ = 50.0f; - fast_update_dur_ = 0.2f; - sample_rate_ = 8000.0f; - min_fundamental_frequency_ = 57.143f; - max_fundamental_frequency_ = 400.0f; - contamination_rejection_period_ = 0.25f; - } - - void operator=(const EnergyEndpointerParams& source) { - frame_period_ = source.frame_period(); - frame_duration_ = source.frame_duration(); - endpoint_margin_ = source.endpoint_margin(); - onset_window_ = source.onset_window(); - speech_on_window_ = source.speech_on_window(); - offset_window_ = source.offset_window(); - onset_detect_dur_ = source.onset_detect_dur(); - onset_confirm_dur_ = source.onset_confirm_dur(); - on_maintain_dur_ = source.on_maintain_dur(); - offset_confirm_dur_ = source.offset_confirm_dur(); - decision_threshold_ = source.decision_threshold(); - min_decision_threshold_ = source.min_decision_threshold(); - fast_update_dur_ = source.fast_update_dur(); - sample_rate_ = source.sample_rate(); - min_fundamental_frequency_ = source.min_fundamental_frequency(); - max_fundamental_frequency_ = source.max_fundamental_frequency(); - contamination_rejection_period_ = source.contamination_rejection_period(); - } + EnergyEndpointerParams(); + + void SetDefaults(); + + void operator=(const EnergyEndpointerParams& source); // Accessors and mutators float frame_period() const { return frame_period_; } diff --git a/chrome/browser/speech/speech_recognition_request.cc b/chrome/browser/speech/speech_recognition_request.cc index 4da62ef..adf473f 100644 --- a/chrome/browser/speech/speech_recognition_request.cc +++ b/chrome/browser/speech/speech_recognition_request.cc @@ -96,6 +96,8 @@ SpeechRecognitionRequest::SpeechRecognitionRequest( DCHECK(delegate); } +SpeechRecognitionRequest::~SpeechRecognitionRequest() {} + bool SpeechRecognitionRequest::Send(const std::string& content_type, const std::string& audio_data) { DCHECK(!url_fetcher_.get()); diff --git a/chrome/browser/speech/speech_recognition_request.h b/chrome/browser/speech/speech_recognition_request.h index a8ffe2f..6c01983 100644 --- a/chrome/browser/speech/speech_recognition_request.h +++ b/chrome/browser/speech/speech_recognition_request.h @@ -38,6 +38,8 @@ class SpeechRecognitionRequest : public URLFetcher::Delegate { const GURL& url, Delegate* delegate); + virtual ~SpeechRecognitionRequest(); + // Sends a new request with the given audio data, returns true if successful. // The same object can be used to send multiple requests but only after the // previous request has completed. diff --git a/chrome/browser/ssl/ssl_request_info.cc b/chrome/browser/ssl/ssl_request_info.cc new file mode 100644 index 0000000..7ba88b0 --- /dev/null +++ b/chrome/browser/ssl/ssl_request_info.cc @@ -0,0 +1,23 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/ssl/ssl_request_info.h" + +SSLRequestInfo::SSLRequestInfo(const GURL& url, + ResourceType::Type resource_type, + const std::string& frame_origin, + const std::string& main_frame_origin, + int child_id, + int ssl_cert_id, + int ssl_cert_status) + : url_(url), + resource_type_(resource_type), + frame_origin_(frame_origin), + main_frame_origin_(main_frame_origin), + child_id_(child_id), + ssl_cert_id_(ssl_cert_id), + ssl_cert_status_(ssl_cert_status) { +} + +SSLRequestInfo::~SSLRequestInfo() {} diff --git a/chrome/browser/ssl/ssl_request_info.h b/chrome/browser/ssl/ssl_request_info.h index 2ce3e88..dc919cd 100644 --- a/chrome/browser/ssl/ssl_request_info.h +++ b/chrome/browser/ssl/ssl_request_info.h @@ -8,6 +8,7 @@ #include <string> +#include "base/ref_counted.h" #include "googleurl/src/gurl.h" #include "webkit/glue/resource_type.h" @@ -22,15 +23,7 @@ class SSLRequestInfo : public base::RefCounted<SSLRequestInfo> { const std::string& main_frame_origin, int child_id, int ssl_cert_id, - int ssl_cert_status) - : url_(url), - resource_type_(resource_type), - frame_origin_(frame_origin), - main_frame_origin_(main_frame_origin), - child_id_(child_id), - ssl_cert_id_(ssl_cert_id), - ssl_cert_status_(ssl_cert_status) { - } + int ssl_cert_status); const GURL& url() const { return url_; } ResourceType::Type resource_type() const { return resource_type_; } @@ -43,7 +36,7 @@ class SSLRequestInfo : public base::RefCounted<SSLRequestInfo> { private: friend class base::RefCounted<SSLRequestInfo>; - ~SSLRequestInfo() {} + virtual ~SSLRequestInfo(); GURL url_; ResourceType::Type resource_type_; diff --git a/chrome/browser/sync/glue/autofill_change_processor.cc b/chrome/browser/sync/glue/autofill_change_processor.cc index c025e84..a2a8db4 100644 --- a/chrome/browser/sync/glue/autofill_change_processor.cc +++ b/chrome/browser/sync/glue/autofill_change_processor.cc @@ -20,6 +20,17 @@ namespace browser_sync { +struct AutofillChangeProcessor::AutofillChangeRecord { + sync_api::SyncManager::ChangeRecord::Action action_; + int64 id_; + sync_pb::AutofillSpecifics autofill_; + AutofillChangeRecord(sync_api::SyncManager::ChangeRecord::Action action, + int64 id, const sync_pb::AutofillSpecifics& autofill) + : action_(action), + id_(id), + autofill_(autofill) { } +}; + AutofillChangeProcessor::AutofillChangeProcessor( AutofillModelAssociator* model_associator, WebDatabase* web_database, @@ -38,6 +49,8 @@ AutofillChangeProcessor::AutofillChangeProcessor( StartObserving(); } +AutofillChangeProcessor::~AutofillChangeProcessor() {} + void AutofillChangeProcessor::Observe(NotificationType type, const NotificationSource& source, const NotificationDetails& details) { diff --git a/chrome/browser/sync/glue/autofill_change_processor.h b/chrome/browser/sync/glue/autofill_change_processor.h index 0680d0c..7a84520 100644 --- a/chrome/browser/sync/glue/autofill_change_processor.h +++ b/chrome/browser/sync/glue/autofill_change_processor.h @@ -40,7 +40,7 @@ class AutofillChangeProcessor : public ChangeProcessor, WebDatabase* web_database, PersonalDataManager* personal_data, UnrecoverableErrorHandler* error_handler); - virtual ~AutofillChangeProcessor() {} + virtual ~AutofillChangeProcessor(); // NotificationObserver implementation. // WebDataService -> sync_api model change application. @@ -73,17 +73,6 @@ class AutofillChangeProcessor : public ChangeProcessor, virtual void StopImpl(); private: - struct AutofillChangeRecord { - sync_api::SyncManager::ChangeRecord::Action action_; - int64 id_; - sync_pb::AutofillSpecifics autofill_; - AutofillChangeRecord(sync_api::SyncManager::ChangeRecord::Action action, - int64 id, const sync_pb::AutofillSpecifics& autofill) - : action_(action), - id_(id), - autofill_(autofill) { } - }; - void StartObserving(); void StopObserving(); @@ -170,6 +159,7 @@ class AutofillChangeProcessor : public ChangeProcessor, // Record of changes from ApplyChangesFromSyncModel. These are then processed // in CommitChangesFromSyncModel. + struct AutofillChangeRecord; std::vector<AutofillChangeRecord> autofill_changes_; DISALLOW_COPY_AND_ASSIGN(AutofillChangeProcessor); diff --git a/chrome/browser/sync/glue/autofill_model_associator.cc b/chrome/browser/sync/glue/autofill_model_associator.cc index 43914c2..b550ab5 100644 --- a/chrome/browser/sync/glue/autofill_model_associator.cc +++ b/chrome/browser/sync/glue/autofill_model_associator.cc @@ -30,6 +30,25 @@ const char kAutofillProfileNamespaceTag[] = "autofill_profile|"; static const int kMaxNumAttemptsToFindUniqueLabel = 100; +struct AutofillModelAssociator::DataBundle { + std::set<AutofillKey> current_entries; + std::vector<AutofillEntry> new_entries; + std::set<string16> current_profiles; + std::vector<AutoFillProfile*> updated_profiles; + std::vector<AutoFillProfile*> new_profiles; // We own these pointers. + ~DataBundle() { STLDeleteElements(&new_profiles); } +}; + +AutofillModelAssociator::DoOptimisticRefreshTask::DoOptimisticRefreshTask( + PersonalDataManager* pdm) : pdm_(pdm) {} + +AutofillModelAssociator::DoOptimisticRefreshTask::~DoOptimisticRefreshTask() {} + +void AutofillModelAssociator::DoOptimisticRefreshTask::Run() { + DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + pdm_->Refresh(); +} + AutofillModelAssociator::AutofillModelAssociator( ProfileSyncService* sync_service, WebDatabase* web_database, @@ -396,6 +415,17 @@ void AutofillModelAssociator::AbortAssociation() { abort_association_pending_ = true; } +const std::string* +AutofillModelAssociator::GetChromeNodeFromSyncId(int64 sync_id) { + return NULL; +} + +bool AutofillModelAssociator::InitSyncNodeFromChromeId( + std::string node_id, + sync_api::BaseNode* sync_node) { + return false; +} + int64 AutofillModelAssociator::GetSyncIdFromChromeId( const std::string autofill) { AutofillToSyncIdMap::const_iterator iter = id_map_.find(autofill); diff --git a/chrome/browser/sync/glue/autofill_model_associator.h b/chrome/browser/sync/glue/autofill_model_associator.h index f0dbe1a..d4e5363 100644 --- a/chrome/browser/sync/glue/autofill_model_associator.h +++ b/chrome/browser/sync/glue/autofill_model_associator.h @@ -15,7 +15,6 @@ #include "base/lock.h" #include "base/ref_counted.h" #include "chrome/browser/autofill/personal_data_manager.h" -#include "chrome/browser/browser_thread.h" #include "chrome/browser/sync/engine/syncapi.h" #include "chrome/browser/sync/glue/model_associator.h" #include "chrome/browser/sync/protocol/autofill_specifics.pb.h" @@ -56,11 +55,9 @@ class AutofillModelAssociator // PersonalDataManager living on the UI thread that it needs to refresh. class DoOptimisticRefreshTask : public Task { public: - explicit DoOptimisticRefreshTask(PersonalDataManager* pdm) : pdm_(pdm) {} - virtual void Run() { - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - pdm_->Refresh(); - } + explicit DoOptimisticRefreshTask(PersonalDataManager* pdm); + virtual ~DoOptimisticRefreshTask(); + virtual void Run(); private: scoped_refptr<PersonalDataManager> pdm_; }; @@ -81,15 +78,11 @@ class AutofillModelAssociator virtual void AbortAssociation(); // Not implemented. - virtual const std::string* GetChromeNodeFromSyncId(int64 sync_id) { - return NULL; - } + virtual const std::string* GetChromeNodeFromSyncId(int64 sync_id); // Not implemented. virtual bool InitSyncNodeFromChromeId(std::string node_id, - sync_api::BaseNode* sync_node) { - return false; - } + sync_api::BaseNode* sync_node); // Returns the sync id for the given autofill name, or sync_api::kInvalidId // if the autofill name is not associated to any sync id. @@ -137,14 +130,7 @@ class AutofillModelAssociator // A convenience wrapper of a bunch of state we pass around while associating // models, and send to the WebDatabase for persistence. - struct DataBundle { - std::set<AutofillKey> current_entries; - std::vector<AutofillEntry> new_entries; - std::set<string16> current_profiles; - std::vector<AutoFillProfile*> updated_profiles; - std::vector<AutoFillProfile*> new_profiles; // We own these pointers. - ~DataBundle() { STLDeleteElements(&new_profiles); } - }; + struct DataBundle; // Helper to query WebDatabase for the current autofill state. bool LoadAutofillData(std::vector<AutofillEntry>* entries, diff --git a/chrome/browser/sync/glue/extension_data.cc b/chrome/browser/sync/glue/extension_data.cc index eb4fea6..c62c362 100644 --- a/chrome/browser/sync/glue/extension_data.cc +++ b/chrome/browser/sync/glue/extension_data.cc @@ -19,6 +19,8 @@ ExtensionData ExtensionData::FromData( return extension_data; } +ExtensionData::~ExtensionData() {} + const sync_pb::ExtensionSpecifics& ExtensionData::merged_data() const { DcheckIsExtensionSpecificsValid(merged_data_); return merged_data_; diff --git a/chrome/browser/sync/glue/extension_data.h b/chrome/browser/sync/glue/extension_data.h index 67951b9..73316de 100644 --- a/chrome/browser/sync/glue/extension_data.h +++ b/chrome/browser/sync/glue/extension_data.h @@ -28,6 +28,8 @@ class ExtensionData { static ExtensionData FromData( Source source, const sync_pb::ExtensionSpecifics& data); + ~ExtensionData(); + // Implicit copy constructor and assignment operator welcome. // Returns the version of the data that all sources should diff --git a/chrome/browser/sync/glue/password_model_associator.cc b/chrome/browser/sync/glue/password_model_associator.cc index 7d33a0e..f9ab890 100644 --- a/chrome/browser/sync/glue/password_model_associator.cc +++ b/chrome/browser/sync/glue/password_model_associator.cc @@ -37,6 +37,8 @@ PasswordModelAssociator::PasswordModelAssociator( #endif } +PasswordModelAssociator::~PasswordModelAssociator() {} + bool PasswordModelAssociator::AssociateModels() { DCHECK(expected_loop_ == MessageLoop::current()); { diff --git a/chrome/browser/sync/glue/password_model_associator.h b/chrome/browser/sync/glue/password_model_associator.h index 096c3af..22c81ba 100644 --- a/chrome/browser/sync/glue/password_model_associator.h +++ b/chrome/browser/sync/glue/password_model_associator.h @@ -52,7 +52,7 @@ class PasswordModelAssociator static syncable::ModelType model_type() { return syncable::PASSWORDS; } PasswordModelAssociator(ProfileSyncService* sync_service, PasswordStore* password_store); - virtual ~PasswordModelAssociator() { } + virtual ~PasswordModelAssociator(); // PerDataTypeAssociatorInterface implementation. // diff --git a/chrome/browser/sync/glue/password_model_worker.cc b/chrome/browser/sync/glue/password_model_worker.cc index 9c5b0d6..f832ac1 100644 --- a/chrome/browser/sync/glue/password_model_worker.cc +++ b/chrome/browser/sync/glue/password_model_worker.cc @@ -19,6 +19,8 @@ PasswordModelWorker::PasswordModelWorker(PasswordStore* password_store) DCHECK(password_store); } +PasswordModelWorker::~PasswordModelWorker() {} + void PasswordModelWorker::DoWorkAndWaitUntilDone(Callback0::Type* work) { WaitableEvent done(false, false); password_store_->ScheduleTask( diff --git a/chrome/browser/sync/glue/password_model_worker.h b/chrome/browser/sync/glue/password_model_worker.h index cd55c79..cd16874 100644 --- a/chrome/browser/sync/glue/password_model_worker.h +++ b/chrome/browser/sync/glue/password_model_worker.h @@ -26,6 +26,7 @@ namespace browser_sync { class PasswordModelWorker : public browser_sync::ModelSafeWorker { public: explicit PasswordModelWorker(PasswordStore* password_store); + virtual ~PasswordModelWorker(); // ModelSafeWorker implementation. Called on syncapi SyncerThread. void DoWorkAndWaitUntilDone(Callback0::Type* work); diff --git a/chrome/browser/sync/glue/typed_url_model_associator.cc b/chrome/browser/sync/glue/typed_url_model_associator.cc index dc9cc3a..ad15629 100644 --- a/chrome/browser/sync/glue/typed_url_model_associator.cc +++ b/chrome/browser/sync/glue/typed_url_model_associator.cc @@ -29,6 +29,8 @@ TypedUrlModelAssociator::TypedUrlModelAssociator( DCHECK(!BrowserThread::CurrentlyOn(BrowserThread::UI)); } +TypedUrlModelAssociator::~TypedUrlModelAssociator() {} + bool TypedUrlModelAssociator::AssociateModels() { VLOG(1) << "Associating TypedUrl Models"; DCHECK(expected_loop_ == MessageLoop::current()); diff --git a/chrome/browser/sync/glue/typed_url_model_associator.h b/chrome/browser/sync/glue/typed_url_model_associator.h index e894100..a07bae9 100644 --- a/chrome/browser/sync/glue/typed_url_model_associator.h +++ b/chrome/browser/sync/glue/typed_url_model_associator.h @@ -57,7 +57,7 @@ class TypedUrlModelAssociator static syncable::ModelType model_type() { return syncable::TYPED_URLS; } TypedUrlModelAssociator(ProfileSyncService* sync_service, history::HistoryBackend* history_backend); - virtual ~TypedUrlModelAssociator() { } + virtual ~TypedUrlModelAssociator(); // PerDataTypeAssociatorInterface implementation. // diff --git a/chrome/browser/webdata/autofill_change.cc b/chrome/browser/webdata/autofill_change.cc new file mode 100644 index 0000000..7d51c0e --- /dev/null +++ b/chrome/browser/webdata/autofill_change.cc @@ -0,0 +1,36 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/webdata/autofill_change.h" + +AutofillProfileChange::AutofillProfileChange(Type t, + string16 k, + const AutoFillProfile* p, + const string16& pre_update_label) + : GenericAutofillChange<string16>(t, k), + profile_(p), + pre_update_label_(pre_update_label) { +} + +AutofillProfileChange::~AutofillProfileChange() {} + +bool AutofillProfileChange::operator==( + const AutofillProfileChange& change) const { + if (type() != change.type() || key() != change.key()) + return false; + if (type() == REMOVE) + return true; + // TODO(dhollowa): Replace with |AutoFillProfile::Compare|. + // http://crbug.com/58813 + if (*profile() != *change.profile()) + return false; + return type() == ADD || pre_update_label_ == change.pre_update_label(); +} + +AutofillCreditCardChange::AutofillCreditCardChange(Type t, + string16 k, + const CreditCard* card) + : GenericAutofillChange<string16>(t, k), credit_card_(card) {} + +AutofillCreditCardChange::~AutofillCreditCardChange() {} diff --git a/chrome/browser/webdata/autofill_change.h b/chrome/browser/webdata/autofill_change.h index 11723d3..73c9c79 100644 --- a/chrome/browser/webdata/autofill_change.h +++ b/chrome/browser/webdata/autofill_change.h @@ -52,23 +52,13 @@ class AutofillProfileChange : public GenericAutofillChange<string16> { // If t == REMOVE, |p| should be NULL. |pre_update_label| only applies to // UPDATE changes. AutofillProfileChange(Type t, string16 k, const AutoFillProfile* p, - const string16& pre_update_label) - : GenericAutofillChange<string16>(t, k), profile_(p), - pre_update_label_(pre_update_label) {} + const string16& pre_update_label); + virtual ~AutofillProfileChange(); const AutoFillProfile* profile() const { return profile_; } const string16& pre_update_label() const { return pre_update_label_; } - bool operator==(const AutofillProfileChange& change) const { - if (type() != change.type() || key() != change.key()) - return false; - if (type() == REMOVE) - return true; - // TODO(dhollowa): Replace with |AutoFillProfile::Compare|. - // http://crbug.com/58813 - if (*profile() != *change.profile()) - return false; - return type() == ADD || pre_update_label_ == change.pre_update_label(); - } + bool operator==(const AutofillProfileChange& change) const; + private: const AutoFillProfile* profile_; // Unowned pointer, can be NULL. const string16 pre_update_label_; @@ -77,8 +67,8 @@ class AutofillProfileChange : public GenericAutofillChange<string16> { class AutofillCreditCardChange : public GenericAutofillChange<string16> { public: // If t == REMOVE, |card| should be NULL. - AutofillCreditCardChange(Type t, string16 k, const CreditCard* card) - : GenericAutofillChange<string16>(t, k), credit_card_(card) {} + AutofillCreditCardChange(Type t, string16 k, const CreditCard* card); + virtual ~AutofillCreditCardChange(); const CreditCard* credit_card() const { return credit_card_; } bool operator==(const AutofillCreditCardChange& change) const { diff --git a/chrome/browser/webdata/autofill_entry.cc b/chrome/browser/webdata/autofill_entry.cc index d0f8913..31bc406 100644 --- a/chrome/browser/webdata/autofill_entry.cc +++ b/chrome/browser/webdata/autofill_entry.cc @@ -4,6 +4,26 @@ #include <set> #include "chrome/browser/webdata/autofill_entry.h" +#include "base/utf_string_conversions.h" + +AutofillKey::AutofillKey() {} + +AutofillKey::AutofillKey(const string16& name, const string16& value) + : name_(name), + value_(value) { +} + +AutofillKey::AutofillKey(const char* name, const char* value) + : name_(UTF8ToUTF16(name)), + value_(UTF8ToUTF16(value)) { +} + +AutofillKey::AutofillKey(const AutofillKey& key) + : name_(key.name()), + value_(key.value()) { +} + +AutofillKey::~AutofillKey() {} bool AutofillKey::operator==(const AutofillKey& key) const { return name_ == key.name() && value_ == key.value(); @@ -20,6 +40,14 @@ bool AutofillKey::operator<(const AutofillKey& key) const { } } +AutofillEntry::AutofillEntry(const AutofillKey& key, + const std::vector<base::Time>& timestamps) + : key_(key), + timestamps_(timestamps) { +} + +AutofillEntry::~AutofillEntry() {} + bool AutofillEntry::operator==(const AutofillEntry& entry) const { if (!(key_ == entry.key())) return false; diff --git a/chrome/browser/webdata/autofill_entry.h b/chrome/browser/webdata/autofill_entry.h index 4917b29..7aa9139 100644 --- a/chrome/browser/webdata/autofill_entry.h +++ b/chrome/browser/webdata/autofill_entry.h @@ -9,21 +9,15 @@ #include <vector> #include "base/string16.h" #include "base/time.h" -#include "base/utf_string_conversions.h" class AutofillKey { public: - AutofillKey() {} - AutofillKey(const string16& name, const string16& value) - : name_(name), - value_(value) {} - AutofillKey(const char* name, const char* value) - : name_(UTF8ToUTF16(name)), - value_(UTF8ToUTF16(value)) {} - AutofillKey(const AutofillKey& key) - : name_(key.name()), - value_(key.value()) {} - virtual ~AutofillKey() {} + AutofillKey(); + AutofillKey(const string16& name, const string16& value); + AutofillKey(const char* name, const char* value); + AutofillKey(const AutofillKey& key); + virtual ~AutofillKey(); + const string16& name() const { return name_; } const string16& value() const { return value_; } @@ -38,9 +32,8 @@ class AutofillKey { class AutofillEntry { public: AutofillEntry(const AutofillKey& key, - const std::vector<base::Time>& timestamps) - : key_(key), - timestamps_(timestamps) {} + const std::vector<base::Time>& timestamps); + ~AutofillEntry(); const AutofillKey& key() const { return key_; } const std::vector<base::Time>& timestamps() const { return timestamps_; } diff --git a/chrome/browser/worker_host/message_port_dispatcher.cc b/chrome/browser/worker_host/message_port_dispatcher.cc index edd4a94..49c87a09 100644 --- a/chrome/browser/worker_host/message_port_dispatcher.cc +++ b/chrome/browser/worker_host/message_port_dispatcher.cc @@ -12,6 +12,21 @@ #include "chrome/common/notification_service.h" #include "chrome/common/worker_messages.h" +struct MessagePortDispatcher::MessagePort { + // sender and route_id are what we need to send messages to the port. + IPC::Message::Sender* sender; + int route_id; + // A function pointer to generate a new route id for the sender above. + // Owned by "sender" above, so don't delete. + CallbackWithReturnValue<int>::Type* next_routing_id; + // A globally unique id for this message port. + int message_port_id; + // The globally unique id of the entangled message port. + int entangled_message_port_id; + // If true, all messages to this message port are queued and not delivered. + bool queue_messages; + QueuedMessages queued_messages; +}; MessagePortDispatcher* MessagePortDispatcher::GetInstance() { return Singleton<MessagePortDispatcher>::get(); diff --git a/chrome/browser/worker_host/message_port_dispatcher.h b/chrome/browser/worker_host/message_port_dispatcher.h index b8f7021..566416b 100644 --- a/chrome/browser/worker_host/message_port_dispatcher.h +++ b/chrome/browser/worker_host/message_port_dispatcher.h @@ -74,22 +74,7 @@ class MessagePortDispatcher : public NotificationObserver { // verify that the message port id exists. void Erase(int message_port_id); - struct MessagePort { - // sender and route_id are what we need to send messages to the port. - IPC::Message::Sender* sender; - int route_id; - // A function pointer to generate a new route id for the sender above. - // Owned by "sender" above, so don't delete. - CallbackWithReturnValue<int>::Type* next_routing_id; - // A globally unique id for this message port. - int message_port_id; - // The globally unique id of the entangled message port. - int entangled_message_port_id; - // If true, all messages to this message port are queued and not delivered. - bool queue_messages; - QueuedMessages queued_messages; - }; - + struct MessagePort; typedef std::map<int, MessagePort> MessagePorts; MessagePorts message_ports_; diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp index 91a4636..b9a30e8 100644 --- a/chrome/chrome.gyp +++ b/chrome/chrome.gyp @@ -1134,6 +1134,7 @@ 'service/cloud_print/job_status_updater.cc', 'service/cloud_print/job_status_updater.h', 'service/cloud_print/print_system_dummy.cc', + 'service/cloud_print/print_system.cc', 'service/cloud_print/print_system.h', 'service/cloud_print/printer_job_handler.cc', 'service/cloud_print/printer_job_handler.h', diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi index 20e50d6..d9f8e78 100644 --- a/chrome/chrome_browser.gypi +++ b/chrome/chrome_browser.gypi @@ -1619,6 +1619,7 @@ 'browser/fav_icon_helper.h', 'browser/favicon_service.cc', 'browser/favicon_service.h', + 'browser/file_path_watcher.cc', 'browser/file_path_watcher.h', 'browser/file_path_watcher_inotify.cc', 'browser/file_path_watcher_mac.cc', @@ -1651,6 +1652,7 @@ 'browser/geolocation/core_location_data_provider_mac.mm', 'browser/geolocation/core_location_provider_mac.h', 'browser/geolocation/core_location_provider_mac.mm', + 'browser/geolocation/device_data_provider.cc', 'browser/geolocation/device_data_provider.h', 'browser/geolocation/empty_device_data_provider.cc', 'browser/geolocation/empty_device_data_provider.h', @@ -2094,6 +2096,7 @@ 'browser/in_process_webkit/dom_storage_dispatcher_host.h', 'browser/in_process_webkit/dom_storage_namespace.cc', 'browser/in_process_webkit/dom_storage_namespace.h', + 'browser/in_process_webkit/indexed_db_callbacks.cc', 'browser/in_process_webkit/indexed_db_callbacks.h', 'browser/in_process_webkit/indexed_db_context.cc', 'browser/in_process_webkit/indexed_db_context.h', @@ -2535,6 +2538,7 @@ 'browser/renderer_host/resource_message_filter_win.cc', 'browser/renderer_host/resource_queue.cc', 'browser/renderer_host/resource_queue.h', + 'browser/renderer_host/resource_request_details.cc', 'browser/renderer_host/resource_request_details.h', 'browser/renderer_host/safe_browsing_resource_handler.cc', 'browser/renderer_host/safe_browsing_resource_handler.h', @@ -2656,6 +2660,7 @@ 'browser/speech/endpointer/endpointer.h', 'browser/speech/endpointer/energy_endpointer.cc', 'browser/speech/endpointer/energy_endpointer.h', + 'browser/speech/endpointer/energy_endpointer_params.cc', 'browser/speech/endpointer/energy_endpointer_params.h', 'browser/speech/speech_input_bubble.h', 'browser/speech/speech_input_bubble.cc', @@ -2699,6 +2704,7 @@ 'browser/ssl/ssl_policy.h', 'browser/ssl/ssl_policy_backend.cc', 'browser/ssl/ssl_policy_backend.h', + 'browser/ssl/ssl_request_info.cc', 'browser/ssl/ssl_request_info.h', 'browser/ssl_client_certificate_selector.h', 'browser/status_bubble.h', @@ -3271,6 +3277,7 @@ 'browser/visitedlink_master.h', 'browser/visitedlink_event_listener.cc', 'browser/visitedlink_event_listener.h', + 'browser/webdata/autofill_change.cc', 'browser/webdata/autofill_change.h', 'browser/webdata/autofill_entry.cc', 'browser/webdata/autofill_entry.h', diff --git a/chrome/chrome_common.gypi b/chrome/chrome_common.gypi index 463752c..e7970de 100644 --- a/chrome/chrome_common.gypi +++ b/chrome/chrome_common.gypi @@ -53,6 +53,7 @@ 'common/devtools_messages.cc', 'common/devtools_messages.h', 'common/devtools_messages_internal.h', + 'common/dx_diag_node.cc', 'common/dx_diag_node.h', 'common/file_system/webfilesystem_callback_dispatcher.cc', 'common/file_system/webfilesystem_callback_dispatcher.h', @@ -64,6 +65,8 @@ 'common/font_descriptor_mac.mm', 'common/geoposition.cc', 'common/geoposition.h', + 'common/gpu_create_command_buffer_config.cc', + 'common/gpu_create_command_buffer_config.h', 'common/gpu_info.h', 'common/gpu_info.cc', 'common/gpu_messages.cc', diff --git a/chrome/common/dx_diag_node.cc b/chrome/common/dx_diag_node.cc new file mode 100644 index 0000000..85beb5b --- /dev/null +++ b/chrome/common/dx_diag_node.cc @@ -0,0 +1,9 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/common/dx_diag_node.h" + +DxDiagNode::DxDiagNode() {} + +DxDiagNode::~DxDiagNode() {} diff --git a/chrome/common/dx_diag_node.h b/chrome/common/dx_diag_node.h index 9f20d92..6522213 100644 --- a/chrome/common/dx_diag_node.h +++ b/chrome/common/dx_diag_node.h @@ -12,6 +12,9 @@ #include <string> struct DxDiagNode { + DxDiagNode(); + ~DxDiagNode(); + std::map<std::string, std::string> values; std::map<std::string, DxDiagNode> children; }; diff --git a/chrome/common/gpu_create_command_buffer_config.cc b/chrome/common/gpu_create_command_buffer_config.cc new file mode 100644 index 0000000..e8ab9d7 --- /dev/null +++ b/chrome/common/gpu_create_command_buffer_config.cc @@ -0,0 +1,16 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/common/gpu_create_command_buffer_config.h" + +GPUCreateCommandBufferConfig::GPUCreateCommandBufferConfig() {} + +GPUCreateCommandBufferConfig::GPUCreateCommandBufferConfig( + const std::string& _allowed_extensions, + const std::vector<int>& _attribs) + : allowed_extensions(_allowed_extensions), + attribs(_attribs) { +} + +GPUCreateCommandBufferConfig::~GPUCreateCommandBufferConfig() {} diff --git a/chrome/common/gpu_create_command_buffer_config.h b/chrome/common/gpu_create_command_buffer_config.h index 8a2525f..0cb217a 100644 --- a/chrome/common/gpu_create_command_buffer_config.h +++ b/chrome/common/gpu_create_command_buffer_config.h @@ -11,14 +11,12 @@ // Parameters passed when initializing a GPU channel. struct GPUCreateCommandBufferConfig { - GPUCreateCommandBufferConfig() { } + GPUCreateCommandBufferConfig(); - GPUCreateCommandBufferConfig( - const std::string& _allowed_extensions, - const std::vector<int>& _attribs) - : allowed_extensions(_allowed_extensions), - attribs(_attribs) { - } + GPUCreateCommandBufferConfig(const std::string& _allowed_extensions, + const std::vector<int>& _attribs); + + ~GPUCreateCommandBufferConfig(); std::string allowed_extensions; std::vector<int> attribs; diff --git a/chrome/gpu/gpu_video_decoder.cc b/chrome/gpu/gpu_video_decoder.cc index 6c90df5..b998149 100644 --- a/chrome/gpu/gpu_video_decoder.cc +++ b/chrome/gpu/gpu_video_decoder.cc @@ -20,6 +20,15 @@ #include <d3d9.h> #endif +struct GpuVideoDecoder::PendingAllocation { + size_t n; + size_t width; + size_t height; + media::VideoFrame::Format format; + std::vector<scoped_refptr<media::VideoFrame> >* frames; + Task* task; +}; + void GpuVideoDecoder::OnChannelConnected(int32 peer_pid) { } @@ -251,6 +260,8 @@ GpuVideoDecoder::GpuVideoDecoder( #endif } +GpuVideoDecoder::~GpuVideoDecoder() {} + void GpuVideoDecoder::OnInitialize(const GpuVideoDecoderInitParam& param) { // TODO(jiesun): codec id should come from |param|. config_.codec = media::kCodecH264; diff --git a/chrome/gpu/gpu_video_decoder.h b/chrome/gpu/gpu_video_decoder.h index 9a339e1..25885c8 100644 --- a/chrome/gpu/gpu_video_decoder.h +++ b/chrome/gpu/gpu_video_decoder.h @@ -97,7 +97,7 @@ class GpuVideoDecoder IPC::Message::Sender* sender, base::ProcessHandle handle, gpu::gles2::GLES2Decoder* decoder); - virtual ~GpuVideoDecoder() {} + virtual ~GpuVideoDecoder(); // IPC::Channel::Listener implementation. virtual void OnChannelConnected(int32 peer_pid); @@ -130,14 +130,7 @@ class GpuVideoDecoder void SetGpuVideoDevice(GpuVideoDevice* device); private: - struct PendingAllocation { - size_t n; - size_t width; - size_t height; - media::VideoFrame::Format format; - std::vector<scoped_refptr<media::VideoFrame> >* frames; - Task* task; - }; + struct PendingAllocation; int32 decoder_host_id() { return decoder_host_id_; } diff --git a/chrome/gpu/gpu_video_decoder_unittest.cc b/chrome/gpu/gpu_video_decoder_unittest.cc index 30f1664..b1ea751 100644 --- a/chrome/gpu/gpu_video_decoder_unittest.cc +++ b/chrome/gpu/gpu_video_decoder_unittest.cc @@ -2,6 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. +#include "base/message_loop.h" #include "base/process.h" #include "chrome/common/gpu_messages.h" #include "chrome/gpu/gpu_video_decoder.h" diff --git a/chrome/gpu/gpu_video_service.cc b/chrome/gpu/gpu_video_service.cc index 2ef32e8..03025b8 100644 --- a/chrome/gpu/gpu_video_service.cc +++ b/chrome/gpu/gpu_video_service.cc @@ -7,10 +7,17 @@ #include "chrome/gpu/gpu_video_decoder.h" #include "chrome/gpu/gpu_video_service.h" +struct GpuVideoService::GpuVideoDecoderInfo { + scoped_refptr<GpuVideoDecoder> decoder; + GpuChannel* channel; +}; + + GpuVideoService::GpuVideoService() { // TODO(jiesun): move this time consuming stuff out of here. IntializeGpuVideoService(); } + GpuVideoService::~GpuVideoService() { // TODO(jiesun): move this time consuming stuff out of here. UnintializeGpuVideoService(); diff --git a/chrome/gpu/gpu_video_service.h b/chrome/gpu/gpu_video_service.h index a2c090e..e6af444 100644 --- a/chrome/gpu/gpu_video_service.h +++ b/chrome/gpu/gpu_video_service.h @@ -32,10 +32,7 @@ class GpuVideoService : public IPC::Channel::Listener, int32 decoder_id); private: - struct GpuVideoDecoderInfo { - scoped_refptr<GpuVideoDecoder> decoder; - GpuChannel* channel; - }; + struct GpuVideoDecoderInfo; GpuVideoService(); virtual ~GpuVideoService(); diff --git a/chrome/renderer/extensions/bindings_utils.cc b/chrome/renderer/extensions/bindings_utils.cc index 2ddbefa..83ddeee 100644 --- a/chrome/renderer/extensions/bindings_utils.cc +++ b/chrome/renderer/extensions/bindings_utils.cc @@ -56,6 +56,19 @@ v8::Handle<v8::Value> ExtensionBase::GetChromeHidden( return hidden; } +ContextInfo::ContextInfo(v8::Persistent<v8::Context> context, + const std::string& extension_id, + WebKit::WebFrame* parent_frame, + RenderView* render_view) + : context(context), + extension_id(extension_id), + parent_frame(parent_frame), + render_view(render_view), + num_connected_events(0) { +} + +ContextInfo::~ContextInfo() {} + ContextList& GetContexts() { return Singleton<SingletonData>::get()->contexts; } @@ -87,6 +100,13 @@ ContextInfo* GetInfoForCurrentContext() { return context_iter->get(); } +PendingRequest::PendingRequest(v8::Persistent<v8::Context> context, + const std::string& name) + : context(context), name(name) { +} + +PendingRequest::~PendingRequest() {} + ContextList::iterator FindContext(v8::Handle<v8::Context> context) { ContextList& all_contexts = GetContexts(); diff --git a/chrome/renderer/extensions/bindings_utils.h b/chrome/renderer/extensions/bindings_utils.h index b269ad1..97973a9 100644 --- a/chrome/renderer/extensions/bindings_utils.h +++ b/chrome/renderer/extensions/bindings_utils.h @@ -67,6 +67,12 @@ const char* GetStringResource() { // Contains information about a single javascript context. struct ContextInfo { + ContextInfo(v8::Persistent<v8::Context> context, + const std::string& extension_id, + WebKit::WebFrame* parent_frame, + RenderView* render_view); + ~ContextInfo(); + v8::Persistent<v8::Context> context; std::string extension_id; // empty if the context is not an extension @@ -85,14 +91,6 @@ struct ContextInfo { // A count of the number of events that are listening in this context. When // this is zero, |context| will be a weak handle. int num_connected_events; - - ContextInfo(v8::Persistent<v8::Context> context, - const std::string& extension_id, - WebKit::WebFrame* parent_frame, - RenderView* render_view) - : context(context), extension_id(extension_id), - parent_frame(parent_frame), render_view(render_view), - num_connected_events(0) {} }; typedef std::list< linked_ptr<ContextInfo> > ContextList; @@ -113,9 +111,9 @@ ContextInfo* GetInfoForCurrentContext(); // Contains info relevant to a pending API request. struct PendingRequest { public : - PendingRequest(v8::Persistent<v8::Context> context, const std::string& name) - : context(context), name(name) { - } + PendingRequest(v8::Persistent<v8::Context> context, const std::string& name); + ~PendingRequest(); + v8::Persistent<v8::Context> context; std::string name; }; diff --git a/chrome/renderer/form_manager.cc b/chrome/renderer/form_manager.cc index 9c49fd6..851eea4 100644 --- a/chrome/renderer/form_manager.cc +++ b/chrome/renderer/form_manager.cc @@ -237,6 +237,12 @@ void GetOptionStringsFromElement(WebFormControlElement element, } // namespace +struct FormManager::FormElement { + WebKit::WebFormElement form_element; + std::vector<WebKit::WebFormControlElement> control_elements; + std::vector<string16> control_values; +}; + FormManager::FormManager() { } diff --git a/chrome/renderer/form_manager.h b/chrome/renderer/form_manager.h index a8643d9..3e4b834 100644 --- a/chrome/renderer/form_manager.h +++ b/chrome/renderer/form_manager.h @@ -115,11 +115,7 @@ class FormManager { // Stores the WebFormElement and the form control elements for a form. // Original form values are stored so when we clear a form we can reset // "select-one" values to their original state. - struct FormElement { - WebKit::WebFormElement form_element; - std::vector<WebKit::WebFormControlElement> control_elements; - std::vector<string16> control_values; - }; + struct FormElement; // Type for cache of FormElement objects. typedef std::vector<FormElement*> FormElementList; diff --git a/chrome/renderer/gpu_video_decoder_host.cc b/chrome/renderer/gpu_video_decoder_host.cc index bf6c79f..44599f3 100644 --- a/chrome/renderer/gpu_video_decoder_host.cc +++ b/chrome/renderer/gpu_video_decoder_host.cc @@ -26,6 +26,8 @@ GpuVideoDecoderHost::GpuVideoDecoderHost(MessageRouter* router, memset(&config_, 0, sizeof(config_)); } +GpuVideoDecoderHost::~GpuVideoDecoderHost() {} + void GpuVideoDecoderHost::OnChannelError() { ipc_sender_ = NULL; } diff --git a/chrome/renderer/gpu_video_decoder_host.h b/chrome/renderer/gpu_video_decoder_host.h index baf0ffe..c32a9f0 100644 --- a/chrome/renderer/gpu_video_decoder_host.h +++ b/chrome/renderer/gpu_video_decoder_host.h @@ -45,7 +45,7 @@ class GpuVideoDecoderHost : public media::VideoDecodeEngine, IPC::Message::Sender* ipc_sender, int context_route_id, int32 decoder_host_id); - virtual ~GpuVideoDecoderHost() {} + virtual ~GpuVideoDecoderHost(); // IPC::Channel::Listener. virtual void OnChannelConnected(int32 peer_pid) {} diff --git a/chrome/renderer/paint_aggregator.cc b/chrome/renderer/paint_aggregator.cc index 943e012..991053f 100644 --- a/chrome/renderer/paint_aggregator.cc +++ b/chrome/renderer/paint_aggregator.cc @@ -34,6 +34,10 @@ static const float kMaxRedundantPaintToScrollArea = 0.8f; // a paint rect can be significant. static const size_t kMaxPaintRects = 5; +PaintAggregator::PendingUpdate::PendingUpdate() {} + +PaintAggregator::PendingUpdate::~PendingUpdate() {} + gfx::Rect PaintAggregator::PendingUpdate::GetScrollDamage() const { // Should only be scrolling in one direction at a time. DCHECK(!(scroll_delta.x() && scroll_delta.y())); diff --git a/chrome/renderer/paint_aggregator.h b/chrome/renderer/paint_aggregator.h index 6efac35..119e0b5 100644 --- a/chrome/renderer/paint_aggregator.h +++ b/chrome/renderer/paint_aggregator.h @@ -8,6 +8,7 @@ #include <vector> +#include "base/basictypes.h" #include "gfx/rect.h" // This class is responsible for aggregating multiple invalidation and scroll @@ -22,9 +23,8 @@ class PaintAggregator { // |scroll_delta| can only specify scrolling in one direction (i.e., the x // and y members cannot both be non-zero). struct PendingUpdate { - gfx::Point scroll_delta; - gfx::Rect scroll_rect; - std::vector<gfx::Rect> paint_rects; + PendingUpdate(); + ~PendingUpdate(); // Returns the rect damaged by scrolling within |scroll_rect| by // |scroll_delta|. This rect must be repainted. @@ -32,6 +32,10 @@ class PaintAggregator { // Returns the smallest rect containing all paint rects. gfx::Rect GetPaintBounds() const; + + gfx::Point scroll_delta; + gfx::Rect scroll_rect; + std::vector<gfx::Rect> paint_rects; }; // There is a PendingUpdate if InvalidateRect or ScrollRect were called and diff --git a/chrome/renderer/pepper_devices.cc b/chrome/renderer/pepper_devices.cc index 07da49d..57189d4 100644 --- a/chrome/renderer/pepper_devices.cc +++ b/chrome/renderer/pepper_devices.cc @@ -20,11 +20,30 @@ const uint32 kBytesPerPixel = 4; // Only 8888 RGBA for now. int Graphics2DDeviceContext::next_buffer_id_ = 0; +struct Graphics2DDeviceContext::FlushCallbackData { + FlushCallbackData(NPDeviceFlushContextCallbackPtr f, + NPP n, + NPDeviceContext2D* c, + NPUserData* u) + : function(f), + npp(n), + context(c), + user_data(u) { + } + + NPDeviceFlushContextCallbackPtr function; + NPP npp; + NPDeviceContext2D* context; + NPUserData* user_data; +}; + Graphics2DDeviceContext::Graphics2DDeviceContext( WebPluginDelegatePepper* plugin_delegate) : plugin_delegate_(plugin_delegate) { } +Graphics2DDeviceContext::~Graphics2DDeviceContext() {} + NPError Graphics2DDeviceContext::Initialize( gfx::Rect window_rect, const NPDeviceContext2DConfig* config, NPDeviceContext2D* context) { @@ -153,6 +172,12 @@ void Graphics2DDeviceContext::RenderViewFlushedPaint() { painted_flush_callbacks_.clear(); } +AudioDeviceContext::AudioDeviceContext() + : context_(NULL), + stream_id_(0), + shared_memory_size_(0) { +} + AudioDeviceContext::~AudioDeviceContext() { if (stream_id_) { OnDestroy(); diff --git a/chrome/renderer/pepper_devices.h b/chrome/renderer/pepper_devices.h index 2a72f4e..912657a 100644 --- a/chrome/renderer/pepper_devices.h +++ b/chrome/renderer/pepper_devices.h @@ -27,6 +27,7 @@ class SkBitmap; class Graphics2DDeviceContext { public: explicit Graphics2DDeviceContext(WebPluginDelegatePepper* plugin_delegate); + ~Graphics2DDeviceContext(); NPError Initialize(gfx::Rect window_rect, const NPDeviceContext2DConfig* config, @@ -45,22 +46,7 @@ class Graphics2DDeviceContext { skia::PlatformCanvas* canvas() { return canvas_.get(); } private: - struct FlushCallbackData { - FlushCallbackData(NPDeviceFlushContextCallbackPtr f, - NPP n, - NPDeviceContext2D* c, - NPUserData* u) - : function(f), - npp(n), - context(c), - user_data(u) { - } - - NPDeviceFlushContextCallbackPtr function; - NPP npp; - NPDeviceContext2D* context; - NPUserData* user_data; - }; + struct FlushCallbackData; typedef std::vector<FlushCallbackData> FlushCallbackVector; WebPluginDelegatePepper* plugin_delegate_; @@ -97,11 +83,7 @@ class Graphics2DDeviceContext { class AudioDeviceContext : public AudioMessageFilter::Delegate, public base::DelegateSimpleThread::Delegate { public: - explicit AudioDeviceContext() - : context_(NULL), - stream_id_(0), - shared_memory_size_(0) { - } + explicit AudioDeviceContext(); virtual ~AudioDeviceContext(); NPError Initialize(AudioMessageFilter* filter, diff --git a/chrome/renderer/pepper_plugin_delegate_impl.cc b/chrome/renderer/pepper_plugin_delegate_impl.cc index cb37c0b..ecaf0e4 100644 --- a/chrome/renderer/pepper_plugin_delegate_impl.cc +++ b/chrome/renderer/pepper_plugin_delegate_impl.cc @@ -495,6 +495,8 @@ PepperPluginDelegateImpl::PepperPluginDelegateImpl(RenderView* render_view) id_generator_(0) { } +PepperPluginDelegateImpl::~PepperPluginDelegateImpl() {} + void PepperPluginDelegateImpl::ViewInitiatedPaint() { // Notify all of our instances that we started painting. This is used for // internal bookkeeping only, so we know that the set can not change under diff --git a/chrome/renderer/pepper_plugin_delegate_impl.h b/chrome/renderer/pepper_plugin_delegate_impl.h index fc1c5b8..a1fb6a0 100644 --- a/chrome/renderer/pepper_plugin_delegate_impl.h +++ b/chrome/renderer/pepper_plugin_delegate_impl.h @@ -40,7 +40,7 @@ class PepperPluginDelegateImpl public base::SupportsWeakPtr<PepperPluginDelegateImpl> { public: explicit PepperPluginDelegateImpl(RenderView* render_view); - virtual ~PepperPluginDelegateImpl() {} + virtual ~PepperPluginDelegateImpl(); // Called by RenderView to tell us about painting events, these two functions // just correspond to the DidInitiatePaint and DidFlushPaint in R.V.. diff --git a/chrome/renderer/user_script_slave.cc b/chrome/renderer/user_script_slave.cc index 8639d43..dba1dcf 100644 --- a/chrome/renderer/user_script_slave.cc +++ b/chrome/renderer/user_script_slave.cc @@ -67,6 +67,8 @@ UserScriptSlave::UserScriptSlave() IDR_GREASEMONKEY_API_JS); } +UserScriptSlave::~UserScriptSlave() {} + void UserScriptSlave::GetActiveExtensions( std::set<std::string>* extension_ids) { for (size_t i = 0; i < scripts_.size(); ++i) { diff --git a/chrome/renderer/user_script_slave.h b/chrome/renderer/user_script_slave.h index 7df6b17..23acb4c 100644 --- a/chrome/renderer/user_script_slave.h +++ b/chrome/renderer/user_script_slave.h @@ -27,6 +27,7 @@ using WebKit::WebScriptSource; class UserScriptSlave { public: UserScriptSlave(); + ~UserScriptSlave(); // Returns the unique set of extension IDs this UserScriptSlave knows about. void GetActiveExtensions(std::set<std::string>* extension_ids); diff --git a/chrome/renderer/websharedworkerrepository_impl.cc b/chrome/renderer/websharedworkerrepository_impl.cc index 99f2a3b..29c9ed6 100644 --- a/chrome/renderer/websharedworkerrepository_impl.cc +++ b/chrome/renderer/websharedworkerrepository_impl.cc @@ -8,6 +8,10 @@ #include "chrome/renderer/render_thread.h" #include "chrome/renderer/websharedworker_proxy.h" +WebSharedWorkerRepositoryImpl::WebSharedWorkerRepositoryImpl() {} + +WebSharedWorkerRepositoryImpl::~WebSharedWorkerRepositoryImpl() {} + void WebSharedWorkerRepositoryImpl::addSharedWorker( WebKit::WebSharedWorker* worker, DocumentID document) { shared_worker_parents_.insert(document); diff --git a/chrome/renderer/websharedworkerrepository_impl.h b/chrome/renderer/websharedworkerrepository_impl.h index b11e4a7..1bcbfa9 100644 --- a/chrome/renderer/websharedworkerrepository_impl.h +++ b/chrome/renderer/websharedworkerrepository_impl.h @@ -16,7 +16,8 @@ class WebSharedWorker; class WebSharedWorkerRepositoryImpl : public WebKit::WebSharedWorkerRepository { public: - virtual ~WebSharedWorkerRepositoryImpl() {} + WebSharedWorkerRepositoryImpl(); + virtual ~WebSharedWorkerRepositoryImpl(); virtual void addSharedWorker(WebKit::WebSharedWorker*, DocumentID document); virtual void documentDetached(DocumentID document); diff --git a/chrome/service/cloud_print/print_system.cc b/chrome/service/cloud_print/print_system.cc new file mode 100644 index 0000000..57c1342 --- /dev/null +++ b/chrome/service/cloud_print/print_system.cc @@ -0,0 +1,36 @@ +// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/service/cloud_print/print_system.h" + +namespace cloud_print { + +PrinterBasicInfo::PrinterBasicInfo() : printer_status(0) {} + +PrinterBasicInfo::~PrinterBasicInfo() {} + +PrintJobDetails::PrintJobDetails() + : status(PRINT_JOB_STATUS_INVALID), + platform_status_flags(0), + total_pages(0), + pages_printed(0) { +} + +void PrintJobDetails::Clear() { + status = PRINT_JOB_STATUS_INVALID; + platform_status_flags = 0; + status_message.clear(); + total_pages = 0; + pages_printed = 0; +} + +PrintSystem::PrintServerWatcher::~PrintServerWatcher() {} + +PrintSystem::PrinterWatcher::~PrinterWatcher() {} + +PrintSystem::JobSpooler::~JobSpooler() {} + +PrintSystem::~PrintSystem() {} + +} // namespace cloud_print diff --git a/chrome/service/cloud_print/print_system.h b/chrome/service/cloud_print/print_system.h index b0e287d..2abdcc3 100644 --- a/chrome/service/cloud_print/print_system.h +++ b/chrome/service/cloud_print/print_system.h @@ -21,12 +21,13 @@ namespace cloud_print { typedef int PlatformJobId; struct PrinterBasicInfo { + PrinterBasicInfo(); + ~PrinterBasicInfo(); + std::string printer_name; std::string printer_description; int printer_status; std::map<std::string, std::string> options; - PrinterBasicInfo() : printer_status(0) { - } }; typedef std::vector<PrinterBasicInfo> PrinterList; @@ -46,22 +47,10 @@ enum PrintJobStatus { }; struct PrintJobDetails { - PrintJobStatus status; - int platform_status_flags; - std::string status_message; - int total_pages; - int pages_printed; - PrintJobDetails() : status(PRINT_JOB_STATUS_INVALID), - platform_status_flags(0), total_pages(0), - pages_printed(0) { - } - void Clear() { - status = PRINT_JOB_STATUS_INVALID; - platform_status_flags = 0; - status_message.clear(); - total_pages = 0; - pages_printed = 0; - } + PrintJobDetails(); + + void Clear(); + bool operator ==(const PrintJobDetails& other) const { return (status == other.status) && (platform_status_flags == other.platform_status_flags) && @@ -69,9 +58,16 @@ struct PrintJobDetails { (total_pages == other.total_pages) && (pages_printed == other.pages_printed); } + bool operator !=(const PrintJobDetails& other) const { return !(*this == other); } + + PrintJobStatus status; + int platform_status_flags; + std::string status_message; + int total_pages; + int pages_printed; }; // PrintSystem class will provide interface for different printing systems @@ -96,7 +92,7 @@ class PrintSystem : public base::RefCountedThreadSafe<PrintSystem> { virtual ~Delegate() {} }; - virtual ~PrintServerWatcher() {} + virtual ~PrintServerWatcher(); virtual bool StartWatching(PrintServerWatcher::Delegate* delegate) = 0; virtual bool StopWatching() = 0; }; @@ -114,7 +110,7 @@ class PrintSystem : public base::RefCountedThreadSafe<PrintSystem> { virtual ~Delegate() {} }; - virtual ~PrinterWatcher() {} + virtual ~PrinterWatcher(); virtual bool StartWatching(PrinterWatcher::Delegate* delegate) = 0; virtual bool StopWatching() = 0; virtual bool GetCurrentPrinterInfo(PrinterBasicInfo* printer_info) = 0; @@ -130,7 +126,7 @@ class PrintSystem : public base::RefCountedThreadSafe<PrintSystem> { virtual void OnJobSpoolFailed() = 0; }; - virtual ~JobSpooler() {} + virtual ~JobSpooler(); // Spool job to the printer asynchronously. Caller will be notified via // |delegate|. Note that only one print job can be in progress at any given // time. Subsequent calls to Spool (before the Delegate::OnJobSpoolSucceeded @@ -143,7 +139,7 @@ class PrintSystem : public base::RefCountedThreadSafe<PrintSystem> { JobSpooler::Delegate* delegate) = 0; }; - virtual ~PrintSystem() {} + virtual ~PrintSystem(); // Enumerates the list of installed local and network printers. virtual void EnumeratePrinters(PrinterList* printer_list) = 0; |