Chromium Code Reviews| Index: chrome/browser/bookmarks/bookmark_editor.cc |
| diff --git a/chrome/browser/bookmarks/bookmark_editor.cc b/chrome/browser/bookmarks/bookmark_editor.cc |
| index ad17386994a531e811ce44a1ca8d6247857fae80..84f230929eba847046353642c4a053e94428622d 100644 |
| --- a/chrome/browser/bookmarks/bookmark_editor.cc |
| +++ b/chrome/browser/bookmarks/bookmark_editor.cc |
| @@ -5,7 +5,11 @@ |
| #include "chrome/browser/bookmarks/bookmark_editor.h" |
| #include "chrome/browser/bookmarks/bookmark_input_window_dialog_controller.h" |
| #include "chrome/browser/bookmarks/bookmark_model.h" |
| +#include "chrome/browser/bookmarks/bookmark_utils.h" |
| +#include "chrome/browser/ui/browser.h" |
| +#include "chrome/browser/ui/browser_window.h" |
| #include "chrome/browser/ui/webui/chrome_web_ui.h" |
| +#include "chrome/browser/ui/webui/bookmark_all_tabs_dialog.h" |
| BookmarkEditor::EditDetails::EditDetails(Type node_type) |
| : type(node_type), existing_node(NULL), parent_node(NULL) { |
| @@ -69,3 +73,36 @@ void BookmarkEditor::Show(gfx::NativeWindow parent_window, |
| configuration); |
| #endif |
| } |
| + |
| +void BookmarkEditor::ShowBookmarkAllTabsDialog(Browser* browser) { |
| + Profile* profile = browser->profile(); |
| +#if defined(USE_AURA) |
| + BookmarkAllTabsDialog::Show(profile); |
| +#elif defined(TOOLKIT_VIEWS) || defined(OS_WIN) |
| + if (ChromeWebUI::IsMoreWebUI()) { |
| + BookmarkAllTabsDialog::Show(profile); |
| + } else { |
| + BookmarkModel* model = profile->GetBookmarkModel(); |
|
mazda
2011/11/10 06:03:46
It's nice to make a function to do things in else-
yoshiki
2011/11/10 07:54:38
Done.
|
| + DCHECK(model && model->IsLoaded()); |
| + |
| + BookmarkEditor::EditDetails details = BookmarkEditor::EditDetails |
| + ::AddFolder(model->GetParentForNewNodes(), -1); |
| + bookmark_utils::GetURLsForOpenTabs(browser, &(details.urls)); |
| + DCHECK(!details.urls.empty()); |
| + |
| + BookmarkEditor::Show(browser->window()->GetNativeHandle(), |
| + profile, details, BookmarkEditor::SHOW_TREE); |
| + } |
| +#else |
| + BookmarkModel* model = profile->GetBookmarkModel(); |
| + DCHECK(model && model->IsLoaded()); |
| + |
| + BookmarkEditor::EditDetails details = |
| + BookmarkEditor::EditDetails::AddFolder(model->GetParentForNewNodes(), -1); |
| + bookmark_utils::GetURLsForOpenTabs(browser, &(details.urls)); |
| + DCHECK(!details.urls.empty()); |
| + |
| + BookmarkEditor::Show(browser->window()->GetNativeHandle(), |
| + profile, details, BookmarkEditor::SHOW_TREE); |
| +#endif |
| +} |