| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "chrome/test/base/test_browser_window.h" |
| |
| #include "chrome/browser/ui/browser_list.h" |
| #include "chrome/browser/ui/browser_list_observer.h" |
| #include "ui/gfx/rect.h" |
| |
| |
| // Helpers -------------------------------------------------------------------- |
| |
| namespace chrome { |
| |
| namespace { |
| |
| // Handles destroying a TestBrowserWindow when the Browser it is attached to is |
| // destroyed. |
| class TestBrowserWindowOwner : public chrome::BrowserListObserver { |
| public: |
| explicit TestBrowserWindowOwner(TestBrowserWindow* window) : window_(window) { |
| BrowserList::AddObserver(this); |
| } |
| virtual ~TestBrowserWindowOwner() { |
| BrowserList::RemoveObserver(this); |
| } |
| |
| private: |
| // Overridden from BrowserListObserver: |
| virtual void OnBrowserRemoved(Browser* browser) OVERRIDE { |
| if (browser->window() == window_.get()) |
| delete this; |
| } |
| |
| scoped_ptr<TestBrowserWindow> window_; |
| |
| DISALLOW_COPY_AND_ASSIGN(TestBrowserWindowOwner); |
| }; |
| |
| } // namespace |
| |
| Browser* CreateBrowserWithTestWindowForParams(Browser::CreateParams* params) { |
| TestBrowserWindow* window = new TestBrowserWindow; |
| new TestBrowserWindowOwner(window); |
| params->window = window; |
| return new Browser(*params); |
| } |
| |
| } // namespace chrome |
| |
| |
| // TestBrowserWindow::TestLocationBar ----------------------------------------- |
| |
| GURL TestBrowserWindow::TestLocationBar::GetDestinationURL() const { |
| return GURL(); |
| } |
| |
| WindowOpenDisposition |
| TestBrowserWindow::TestLocationBar::GetWindowOpenDisposition() const { |
| return CURRENT_TAB; |
| } |
| |
| content::PageTransition |
| TestBrowserWindow::TestLocationBar::GetPageTransition() const { |
| return content::PAGE_TRANSITION_LINK; |
| } |
| |
| const OmniboxView* TestBrowserWindow::TestLocationBar::GetOmniboxView() const { |
| return NULL; |
| } |
| |
| OmniboxView* TestBrowserWindow::TestLocationBar::GetOmniboxView() { |
| return NULL; |
| } |
| |
| LocationBarTesting* |
| TestBrowserWindow::TestLocationBar::GetLocationBarForTesting() { |
| return NULL; |
| } |
| |
| |
| // TestBrowserWindow ---------------------------------------------------------- |
| |
| TestBrowserWindow::TestBrowserWindow() {} |
| |
| TestBrowserWindow::~TestBrowserWindow() {} |
| |
| bool TestBrowserWindow::IsActive() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsAlwaysOnTop() const { |
| return false; |
| } |
| |
| gfx::NativeWindow TestBrowserWindow::GetNativeWindow() { |
| return NULL; |
| } |
| |
| BrowserWindowTesting* TestBrowserWindow::GetBrowserWindowTesting() { |
| return NULL; |
| } |
| |
| StatusBubble* TestBrowserWindow::GetStatusBubble() { |
| return NULL; |
| } |
| |
| gfx::Rect TestBrowserWindow::GetRestoredBounds() const { |
| return gfx::Rect(); |
| } |
| |
| ui::WindowShowState TestBrowserWindow::GetRestoredState() const { |
| return ui::SHOW_STATE_DEFAULT; |
| } |
| |
| gfx::Rect TestBrowserWindow::GetBounds() const { |
| return gfx::Rect(); |
| } |
| |
| bool TestBrowserWindow::IsMaximized() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsMinimized() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::ShouldHideUIForFullscreen() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsFullscreen() const { |
| return false; |
| } |
| |
| #if defined(OS_WIN) |
| bool TestBrowserWindow::IsInMetroSnapMode() const { |
| return false; |
| } |
| #endif |
| |
| bool TestBrowserWindow::IsFullscreenBubbleVisible() const { |
| return false; |
| } |
| |
| LocationBar* TestBrowserWindow::GetLocationBar() const { |
| return const_cast<TestLocationBar*>(&location_bar_); |
| } |
| |
| bool TestBrowserWindow::PreHandleKeyboardEvent( |
| const content::NativeWebKeyboardEvent& event, |
| bool* is_keyboard_shortcut) { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsBookmarkBarVisible() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsBookmarkBarAnimating() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsTabStripEditable() const { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsToolbarVisible() const { |
| return false; |
| } |
| |
| gfx::Rect TestBrowserWindow::GetRootWindowResizerRect() const { |
| return gfx::Rect(); |
| } |
| |
| bool TestBrowserWindow::IsDownloadShelfVisible() const { |
| return false; |
| } |
| |
| DownloadShelf* TestBrowserWindow::GetDownloadShelf() { |
| return &download_shelf_; |
| } |
| |
| int TestBrowserWindow::GetExtraRenderViewHeight() const { |
| return 0; |
| } |
| |
| #if defined(OS_MACOSX) |
| bool TestBrowserWindow::IsFullscreenWithChrome() { |
| return false; |
| } |
| |
| bool TestBrowserWindow::IsFullscreenWithoutChrome() { |
| return false; |
| } |
| #endif |
| |
| WindowOpenDisposition TestBrowserWindow::GetDispositionForPopupBounds( |
| const gfx::Rect& bounds) { |
| return NEW_POPUP; |
| } |
| |
| FindBar* TestBrowserWindow::CreateFindBar() { |
| return NULL; |
| } |
| |
| web_modal::WebContentsModalDialogHost* |
| TestBrowserWindow::GetWebContentsModalDialogHost() { |
| return NULL; |
| } |
| |
| int |
| TestBrowserWindow::GetRenderViewHeightInsetWithDetachedBookmarkBar() { |
| return 0; |
| } |
| |
| void TestBrowserWindow::ExecuteExtensionCommand( |
| const extensions::Extension* extension, |
| const extensions::Command& command) {} |
| |
| void TestBrowserWindow::ShowPageActionPopup( |
| const extensions::Extension* extension) {} |
| |
| void TestBrowserWindow::ShowBrowserActionPopup( |
| const extensions::Extension* extension) {} |