| Index: chrome/browser/ui/window_sizer/window_sizer_win.cc
|
| diff --git a/chrome/browser/ui/window_sizer/window_sizer_win.cc b/chrome/browser/ui/window_sizer/window_sizer_win.cc
|
| index 2a9b0b2c227ae14fb68e73aa197e6e33638d7e4c..6f18ac935e454364bec3048d1f7f54ebeac07522 100644
|
| --- a/chrome/browser/ui/window_sizer/window_sizer_win.cc
|
| +++ b/chrome/browser/ui/window_sizer/window_sizer_win.cc
|
| @@ -5,27 +5,31 @@
|
| #include "chrome/browser/ui/window_sizer/window_sizer.h"
|
|
|
| #include "chrome/browser/ui/browser.h"
|
| -#include "chrome/browser/ui/browser_list.h"
|
| +#include "chrome/browser/ui/browser_finder.h"
|
| #include "chrome/browser/ui/browser_window.h"
|
| +#include "chrome/browser/ui/host_desktop.h"
|
|
|
| // How much horizontal and vertical offset there is between newly
|
| // opened windows.
|
| const int WindowSizer::kWindowTilePixels = 10;
|
|
|
| // static
|
| -gfx::Point WindowSizer::GetDefaultPopupOrigin(const gfx::Size& size) {
|
| +gfx::Point WindowSizer::GetDefaultPopupOrigin(const gfx::Size& size,
|
| + chrome::HostDesktopType type) {
|
| RECT area;
|
| SystemParametersInfo(SPI_GETWORKAREA, 0, &area, 0);
|
| gfx::Point corner(area.left, area.top);
|
|
|
| - if (Browser* b = BrowserList::GetLastActive()) {
|
| - RECT browser;
|
| - HWND window = reinterpret_cast<HWND>(b->window()->GetNativeWindow());
|
| - if (GetWindowRect(window, &browser)) {
|
| + if (Browser* browser = browser::FindLastActiveWithHostDesktopType(type)) {
|
| + RECT browser_rect;
|
| + HWND window = reinterpret_cast<HWND>(browser->window()->GetNativeWindow());
|
| + if (GetWindowRect(window, &browser_rect)) {
|
| // Limit to not overflow the work area right and bottom edges.
|
| gfx::Point limit(
|
| - std::min(browser.left + kWindowTilePixels, area.right-size.width()),
|
| - std::min(browser.top + kWindowTilePixels, area.bottom-size.height())
|
| + std::min(browser_rect.left + kWindowTilePixels,
|
| + area.right-size.width()),
|
| + std::min(browser_rect.top + kWindowTilePixels,
|
| + area.bottom-size.height())
|
| );
|
| // Adjust corner to now overflow the work area left and top edges, so
|
| // that if a popup does not fit the title-bar is remains visible.
|
|
|