summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-14 17:13:44 +0000
committergab@chromium.org <gab@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-14 17:13:44 +0000
commitad694eb0fddfdbcb74e31d13e473ce277c680ca8 (patch)
tree64902f246a5d97214b3a77b61444c0bc981e9b7b
parentadf2a23786f8de00a908d5aae74edf71014fc485 (diff)
downloadchromium_src-ad694eb0fddfdbcb74e31d13e473ce277c680ca8.zip
chromium_src-ad694eb0fddfdbcb74e31d13e473ce277c680ca8.tar.gz
chromium_src-ad694eb0fddfdbcb74e31d13e473ce277c680ca8.tar.bz2
Replace static/native-desktop-only BrowserList::const_reverse_iterator by desktop specific reverse iterators as appropriate.
BUG=129187 Originally committed in: https://src.chromium.org/viewvc/chrome?view=rev&revision=182463 Reverted in: https://src.chromium.org/viewvc/chrome?view=rev&revision=182476 (breaks ChromeLauncherControllerPerAppTest.BrowserMenuGeneration in unit_tests on win7_aura) Review URL: https://codereview.chromium.org/12262019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182484 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc11
-rw-r--r--chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app.cc8
-rw-r--r--chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app_unittest.cc9
-rw-r--r--chrome/browser/ui/browser_list.cc10
-rw-r--r--chrome/browser/ui/browser_list.h8
-rw-r--r--chrome/browser/ui/window_sizer/window_sizer.cc16
6 files changed, 31 insertions, 31 deletions
diff --git a/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc b/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
index 80e7623..190a91f 100644
--- a/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
+++ b/chrome/browser/ui/ash/launcher/app_shortcut_launcher_item_controller.cc
@@ -13,9 +13,10 @@
#include "chrome/browser/ui/ash/launcher/launcher_item_controller.h"
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
-#include "chrome/browser/ui/browser_list.h"
+#include "chrome/browser/ui/browser_list_impl.h"
#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/ui/extensions/native_app_window.h"
+#include "chrome/browser/ui/host_desktop.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "content/public/browser/web_contents.h"
@@ -144,9 +145,11 @@ AppShortcutLauncherItemController::GetRunningApplications() {
const Extension* extension =
launcher_controller()->GetExtensionForAppID(app_id());
- for (BrowserList::const_reverse_iterator it =
- BrowserList::begin_last_active();
- it != BrowserList::end_last_active(); ++it) {
+ const chrome::BrowserListImpl* ash_browser_list =
+ chrome::BrowserListImpl::GetInstance(chrome::HOST_DESKTOP_TYPE_ASH);
+ for (chrome::BrowserListImpl::const_reverse_iterator it =
+ ash_browser_list->begin_last_active();
+ it != ash_browser_list->end_last_active(); ++it) {
Browser* browser = *it;
TabStripModel* tab_strip = browser->tab_strip_model();
// We start to enumerate from the active index.
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app.cc b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app.cc
index 89ab329..0970835 100644
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app.cc
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app.cc
@@ -1371,10 +1371,12 @@ ChromeLauncherControllerPerApp::GetBrowserApplicationList() {
items.push_back(new ChromeLauncherAppMenuItem(
l10n_util::GetStringFUTF16(IDS_LAUNCHER_CHROME_BROWSER_NAME,
l10n_util::GetStringUTF16(IDS_PRODUCT_NAME)), NULL));
+ const chrome::BrowserListImpl* ash_browser_list =
+ chrome::BrowserListImpl::GetInstance(chrome::HOST_DESKTOP_TYPE_ASH);
int index = 1;
- for (BrowserList::const_reverse_iterator it =
- BrowserList::begin_last_active();
- it != BrowserList::end_last_active(); ++it, ++index) {
+ for (chrome::BrowserListImpl::const_reverse_iterator it =
+ ash_browser_list->begin_last_active();
+ it != ash_browser_list->end_last_active(); ++it, ++index) {
Browser* browser = *it;
if (browser->is_type_tabbed())
found_tabbed_browser = true;
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app_unittest.cc b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app_unittest.cc
index abc63c1..3a11c5c 100644
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app_unittest.cc
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller_per_app_unittest.cc
@@ -20,9 +20,11 @@
#include "chrome/browser/extensions/test_extension_system.h"
#include "chrome/browser/ui/ash/chrome_launcher_prefs.h"
#include "chrome/browser/ui/ash/launcher/launcher_item_controller.h"
+#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_commands.h"
#include "chrome/browser/ui/browser_finder.h"
#include "chrome/browser/ui/browser_list.h"
+#include "chrome/browser/ui/host_desktop.h"
#include "chrome/browser/ui/tabs/tab_strip_model.h"
#include "chrome/common/extensions/extension.h"
#include "chrome/common/pref_names.h"
@@ -44,7 +46,9 @@ const char* gmail_url = "https://mail.google.com/mail/u";
class ChromeLauncherControllerPerAppTest : public BrowserWithTestWindowTest {
protected:
- ChromeLauncherControllerPerAppTest() : extension_service_(NULL) {
+ ChromeLauncherControllerPerAppTest()
+ : BrowserWithTestWindowTest(chrome::HOST_DESKTOP_TYPE_ASH),
+ extension_service_(NULL) {
}
virtual void SetUp() OVERRIDE {
@@ -338,8 +342,9 @@ TEST_F(ChromeLauncherControllerPerAppTest, BrowserMenuGeneration) {
CheckMenuCreation(&launcher_controller, item_browser, 1, one_menu_item, true);
// Create one more browser/window and check that one more was added.
+ Browser::CreateParams ash_params(profile(), chrome::HOST_DESKTOP_TYPE_ASH);
scoped_ptr<Browser> browser2(
- chrome::CreateBrowserWithTestWindowForProfile(profile()));
+ chrome::CreateBrowserWithTestWindowForParams(&ash_params));
chrome::NewTab(browser2.get());
BrowserList::SetLastActive(browser2.get());
string16 title2 = ASCIIToUTF16("Test2");
diff --git a/chrome/browser/ui/browser_list.cc b/chrome/browser/ui/browser_list.cc
index 8ac380a..391eecc2 100644
--- a/chrome/browser/ui/browser_list.cc
+++ b/chrome/browser/ui/browser_list.cc
@@ -72,16 +72,6 @@ void BrowserList::SetLastActive(Browser* browser) {
}
// static
-BrowserList::const_reverse_iterator BrowserList::begin_last_active() {
- return GetNativeList()->begin_last_active();
-}
-
-// static
-BrowserList::const_reverse_iterator BrowserList::end_last_active() {
- return GetNativeList()->end_last_active();
-}
-
-// static
bool BrowserList::IsOffTheRecordSessionActive() {
return GetNativeList()->IsIncognitoWindowOpen();
}
diff --git a/chrome/browser/ui/browser_list.h b/chrome/browser/ui/browser_list.h
index eb48b2f..0559c62 100644
--- a/chrome/browser/ui/browser_list.h
+++ b/chrome/browser/ui/browser_list.h
@@ -20,7 +20,6 @@ class BrowserListObserver;
class BrowserList {
public:
typedef std::vector<Browser*> BrowserVector;
- typedef BrowserVector::const_reverse_iterator const_reverse_iterator;
// Adds and removes browsers from the list they are associated with. The
// browser object should be valid BEFORE these calls (for the benefit of
@@ -39,13 +38,6 @@ class BrowserList {
// Closes all browsers for |profile| across all desktops.
static void CloseAllBrowsersWithProfile(Profile* profile);
- // Returns iterated access to list of open browsers ordered by when
- // they were last active. The underlying data structure is a vector
- // and we push_back on recent access so a reverse iterator gives the
- // latest accessed browser first.
- static const_reverse_iterator begin_last_active();
- static const_reverse_iterator end_last_active();
-
// Returns true if at least one incognito session is active.
static bool IsOffTheRecordSessionActive();
diff --git a/chrome/browser/ui/window_sizer/window_sizer.cc b/chrome/browser/ui/window_sizer/window_sizer.cc
index da1f2d4..2afc78d 100644
--- a/chrome/browser/ui/window_sizer/window_sizer.cc
+++ b/chrome/browser/ui/window_sizer/window_sizer.cc
@@ -11,9 +11,10 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/ash/ash_init.h"
#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_list.h"
+#include "chrome/browser/ui/browser_list_impl.h"
#include "chrome/browser/ui/browser_window.h"
#include "chrome/browser/ui/browser_window_state.h"
+#include "chrome/browser/ui/host_desktop.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/common/pref_names.h"
#include "ui/gfx/screen.h"
@@ -112,9 +113,16 @@ class DefaultStateProvider : public WindowSizer::StateProvider {
if (browser_ && browser_->window() && !browser_->window()->IsPanel()) {
window = browser_->window();
} else {
- BrowserList::const_reverse_iterator it = BrowserList::begin_last_active();
- BrowserList::const_reverse_iterator end = BrowserList::end_last_active();
- for (; (it != end); ++it) {
+ // This code is only ran on the native desktop (on the ash desktop,
+ // GetBoundsOverrideAsh should take over below before this is reached).
+ // TODO(gab): This code should go in a native desktop specific window
+ // sizer as part of fixing crbug.com/175812.
+ const chrome::BrowserListImpl* native_browser_list =
+ chrome::BrowserListImpl::GetInstance(
+ chrome::HOST_DESKTOP_TYPE_NATIVE);
+ for (chrome::BrowserListImpl::const_reverse_iterator it =
+ native_browser_list->begin_last_active();
+ it != native_browser_list->end_last_active(); ++it) {
Browser* last_active = *it;
if (last_active && last_active->is_type_tabbed()) {
window = last_active->window();