Index: chrome/browser/ui/bookmarks/bookmark_utils.cc |
diff --git a/chrome/browser/ui/bookmarks/bookmark_utils.cc b/chrome/browser/ui/bookmarks/bookmark_utils.cc |
index 16e7c0c9482e558fe53c591742c16d2da9f7f169..466a04ef029256ff54c9a02a871755a23a309ca9 100644 |
--- a/chrome/browser/ui/bookmarks/bookmark_utils.cc |
+++ b/chrome/browser/ui/bookmarks/bookmark_utils.cc |
@@ -12,6 +12,7 @@ |
#include "chrome/browser/bookmarks/bookmark_utils.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/ui/browser.h" |
+#include "chrome/browser/ui/browser_navigator.h" |
#include "chrome/browser/ui/browser_tabstrip.h" |
#include "chrome/browser/ui/browser_window.h" |
#include "chrome/browser/ui/simple_message_box.h" |
@@ -61,8 +62,13 @@ bool ShouldOpenAll(gfx::NativeWindow parent, |
void OpenAllImpl(const BookmarkNode* node, |
WindowOpenDisposition initial_disposition, |
content::PageNavigator** navigator, |
- bool* opened_url) { |
+ bool* opened_url, |
+ content::BrowserContext* browser_context) { |
if (node->is_url()) { |
+ if (initial_disposition == OFF_THE_RECORD && |
sky
2012/12/14 17:41:12
nit: you have two spaces after ==
|
+ !IsURLAllowedInIncognito(node->url(), browser_context)) |
+ return; |
+ |
WindowOpenDisposition disposition; |
if (*opened_url) |
disposition = NEW_BACKGROUND_TAB; |
@@ -84,7 +90,8 @@ void OpenAllImpl(const BookmarkNode* node, |
for (int i = 0; i < node->child_count(); ++i) { |
const BookmarkNode* child_node = node->GetChild(i); |
if (child_node->is_url()) |
- OpenAllImpl(child_node, initial_disposition, navigator, opened_url); |
+ OpenAllImpl(child_node, initial_disposition, navigator, opened_url, |
+ browser_context); |
} |
} |
} |
@@ -130,22 +137,25 @@ void GetURLsForOpenTabs(Browser* browser, |
void OpenAll(gfx::NativeWindow parent, |
content::PageNavigator* navigator, |
const std::vector<const BookmarkNode*>& nodes, |
- WindowOpenDisposition initial_disposition) { |
+ WindowOpenDisposition initial_disposition, |
+ content::BrowserContext* browser_context) { |
if (!ShouldOpenAll(parent, nodes)) |
return; |
bool opened_url = false; |
for (size_t i = 0; i < nodes.size(); ++i) |
- OpenAllImpl(nodes[i], initial_disposition, &navigator, &opened_url); |
+ OpenAllImpl(nodes[i], initial_disposition, &navigator, &opened_url, |
+ browser_context); |
} |
void OpenAll(gfx::NativeWindow parent, |
content::PageNavigator* navigator, |
const BookmarkNode* node, |
- WindowOpenDisposition initial_disposition) { |
+ WindowOpenDisposition initial_disposition, |
+ content::BrowserContext* browser_context) { |
std::vector<const BookmarkNode*> nodes; |
nodes.push_back(node); |
- OpenAll(parent, navigator, nodes, initial_disposition); |
+ OpenAll(parent, navigator, nodes, initial_disposition, browser_context); |
} |
bool ConfirmDeleteBookmarkNode(const BookmarkNode* node, |