| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/bookmark_utils.h" | 5 #include "chrome/browser/bookmarks/bookmark_utils.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
| 10 #include "base/file_path.h" | 10 #include "base/file_path.h" |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 150 disposition = initial_disposition; | 150 disposition = initial_disposition; |
| 151 (*navigator)->OpenURL(OpenURLParams(node->url(), content::Referrer(), | 151 (*navigator)->OpenURL(OpenURLParams(node->url(), content::Referrer(), |
| 152 disposition, content::PAGE_TRANSITION_AUTO_BOOKMARK, | 152 disposition, content::PAGE_TRANSITION_AUTO_BOOKMARK, |
| 153 false)); | 153 false)); |
| 154 if (!*opened_url) { | 154 if (!*opened_url) { |
| 155 *opened_url = true; | 155 *opened_url = true; |
| 156 // We opened the first URL which may have opened a new window or clobbered | 156 // We opened the first URL which may have opened a new window or clobbered |
| 157 // the current page, reset the navigator just to be sure. | 157 // the current page, reset the navigator just to be sure. |
| 158 Browser* new_browser = browser::FindLastActiveWithProfile(profile); | 158 Browser* new_browser = browser::FindLastActiveWithProfile(profile); |
| 159 if (new_browser) { | 159 if (new_browser) { |
| 160 WebContents* current_tab = new_browser->GetSelectedWebContents(); | 160 WebContents* current_tab = new_browser->GetActiveWebContents(); |
| 161 if (current_tab) | 161 if (current_tab) |
| 162 *navigator = current_tab; | 162 *navigator = current_tab; |
| 163 } // else, new_browser == NULL, which happens during testing. | 163 } // else, new_browser == NULL, which happens during testing. |
| 164 } | 164 } |
| 165 } else { | 165 } else { |
| 166 // For folders only open direct children. | 166 // For folders only open direct children. |
| 167 for (int i = 0; i < node->child_count(); ++i) { | 167 for (int i = 0; i < node->child_count(); ++i) { |
| 168 const BookmarkNode* child_node = node->GetChild(i); | 168 const BookmarkNode* child_node = node->GetChild(i); |
| 169 if (child_node->is_url()) | 169 if (child_node->is_url()) |
| 170 OpenAllImpl(child_node, initial_disposition, navigator, profile, | 170 OpenAllImpl(child_node, initial_disposition, navigator, profile, |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 382 Profile* profile, | 382 Profile* profile, |
| 383 PageNavigator* navigator, | 383 PageNavigator* navigator, |
| 384 const std::vector<const BookmarkNode*>& nodes, | 384 const std::vector<const BookmarkNode*>& nodes, |
| 385 WindowOpenDisposition initial_disposition) { | 385 WindowOpenDisposition initial_disposition) { |
| 386 if (!ShouldOpenAll(parent, nodes)) | 386 if (!ShouldOpenAll(parent, nodes)) |
| 387 return; | 387 return; |
| 388 | 388 |
| 389 NewBrowserPageNavigator navigator_impl(profile); | 389 NewBrowserPageNavigator navigator_impl(profile); |
| 390 if (!navigator) { | 390 if (!navigator) { |
| 391 Browser* browser = browser::FindTabbedBrowser(profile, false); | 391 Browser* browser = browser::FindTabbedBrowser(profile, false); |
| 392 if (!browser || !browser->GetSelectedWebContents()) { | 392 if (!browser || !browser->GetActiveWebContents()) { |
| 393 navigator = &navigator_impl; | 393 navigator = &navigator_impl; |
| 394 } else { | 394 } else { |
| 395 if (initial_disposition != NEW_WINDOW && | 395 if (initial_disposition != NEW_WINDOW && |
| 396 initial_disposition != OFF_THE_RECORD) { | 396 initial_disposition != OFF_THE_RECORD) { |
| 397 browser->window()->Activate(); | 397 browser->window()->Activate(); |
| 398 } | 398 } |
| 399 navigator = browser->GetSelectedWebContents(); | 399 navigator = browser->GetActiveWebContents(); |
| 400 } | 400 } |
| 401 } | 401 } |
| 402 | 402 |
| 403 bool opened_url = false; | 403 bool opened_url = false; |
| 404 if (initial_disposition == OFF_THE_RECORD) | 404 if (initial_disposition == OFF_THE_RECORD) |
| 405 profile = profile->GetOffTheRecordProfile(); | 405 profile = profile->GetOffTheRecordProfile(); |
| 406 | 406 |
| 407 for (size_t i = 0; i < nodes.size(); ++i) | 407 for (size_t i = 0; i < nodes.size(); ++i) |
| 408 OpenAllImpl(nodes[i], initial_disposition, &navigator, profile, | 408 OpenAllImpl(nodes[i], initial_disposition, &navigator, profile, |
| 409 &opened_url); | 409 &opened_url); |
| (...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 660 GURL* url, | 660 GURL* url, |
| 661 string16* title) { | 661 string16* title) { |
| 662 *url = web_contents->GetURL(); | 662 *url = web_contents->GetURL(); |
| 663 *title = web_contents->GetTitle(); | 663 *title = web_contents->GetTitle(); |
| 664 } | 664 } |
| 665 | 665 |
| 666 void GetURLAndTitleToBookmarkFromCurrentTab(Profile* profile, | 666 void GetURLAndTitleToBookmarkFromCurrentTab(Profile* profile, |
| 667 GURL* url, | 667 GURL* url, |
| 668 string16* title) { | 668 string16* title) { |
| 669 Browser* browser = browser::FindLastActiveWithProfile(profile); | 669 Browser* browser = browser::FindLastActiveWithProfile(profile); |
| 670 WebContents* web_contents = browser ? browser->GetSelectedWebContents() | 670 WebContents* web_contents = browser ? browser->GetActiveWebContents() |
| 671 : NULL; | 671 : NULL; |
| 672 if (web_contents) | 672 if (web_contents) |
| 673 GetURLAndTitleToBookmark(web_contents, url, title); | 673 GetURLAndTitleToBookmark(web_contents, url, title); |
| 674 } | 674 } |
| 675 | 675 |
| 676 void GetURLsForOpenTabs( | 676 void GetURLsForOpenTabs( |
| 677 Browser* browser, | 677 Browser* browser, |
| 678 std::vector<std::pair<GURL, string16> >* urls) { | 678 std::vector<std::pair<GURL, string16> >* urls) { |
| 679 for (int i = 0; i < browser->tab_count(); ++i) { | 679 for (int i = 0; i < browser->tab_count(); ++i) { |
| 680 std::pair<GURL, string16> entry; | 680 std::pair<GURL, string16> entry; |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 775 void RecordBookmarkLaunch(BookmarkLaunchLocation location) { | 775 void RecordBookmarkLaunch(BookmarkLaunchLocation location) { |
| 776 #if defined(OS_WIN) | 776 #if defined(OS_WIN) |
| 777 // TODO(estade): do this on other platforms too. For now it's compiled out | 777 // TODO(estade): do this on other platforms too. For now it's compiled out |
| 778 // so that stats from platforms for which this is incompletely implemented | 778 // so that stats from platforms for which this is incompletely implemented |
| 779 // don't mix in with Windows, where it should be implemented exhaustively. | 779 // don't mix in with Windows, where it should be implemented exhaustively. |
| 780 UMA_HISTOGRAM_ENUMERATION("Bookmarks.LaunchLocation", location, LAUNCH_LIMIT); | 780 UMA_HISTOGRAM_ENUMERATION("Bookmarks.LaunchLocation", location, LAUNCH_LIMIT); |
| 781 #endif | 781 #endif |
| 782 } | 782 } |
| 783 | 783 |
| 784 } // namespace bookmark_utils | 784 } // namespace bookmark_utils |
| OLD | NEW |