| Index: chrome/browser/android/data_usage/data_use_tab_model.cc
|
| diff --git a/chrome/browser/android/data_usage/data_use_tab_model.cc b/chrome/browser/android/data_usage/data_use_tab_model.cc
|
| index c4d8e36e39e2716ec47af99ce4fe3453efac5227..9c531a00e068dc51446c4ca73a4e58d09ad3fdfc 100644
|
| --- a/chrome/browser/android/data_usage/data_use_tab_model.cc
|
| +++ b/chrome/browser/android/data_usage/data_use_tab_model.cc
|
| @@ -7,6 +7,7 @@
|
| #include "base/time/time.h"
|
| #include "chrome/browser/android/data_usage/external_data_use_observer.h"
|
| #include "chrome/browser/android/data_usage/tab_data_use_entry.h"
|
| +#include "content/public/browser/browser_thread.h"
|
|
|
| namespace {
|
|
|
| @@ -33,7 +34,6 @@ DataUseTabModel::DataUseTabModel(
|
| const ExternalDataUseObserver* data_use_observer,
|
| scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner)
|
| : data_use_observer_(data_use_observer),
|
| - observer_list_(new base::ObserverListThreadSafe<TabDataUseObserver>),
|
| weak_factory_(this) {}
|
|
|
| DataUseTabModel::~DataUseTabModel() {
|
| @@ -47,14 +47,13 @@ base::WeakPtr<DataUseTabModel> DataUseTabModel::GetWeakPtr() {
|
|
|
| void DataUseTabModel::OnNavigationEvent(int32_t tab_id,
|
| TransitionType transition,
|
| - const GURL& url,
|
| - const std::string& package) {
|
| + const GURL& url) {
|
| DCHECK(thread_checker_.CalledOnValidThread());
|
| DCHECK(IsValidTabID(tab_id));
|
|
|
| - // TODO(rajendrant): implementation to use package.
|
| switch (transition) {
|
| case TRANSITION_OMNIBOX_SEARCH:
|
| + case TRANSITION_OMNIBOX_NAVIGATION:
|
| case TRANSITION_FROM_EXTERNAL_APP: {
|
| // Enter events.
|
| std::string label;
|
| @@ -69,7 +68,6 @@ void DataUseTabModel::OnNavigationEvent(int32_t tab_id,
|
| }
|
|
|
| case TRANSITION_FROM_NAVSUGGEST:
|
| - case TRANSITION_OMNIBOX_NAVIGATION:
|
| case TRANSITION_BOOKMARK:
|
| case TRANSITION_HISTORY_ITEM:
|
| case TRANSITION_TO_EXTERNAL_APP:
|
| @@ -118,21 +116,25 @@ bool DataUseTabModel::GetLabelForDataUse(const data_usage::DataUse& data_use,
|
| }
|
|
|
| void DataUseTabModel::AddObserver(TabDataUseObserver* observer) {
|
| - observer_list_->AddObserver(observer);
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + observer_list_.AddObserver(observer);
|
| }
|
|
|
| void DataUseTabModel::RemoveObserver(TabDataUseObserver* observer) {
|
| - observer_list_->RemoveObserver(observer);
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + observer_list_.RemoveObserver(observer);
|
| }
|
|
|
| void DataUseTabModel::NotifyObserversOfTrackingStarting(int32_t tab_id) {
|
| - observer_list_->Notify(FROM_HERE, &TabDataUseObserver::NotifyTrackingStarting,
|
| - tab_id);
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + FOR_EACH_OBSERVER(TabDataUseObserver, observer_list_,
|
| + NotifyTrackingStarting(tab_id));
|
| }
|
|
|
| void DataUseTabModel::NotifyObserversOfTrackingEnding(int32_t tab_id) {
|
| - observer_list_->Notify(FROM_HERE, &TabDataUseObserver::NotifyTrackingEnding,
|
| - tab_id);
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| + FOR_EACH_OBSERVER(TabDataUseObserver, observer_list_,
|
| + NotifyTrackingEnding(tab_id));
|
| }
|
|
|
| void DataUseTabModel::StartTrackingDataUse(int32_t tab_id,
|
|
|