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

Side by Side Diff: chrome/browser/views/bookmark_manager_view.cc

Issue 337034: Remove the browser_sync flag. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 1 month 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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/views/bookmark_manager_view.h" 5 #include "chrome/browser/views/bookmark_manager_view.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "app/gfx/canvas.h" 9 #include "app/gfx/canvas.h"
10 #include "app/gfx/color_utils.h" 10 #include "app/gfx/color_utils.h"
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 void BookmarkManager::Show(Profile* profile) { 158 void BookmarkManager::Show(Profile* profile) {
159 BookmarkManagerView::Show(profile); 159 BookmarkManagerView::Show(profile);
160 } 160 }
161 161
162 // ----------------------------------------------------------------------------- 162 // -----------------------------------------------------------------------------
163 163
164 BookmarkManagerView::BookmarkManagerView(Profile* profile) 164 BookmarkManagerView::BookmarkManagerView(Profile* profile)
165 : profile_(profile->GetOriginalProfile()), 165 : profile_(profile->GetOriginalProfile()),
166 table_view_(NULL), 166 table_view_(NULL),
167 tree_view_(NULL), 167 tree_view_(NULL),
168 #if defined(BROWSER_SYNC)
169 sync_status_button_(NULL), 168 sync_status_button_(NULL),
170 sync_service_(NULL), 169 sync_service_(NULL),
171 #endif
172 ALLOW_THIS_IN_INITIALIZER_LIST(search_factory_(this)) { 170 ALLOW_THIS_IN_INITIALIZER_LIST(search_factory_(this)) {
173 search_tf_ = new views::Textfield(); 171 search_tf_ = new views::Textfield();
174 search_tf_->set_default_width_in_chars(30); 172 search_tf_->set_default_width_in_chars(30);
175 173
176 table_view_ = new BookmarkTableView(profile_, NULL); 174 table_view_ = new BookmarkTableView(profile_, NULL);
177 table_view_->SetObserver(this); 175 table_view_->SetObserver(this);
178 table_view_->SetContextMenuController(this); 176 table_view_->SetContextMenuController(this);
179 177
180 tree_view_ = new BookmarkFolderTreeView(profile_, NULL); 178 tree_view_ = new BookmarkFolderTreeView(profile_, NULL);
181 tree_view_->SetController(this); 179 tree_view_->SetController(this);
(...skipping 18 matching lines...) Expand all
200 views::GridLayout* layout = new views::GridLayout(this); 198 views::GridLayout* layout = new views::GridLayout(this);
201 SetLayoutManager(layout); 199 SetLayoutManager(layout);
202 const int top_id = 1; 200 const int top_id = 1;
203 const int split_cs_id = 2; 201 const int split_cs_id = 2;
204 layout->SetInsets(2, 0, 0, 0); // 2px padding above content. 202 layout->SetInsets(2, 0, 0, 0); // 2px padding above content.
205 views::ColumnSet* column_set = layout->AddColumnSet(top_id); 203 views::ColumnSet* column_set = layout->AddColumnSet(top_id);
206 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, 204 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER,
207 0, views::GridLayout::USE_PREF, 0, 0); 205 0, views::GridLayout::USE_PREF, 0, 0);
208 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, 206 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER,
209 0, views::GridLayout::USE_PREF, 0, 0); 207 0, views::GridLayout::USE_PREF, 0, 0);
210 #if defined(BROWSER_SYNC)
211 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, 208 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER,
212 0, views::GridLayout::USE_PREF, 0, 0); 209 0, views::GridLayout::USE_PREF, 0, 0);
213 #endif
214 column_set->AddPaddingColumn(1, kUnrelatedControlHorizontalSpacing); 210 column_set->AddPaddingColumn(1, kUnrelatedControlHorizontalSpacing);
215 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER, 211 column_set->AddColumn(views::GridLayout::LEADING, views::GridLayout::CENTER,
216 0, views::GridLayout::USE_PREF, 0, 0); 212 0, views::GridLayout::USE_PREF, 0, 0);
217 column_set->AddPaddingColumn(0, kRelatedControlHorizontalSpacing); 213 column_set->AddPaddingColumn(0, kRelatedControlHorizontalSpacing);
218 column_set->AddColumn(views::GridLayout::TRAILING, views::GridLayout::CENTER, 214 column_set->AddColumn(views::GridLayout::TRAILING, views::GridLayout::CENTER,
219 0, views::GridLayout::USE_PREF, 0, 0); 215 0, views::GridLayout::USE_PREF, 0, 0);
220 column_set->AddPaddingColumn(0, 3); // 3px padding at end of row. 216 column_set->AddPaddingColumn(0, 3); // 3px padding at end of row.
221 217
222 column_set = layout->AddColumnSet(split_cs_id); 218 column_set = layout->AddColumnSet(split_cs_id);
223 column_set->AddColumn(views::GridLayout::FILL, views::GridLayout::FILL, 1, 219 column_set->AddColumn(views::GridLayout::FILL, views::GridLayout::FILL, 1,
224 views::GridLayout::USE_PREF, 0, 0); 220 views::GridLayout::USE_PREF, 0, 0);
225 221
226 layout->StartRow(0, top_id); 222 layout->StartRow(0, top_id);
227 layout->AddView(organize_menu_button); 223 layout->AddView(organize_menu_button);
228 layout->AddView(tools_menu_button); 224 layout->AddView(tools_menu_button);
229 #if defined(BROWSER_SYNC)
230 sync_status_button_ = new views::TextButton(this, std::wstring()); 225 sync_status_button_ = new views::TextButton(this, std::wstring());
231 layout->AddView(sync_status_button_); 226 layout->AddView(sync_status_button_);
232 #endif
233 layout->AddView(new views::Label( 227 layout->AddView(new views::Label(
234 l10n_util::GetString(IDS_BOOKMARK_MANAGER_SEARCH_TITLE))); 228 l10n_util::GetString(IDS_BOOKMARK_MANAGER_SEARCH_TITLE)));
235 layout->AddView(search_tf_); 229 layout->AddView(search_tf_);
236 230
237 layout->AddPaddingRow(0, 3); // 3px padding between rows. 231 layout->AddPaddingRow(0, 3); // 3px padding between rows.
238 232
239 layout->StartRow(1, split_cs_id); 233 layout->StartRow(1, split_cs_id);
240 layout->AddView(split_view_); 234 layout->AddView(split_view_);
241 235
242 // Press Ctrl-W to close bookmark manager window. 236 // Press Ctrl-W to close bookmark manager window.
243 AddAccelerator(views::Accelerator(base::VKEY_W, false, true, false)); 237 AddAccelerator(views::Accelerator(base::VKEY_W, false, true, false));
244 238
245 BookmarkModel* bookmark_model = profile_->GetBookmarkModel(); 239 BookmarkModel* bookmark_model = profile_->GetBookmarkModel();
246 if (!bookmark_model->IsLoaded()) 240 if (!bookmark_model->IsLoaded())
247 bookmark_model->AddObserver(this); 241 bookmark_model->AddObserver(this);
248 242
249 #if defined(BROWSER_SYNC)
250 if (profile->GetProfileSyncService()) { 243 if (profile->GetProfileSyncService()) {
251 sync_service_ = profile_->GetProfileSyncService(); 244 sync_service_ = profile_->GetProfileSyncService();
252 sync_service_->AddObserver(this); 245 sync_service_->AddObserver(this);
253 UpdateSyncStatus(); 246 UpdateSyncStatus();
254 } 247 }
255 #endif
256 } 248 }
257 249
258 BookmarkManagerView::~BookmarkManagerView() { 250 BookmarkManagerView::~BookmarkManagerView() {
259 if (select_file_dialog_.get()) 251 if (select_file_dialog_.get())
260 select_file_dialog_->ListenerDestroyed(); 252 select_file_dialog_->ListenerDestroyed();
261 253
262 if (!GetBookmarkModel()->IsLoaded()) { 254 if (!GetBookmarkModel()->IsLoaded()) {
263 GetBookmarkModel()->RemoveObserver(this); 255 GetBookmarkModel()->RemoveObserver(this);
264 } else { 256 } else {
265 // The models are deleted before the views. Make sure we set the models of 257 // The models are deleted before the views. Make sure we set the models of
266 // the views to NULL so that they aren't left holding a reference to a 258 // the views to NULL so that they aren't left holding a reference to a
267 // deleted model. 259 // deleted model.
268 table_view_->SetModel(NULL); 260 table_view_->SetModel(NULL);
269 tree_view_->SetModel(NULL); 261 tree_view_->SetModel(NULL);
270 } 262 }
271 manager = NULL; 263 manager = NULL;
272 open_window = NULL; 264 open_window = NULL;
273 265
274 #if defined(BROWSER_SYNC)
275 if (sync_service_) 266 if (sync_service_)
276 sync_service_->RemoveObserver(this); 267 sync_service_->RemoveObserver(this);
277 #endif
278 } 268 }
279 269
280 // static 270 // static
281 void BookmarkManagerView::Show(Profile* profile) { 271 void BookmarkManagerView::Show(Profile* profile) {
282 if (!profile->GetBookmarkModel()) 272 if (!profile->GetBookmarkModel())
283 return; 273 return;
284 274
285 if (open_window != NULL) { 275 if (open_window != NULL) {
286 open_window->Activate(); 276 open_window->Activate();
287 return; 277 return;
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 366
377 std::wstring BookmarkManagerView::GetWindowName() const { 367 std::wstring BookmarkManagerView::GetWindowName() const {
378 return prefs::kBookmarkManagerPlacement; 368 return prefs::kBookmarkManagerPlacement;
379 } 369 }
380 370
381 void BookmarkManagerView::WindowClosing() { 371 void BookmarkManagerView::WindowClosing() {
382 g_browser_process->local_state()->SetInteger( 372 g_browser_process->local_state()->SetInteger(
383 prefs::kBookmarkManagerSplitLocation, split_view_->divider_offset()); 373 prefs::kBookmarkManagerSplitLocation, split_view_->divider_offset());
384 } 374 }
385 375
386 #if defined(BROWSER_SYNC)
387 void BookmarkManagerView::OnStateChanged() { 376 void BookmarkManagerView::OnStateChanged() {
388 UpdateSyncStatus(); 377 UpdateSyncStatus();
389 } 378 }
390 #endif
391 379
392 bool BookmarkManagerView::AcceleratorPressed( 380 bool BookmarkManagerView::AcceleratorPressed(
393 const views::Accelerator& accelerator) { 381 const views::Accelerator& accelerator) {
394 // Ctrl-W to close bookmark manager. 382 // Ctrl-W to close bookmark manager.
395 DCHECK(accelerator.GetKeyCode() == 'W' && accelerator.IsCtrlDown()); 383 DCHECK(accelerator.GetKeyCode() == 'W' && accelerator.IsCtrlDown());
396 window()->Close(); 384 window()->Close();
397 return true; 385 return true;
398 } 386 }
399 387
400 void BookmarkManagerView::OnDoubleClick() { 388 void BookmarkManagerView::OnDoubleClick() {
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
514 GetBookmarkModel()->Remove(parent, parent->IndexOfChild(node)); 502 GetBookmarkModel()->Remove(parent, parent->IndexOfChild(node));
515 break; 503 break;
516 } 504 }
517 505
518 default: 506 default:
519 OnCutCopyPaste(KeyCodeToCutCopyPaste(keycode), false); 507 OnCutCopyPaste(KeyCodeToCutCopyPaste(keycode), false);
520 break; 508 break;
521 } 509 }
522 } 510 }
523 511
524 #if defined(BROWSER_SYNC)
525 void BookmarkManagerView::ButtonPressed(views::Button* sender, 512 void BookmarkManagerView::ButtonPressed(views::Button* sender,
526 const views::Event& event) { 513 const views::Event& event) {
527 if (sender == sync_status_button_) { 514 if (sender == sync_status_button_) {
528 UserMetrics::RecordAction(L"BookmarkManager_Sync", profile_); 515 UserMetrics::RecordAction(L"BookmarkManager_Sync", profile_);
529 OpenSyncMyBookmarksDialog(); 516 OpenSyncMyBookmarksDialog();
530 } 517 }
531 } 518 }
532 #endif
533 519
534 void BookmarkManagerView::Loaded(BookmarkModel* model) { 520 void BookmarkManagerView::Loaded(BookmarkModel* model) {
535 model->RemoveObserver(this); 521 model->RemoveObserver(this);
536 LoadedImpl(); 522 LoadedImpl();
537 } 523 }
538 524
539 void BookmarkManagerView::ContentsChanged(views::Textfield* sender, 525 void BookmarkManagerView::ContentsChanged(views::Textfield* sender,
540 const std::wstring& new_contents) { 526 const std::wstring& new_contents) {
541 search_factory_.RevokeAll(); 527 search_factory_.RevokeAll();
542 MessageLoop::current()->PostDelayedTask(FROM_HERE, 528 MessageLoop::current()->PostDelayedTask(FROM_HERE,
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
825 file_type_info.extensions[0].push_back(FILE_PATH_LITERAL("html")); 811 file_type_info.extensions[0].push_back(FILE_PATH_LITERAL("html"));
826 file_type_info.include_all_files = true; 812 file_type_info.include_all_files = true;
827 select_file_dialog_ = SelectFileDialog::Create(this); 813 select_file_dialog_ = SelectFileDialog::Create(this);
828 select_file_dialog_->SelectFile( 814 select_file_dialog_->SelectFile(
829 SelectFileDialog::SELECT_SAVEAS_FILE, std::wstring(), 815 SelectFileDialog::SELECT_SAVEAS_FILE, std::wstring(),
830 FilePath(FILE_PATH_LITERAL("bookmarks.html")), &file_type_info, 0, 816 FilePath(FILE_PATH_LITERAL("bookmarks.html")), &file_type_info, 0,
831 L"html", GetWidget()->GetNativeView(), 817 L"html", GetWidget()->GetNativeView(),
832 reinterpret_cast<void*>(IDS_BOOKMARK_MANAGER_EXPORT_MENU)); 818 reinterpret_cast<void*>(IDS_BOOKMARK_MANAGER_EXPORT_MENU));
833 } 819 }
834 820
835 #if defined(BROWSER_SYNC)
836 void BookmarkManagerView::UpdateSyncStatus() { 821 void BookmarkManagerView::UpdateSyncStatus() {
837 DCHECK(sync_service_); 822 DCHECK(sync_service_);
838 std::wstring status_label; 823 std::wstring status_label;
839 std::wstring link_label; 824 std::wstring link_label;
840 bool synced = SyncStatusUIHelper::GetLabels(sync_service_, 825 bool synced = SyncStatusUIHelper::GetLabels(sync_service_,
841 &status_label, &link_label) == SyncStatusUIHelper::SYNCED; 826 &status_label, &link_label) == SyncStatusUIHelper::SYNCED;
842 827
843 if (sync_service_->HasSyncSetupCompleted()) { 828 if (sync_service_->HasSyncSetupCompleted()) {
844 std::wstring username = UTF16ToWide( 829 std::wstring username = UTF16ToWide(
845 sync_service_->GetAuthenticatedUsername()); 830 sync_service_->GetAuthenticatedUsername());
846 status_label = l10n_util::GetStringF(IDS_SYNC_NTP_SYNCED_TO, username); 831 status_label = l10n_util::GetStringF(IDS_SYNC_NTP_SYNCED_TO, username);
847 } else if (!sync_service_->SetupInProgress() && !synced) { 832 } else if (!sync_service_->SetupInProgress() && !synced) {
848 status_label = l10n_util::GetString(IDS_SYNC_START_SYNC_BUTTON_LABEL); 833 status_label = l10n_util::GetString(IDS_SYNC_START_SYNC_BUTTON_LABEL);
849 } 834 }
850 sync_status_button_->SetText(status_label); 835 sync_status_button_->SetText(status_label);
851 sync_status_button_->GetParent()->Layout(); 836 sync_status_button_->GetParent()->Layout();
852 } 837 }
853 838
854 void BookmarkManagerView::OpenSyncMyBookmarksDialog() { 839 void BookmarkManagerView::OpenSyncMyBookmarksDialog() {
855 if (!sync_service_) 840 if (!sync_service_)
856 return; 841 return;
857 if (sync_service_->HasSyncSetupCompleted()) { 842 if (sync_service_->HasSyncSetupCompleted()) {
858 ShowOptionsWindow(OPTIONS_PAGE_CONTENT, OPTIONS_GROUP_NONE, profile_); 843 ShowOptionsWindow(OPTIONS_PAGE_CONTENT, OPTIONS_GROUP_NONE, profile_);
859 } else { 844 } else {
860 sync_service_->EnableForUser(); 845 sync_service_->EnableForUser();
861 ProfileSyncService::SyncEvent( 846 ProfileSyncService::SyncEvent(
862 ProfileSyncService::START_FROM_BOOKMARK_MANAGER); 847 ProfileSyncService::START_FROM_BOOKMARK_MANAGER);
863 } 848 }
864 } 849 }
865 #endif // defined(BROWSER_SYNC)
OLDNEW
« no previous file with comments | « chrome/browser/views/bookmark_manager_view.h ('k') | chrome/browser/views/options/content_page_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698