| Index: components/history/core/browser/history_backend.cc
|
| diff --git a/components/history/core/browser/history_backend.cc b/components/history/core/browser/history_backend.cc
|
| index 62187120cff3ae3d97a93a60b1fdcd8759dff2e5..32cbcefb06a11c32af73e213dd65568a1f0442e2 100644
|
| --- a/components/history/core/browser/history_backend.cc
|
| +++ b/components/history/core/browser/history_backend.cc
|
| @@ -15,6 +15,8 @@
|
|
|
| #include "base/bind.h"
|
| #include "base/compiler_specific.h"
|
| +#include "base/debug/dump_without_crashing.h"
|
| +#include "base/feature_list.h"
|
| #include "base/files/file_enumerator.h"
|
| #include "base/memory/ptr_util.h"
|
| #include "base/metrics/histogram_macros.h"
|
| @@ -39,8 +41,10 @@
|
| #include "components/history/core/browser/in_memory_history_backend.h"
|
| #include "components/history/core/browser/keyword_search_term.h"
|
| #include "components/history/core/browser/page_usage_data.h"
|
| +#include "components/history/core/browser/typed_url_sync_bridge.h"
|
| #include "components/history/core/browser/typed_url_syncable_service.h"
|
| #include "components/history/core/browser/url_utils.h"
|
| +#include "components/sync/driver/sync_driver_switches.h"
|
| #include "net/base/registry_controlled_domains/registry_controlled_domain.h"
|
| #include "sql/error_delegate_util.h"
|
| #include "third_party/skia/include/core/SkBitmap.h"
|
| @@ -52,9 +56,11 @@
|
| #include "base/ios/scoped_critical_action.h"
|
| #endif
|
|
|
| +using base::debug::DumpWithoutCrashing;
|
| using base::Time;
|
| using base::TimeDelta;
|
| using base::TimeTicks;
|
| +using syncer::ModelTypeChangeProcessor;
|
|
|
| /* The HistoryBackend consists of two components:
|
|
|
| @@ -211,7 +217,17 @@ void HistoryBackend::Init(
|
| if (!force_fail)
|
| InitImpl(history_database_params);
|
| delegate_->DBLoaded();
|
| - typed_url_syncable_service_.reset(new TypedUrlSyncableService(this));
|
| + if (base::FeatureList::IsEnabled(switches::kSyncUSSTypedURL)) {
|
| + typed_url_sync_bridge_ = base::MakeUnique<TypedURLSyncBridge>(
|
| + this,
|
| + base::BindRepeating(
|
| + &ModelTypeChangeProcessor::Create,
|
| + base::BindRepeating(base::IgnoreResult(&DumpWithoutCrashing))));
|
| + } else {
|
| + typed_url_syncable_service_ =
|
| + base::MakeUnique<TypedUrlSyncableService>(this);
|
| + }
|
| +
|
| memory_pressure_listener_.reset(new base::MemoryPressureListener(
|
| base::Bind(&HistoryBackend::OnMemoryPressure, base::Unretained(this))));
|
| }
|
| @@ -1031,6 +1047,10 @@ TypedUrlSyncableService* HistoryBackend::GetTypedUrlSyncableService() const {
|
| return typed_url_syncable_service_.get();
|
| }
|
|
|
| +TypedURLSyncBridge* HistoryBackend::GetTypedURLSyncBridge() const {
|
| + return typed_url_sync_bridge_.get();
|
| +}
|
| +
|
| // Statistics ------------------------------------------------------------------
|
|
|
| HistoryCountResult HistoryBackend::GetHistoryCount(const Time& begin_time,
|
|
|