Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(33)

Side by Side Diff: chrome/browser/bookmarks/chrome_bookmark_client.cc

Issue 961683002: Move ManagedBookmarksTracker from policy/core/browser to bookmarks/managed (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add back to policy DEPS Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/bookmarks/chrome_bookmark_client.h" 5 #include "chrome/browser/bookmarks/chrome_bookmark_client.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/values.h" 10 #include "base/values.h"
11 #include "chrome/browser/favicon/favicon_service_factory.h" 11 #include "chrome/browser/favicon/favicon_service_factory.h"
12 #include "chrome/browser/policy/profile_policy_connector.h" 12 #include "chrome/browser/policy/profile_policy_connector.h"
13 #include "chrome/browser/policy/profile_policy_connector_factory.h" 13 #include "chrome/browser/policy/profile_policy_connector_factory.h"
14 #include "chrome/browser/profiles/profile.h" 14 #include "chrome/browser/profiles/profile.h"
15 #include "components/bookmarks/browser/bookmark_model.h" 15 #include "components/bookmarks/browser/bookmark_model.h"
16 #include "components/bookmarks/browser/bookmark_node.h" 16 #include "components/bookmarks/browser/bookmark_node.h"
17 #include "components/bookmarks/browser/bookmark_utils.h" 17 #include "components/bookmarks/browser/bookmark_utils.h"
18 #include "components/bookmarks/managed/managed_bookmarks_tracker.h"
18 #include "components/favicon/core/browser/favicon_service.h" 19 #include "components/favicon/core/browser/favicon_service.h"
19 #include "components/history/core/browser/history_service.h" 20 #include "components/history/core/browser/history_service.h"
20 #include "components/history/core/browser/url_database.h" 21 #include "components/history/core/browser/url_database.h"
21 #include "content/public/browser/browser_thread.h" 22 #include "content/public/browser/browser_thread.h"
22 #include "content/public/browser/notification_details.h" 23 #include "content/public/browser/notification_details.h"
23 #include "content/public/browser/notification_source.h" 24 #include "content/public/browser/notification_source.h"
24 #include "content/public/browser/user_metrics.h" 25 #include "content/public/browser/user_metrics.h"
25 #include "grit/components_strings.h" 26 #include "grit/components_strings.h"
26 #include "policy/policy_constants.h" 27 #include "policy/policy_constants.h"
27 #include "ui/base/l10n/l10n_util.h" 28 #include "ui/base/l10n/l10n_util.h"
28 29
29 using bookmarks::BookmarkModel; 30 using bookmarks::BookmarkModel;
30 using bookmarks::BookmarkNode; 31 using bookmarks::BookmarkNode;
31 using bookmarks::BookmarkPermanentNode; 32 using bookmarks::BookmarkPermanentNode;
33 using bookmarks::ManagedBookmarksTracker;
32 34
33 namespace { 35 namespace {
34 36
35 void RunCallbackWithImage( 37 void RunCallbackWithImage(
36 const favicon_base::FaviconImageCallback& callback, 38 const favicon_base::FaviconImageCallback& callback,
37 const favicon_base::FaviconRawBitmapResult& bitmap_result) { 39 const favicon_base::FaviconRawBitmapResult& bitmap_result) {
38 favicon_base::FaviconImageResult result; 40 favicon_base::FaviconImageResult result;
39 if (bitmap_result.is_valid()) { 41 if (bitmap_result.is_valid()) {
40 result.image = gfx::Image::CreateFrom1xPNGBytes( 42 result.image = gfx::Image::CreateFrom1xPNGBytes(
41 bitmap_result.bitmap_data->front(), bitmap_result.bitmap_data->size()); 43 bitmap_result.bitmap_data->front(), bitmap_result.bitmap_data->size());
42 result.icon_url = bitmap_result.icon_url; 44 result.icon_url = bitmap_result.icon_url;
43 callback.Run(result); 45 callback.Run(result);
44 return; 46 return;
45 } 47 }
46 callback.Run(result); 48 callback.Run(result);
47 } 49 }
48 50
49 void LoadInitialContents(BookmarkPermanentNode* node, 51 void LoadInitialContents(BookmarkPermanentNode* node,
50 base::ListValue* initial_bookmarks, 52 base::ListValue* initial_bookmarks,
51 int64* next_node_id) { 53 int64* next_node_id) {
52 // Load the initial contents of the |node| now, and assign it an unused ID. 54 // Load the initial contents of the |node| now, and assign it an unused ID.
53 int64 id = *next_node_id; 55 int64 id = *next_node_id;
54 node->set_id(id); 56 node->set_id(id);
55 *next_node_id = policy::ManagedBookmarksTracker::LoadInitial( 57 *next_node_id = ManagedBookmarksTracker::LoadInitial(
56 node, initial_bookmarks, id + 1); 58 node, initial_bookmarks, id + 1);
57 node->set_visible(!node->empty()); 59 node->set_visible(!node->empty());
58 } 60 }
59 61
60 } // namespace 62 } // namespace
61 63
62 ChromeBookmarkClient::ChromeBookmarkClient(Profile* profile) 64 ChromeBookmarkClient::ChromeBookmarkClient(Profile* profile)
63 : profile_(profile), 65 : profile_(profile),
64 history_service_(NULL), 66 history_service_(NULL),
65 model_(NULL), 67 model_(NULL),
66 managed_node_(NULL), 68 managed_node_(NULL),
67 supervised_node_(NULL) { 69 supervised_node_(NULL) {
68 } 70 }
69 71
70 ChromeBookmarkClient::~ChromeBookmarkClient() { 72 ChromeBookmarkClient::~ChromeBookmarkClient() {
71 } 73 }
72 74
73 void ChromeBookmarkClient::Init(BookmarkModel* model) { 75 void ChromeBookmarkClient::Init(BookmarkModel* model) {
74 DCHECK(model); 76 DCHECK(model);
75 DCHECK(!model_); 77 DCHECK(!model_);
76 model_ = model; 78 model_ = model;
77 model_->AddObserver(this); 79 model_->AddObserver(this);
78 80
79 managed_bookmarks_tracker_.reset(new policy::ManagedBookmarksTracker( 81 managed_bookmarks_tracker_.reset(new ManagedBookmarksTracker(
80 model_, 82 model_,
81 profile_->GetPrefs(), 83 profile_->GetPrefs(),
82 false, 84 false,
83 base::Bind(&ChromeBookmarkClient::GetManagedBookmarksDomain, 85 base::Bind(&ChromeBookmarkClient::GetManagedBookmarksDomain,
84 base::Unretained(this)))); 86 base::Unretained(this))));
85 supervised_bookmarks_tracker_.reset(new policy::ManagedBookmarksTracker( 87 supervised_bookmarks_tracker_.reset(new ManagedBookmarksTracker(
86 model_, 88 model_,
87 profile_->GetPrefs(), 89 profile_->GetPrefs(),
88 true, 90 true,
89 base::Callback<std::string()>())); 91 base::Callback<std::string()>()));
90 } 92 }
91 93
92 void ChromeBookmarkClient::Shutdown() { 94 void ChromeBookmarkClient::Shutdown() {
93 favicon_changed_subscription_.reset(); 95 favicon_changed_subscription_.reset();
94 if (model_) { 96 if (model_) {
95 model_->RemoveObserver(this); 97 model_->RemoveObserver(this);
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 return extra_nodes.Pass(); 279 return extra_nodes.Pass();
278 } 280 }
279 281
280 std::string ChromeBookmarkClient::GetManagedBookmarksDomain() { 282 std::string ChromeBookmarkClient::GetManagedBookmarksDomain() {
281 policy::ProfilePolicyConnector* connector = 283 policy::ProfilePolicyConnector* connector =
282 policy::ProfilePolicyConnectorFactory::GetForBrowserContext(profile_); 284 policy::ProfilePolicyConnectorFactory::GetForBrowserContext(profile_);
283 if (connector->IsPolicyFromCloudPolicy(policy::key::kManagedBookmarks)) 285 if (connector->IsPolicyFromCloudPolicy(policy::key::kManagedBookmarks))
284 return connector->GetManagementDomain(); 286 return connector->GetManagementDomain();
285 return std::string(); 287 return std::string();
286 } 288 }
OLDNEW
« no previous file with comments | « chrome/browser/bookmarks/chrome_bookmark_client.h ('k') | chrome/browser/policy/managed_bookmarks_policy_handler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698