- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / test / base / test_browser_window.h
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
3 // found in the LICENSE file.
4
5 #ifndef CHROME_TEST_BASE_TEST_BROWSER_WINDOW_H_
6 #define CHROME_TEST_BASE_TEST_BROWSER_WINDOW_H_
7
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "build/build_config.h"
11 #include "chrome/browser/download/test_download_shelf.h"
12 #include "chrome/browser/ui/browser.h"
13 #include "chrome/browser/ui/browser_window.h"
14 #include "chrome/browser/ui/omnibox/location_bar.h"
15
16 class LocationBarTesting;
17 class OmniboxView;
18
19 namespace extensions {
20 class Extension;
21 }
22
23 // An implementation of BrowserWindow used for testing. TestBrowserWindow only
24 // contains a valid LocationBar, all other getters return NULL.
25 // See BrowserWithTestWindowTest for an example of using this class.
26 class TestBrowserWindow : public BrowserWindow {
27  public:
28   TestBrowserWindow();
29   virtual ~TestBrowserWindow();
30
31   // BrowserWindow:
32   virtual void Show() OVERRIDE {}
33   virtual void ShowInactive() OVERRIDE {}
34   virtual void Hide() OVERRIDE {}
35   virtual void SetBounds(const gfx::Rect& bounds) OVERRIDE {}
36   virtual void Close() OVERRIDE {}
37   virtual void Activate() OVERRIDE {}
38   virtual void Deactivate() OVERRIDE {}
39   virtual bool IsActive() const OVERRIDE;
40   virtual void FlashFrame(bool flash) OVERRIDE {}
41   virtual bool IsAlwaysOnTop() const OVERRIDE;
42   virtual void SetAlwaysOnTop(bool always_on_top) OVERRIDE {}
43   virtual gfx::NativeWindow GetNativeWindow() OVERRIDE;
44   virtual BrowserWindowTesting* GetBrowserWindowTesting() OVERRIDE;
45   virtual StatusBubble* GetStatusBubble() OVERRIDE;
46   virtual void UpdateTitleBar() OVERRIDE {}
47   virtual void BookmarkBarStateChanged(
48       BookmarkBar::AnimateChangeType change_type) OVERRIDE {}
49   virtual void UpdateDevTools() OVERRIDE {}
50   virtual void UpdateLoadingAnimations(bool should_animate) OVERRIDE {}
51   virtual void SetStarredState(bool is_starred) OVERRIDE {}
52   virtual void OnActiveTabChanged(content::WebContents* old_contents,
53                                   content::WebContents* new_contents,
54                                   int index,
55                                   int reason) OVERRIDE {}
56   virtual void ZoomChangedForActiveTab(bool can_show_bubble) OVERRIDE {}
57   virtual gfx::Rect GetRestoredBounds() const OVERRIDE;
58   virtual ui::WindowShowState GetRestoredState() const OVERRIDE;
59   virtual gfx::Rect GetBounds() const OVERRIDE;
60   virtual bool IsMaximized() const OVERRIDE;
61   virtual bool IsMinimized() const OVERRIDE;
62   virtual void Maximize() OVERRIDE {}
63   virtual void Minimize() OVERRIDE {}
64   virtual void Restore() OVERRIDE {}
65   virtual void EnterFullscreen(
66       const GURL& url, FullscreenExitBubbleType type) OVERRIDE {}
67   virtual void ExitFullscreen() OVERRIDE {}
68   virtual void UpdateFullscreenExitBubbleContent(
69       const GURL& url,
70       FullscreenExitBubbleType bubble_type) OVERRIDE {}
71   virtual bool ShouldHideUIForFullscreen() const OVERRIDE;
72   virtual bool IsFullscreen() const OVERRIDE;
73 #if defined(OS_WIN)
74   virtual void SetMetroSnapMode(bool enable) OVERRIDE {}
75   virtual bool IsInMetroSnapMode() const;
76 #endif
77   virtual bool IsFullscreenBubbleVisible() const OVERRIDE;
78   virtual LocationBar* GetLocationBar() const OVERRIDE;
79   virtual void SetFocusToLocationBar(bool select_all) OVERRIDE {}
80   virtual void UpdateReloadStopState(bool is_loading, bool force) OVERRIDE {}
81   virtual void UpdateToolbar(content::WebContents* contents) OVERRIDE {}
82   virtual void FocusToolbar() OVERRIDE {}
83   virtual void FocusAppMenu() OVERRIDE {}
84   virtual void FocusBookmarksToolbar() OVERRIDE {}
85   virtual void FocusInfobars() OVERRIDE {}
86   virtual void RotatePaneFocus(bool forwards) OVERRIDE {}
87   virtual void ShowAppMenu() OVERRIDE {}
88   virtual bool PreHandleKeyboardEvent(
89       const content::NativeWebKeyboardEvent& event,
90       bool* is_keyboard_shortcut) OVERRIDE;
91   virtual void HandleKeyboardEvent(
92       const content::NativeWebKeyboardEvent& event) OVERRIDE {}
93
94   virtual bool IsBookmarkBarVisible() const OVERRIDE;
95   virtual bool IsBookmarkBarAnimating() const OVERRIDE;
96   virtual bool IsTabStripEditable() const OVERRIDE;
97   virtual bool IsToolbarVisible() const OVERRIDE;
98   virtual gfx::Rect GetRootWindowResizerRect() const OVERRIDE;
99   virtual void ConfirmAddSearchProvider(TemplateURL* template_url,
100                                         Profile* profile) OVERRIDE {}
101   virtual void ShowUpdateChromeDialog() OVERRIDE {}
102   virtual void ShowBookmarkBubble(const GURL& url,
103                                   bool already_bookmarked) OVERRIDE {}
104   virtual void ShowTranslateBubble(
105       content::WebContents* contents,
106       TranslateBubbleModel::ViewState view_state) OVERRIDE {}
107 #if defined(ENABLE_ONE_CLICK_SIGNIN)
108   virtual void ShowOneClickSigninBubble(
109       OneClickSigninBubbleType type,
110       const string16& email,
111       const string16& error_message,
112       const StartSyncCallback& start_sync_callback) OVERRIDE {}
113 #endif
114   virtual bool IsDownloadShelfVisible() const OVERRIDE;
115   virtual DownloadShelf* GetDownloadShelf() OVERRIDE;
116   virtual void ConfirmBrowserCloseWithPendingDownloads(
117       int download_count,
118       Browser::DownloadClosePreventionType dialog_type,
119       bool app_modal,
120       const base::Callback<void(bool)>& callback) OVERRIDE {}
121   virtual void UserChangedTheme() OVERRIDE {}
122   virtual int GetExtraRenderViewHeight() const OVERRIDE;
123   virtual void WebContentsFocused(content::WebContents* contents) OVERRIDE {}
124   virtual void ShowWebsiteSettings(Profile* profile,
125                                    content::WebContents* web_contents,
126                                    const GURL& url,
127                                    const content::SSLStatus& ssl) OVERRIDE {}
128   virtual void Cut() OVERRIDE {}
129   virtual void Copy() OVERRIDE {}
130   virtual void Paste() OVERRIDE {}
131 #if defined(OS_MACOSX)
132   virtual void OpenTabpose() OVERRIDE {}
133   virtual void EnterFullscreenWithChrome() OVERRIDE {}
134   virtual bool IsFullscreenWithChrome() OVERRIDE;
135   virtual bool IsFullscreenWithoutChrome() OVERRIDE;
136 #endif
137
138   virtual WindowOpenDisposition GetDispositionForPopupBounds(
139       const gfx::Rect& bounds) OVERRIDE;
140   virtual FindBar* CreateFindBar() OVERRIDE;
141   virtual web_modal::WebContentsModalDialogHost*
142       GetWebContentsModalDialogHost() OVERRIDE;
143   virtual void ShowAvatarBubble(content::WebContents* web_contents,
144                                 const gfx::Rect& rect) OVERRIDE {}
145   virtual void ShowAvatarBubbleFromAvatarButton() OVERRIDE {}
146   virtual void ShowPasswordGenerationBubble(
147       const gfx::Rect& rect,
148       const autofill::PasswordForm& form,
149       autofill::PasswordGenerator* generator) OVERRIDE {}
150   virtual int GetRenderViewHeightInsetWithDetachedBookmarkBar() OVERRIDE;
151
152  protected:
153   virtual void DestroyBrowser() OVERRIDE {}
154
155  private:
156   class TestLocationBar : public LocationBar {
157    public:
158     TestLocationBar() {}
159     virtual ~TestLocationBar() {}
160
161     // LocationBar:
162     virtual void ShowFirstRunBubble() OVERRIDE {}
163     virtual GURL GetDestinationURL() const OVERRIDE;
164     virtual WindowOpenDisposition GetWindowOpenDisposition() const OVERRIDE;
165     virtual content::PageTransition GetPageTransition() const OVERRIDE;
166     virtual void AcceptInput() OVERRIDE {}
167     virtual void FocusLocation(bool select_all) OVERRIDE {}
168     virtual void FocusSearch() OVERRIDE {}
169     virtual void UpdateContentSettingsIcons() OVERRIDE {}
170     virtual void UpdatePageActions() OVERRIDE {}
171     virtual void InvalidatePageActions() OVERRIDE {}
172     virtual void UpdateOpenPDFInReaderPrompt() OVERRIDE {}
173     virtual void UpdateGeneratedCreditCardView() OVERRIDE {}
174     virtual void SaveStateToContents(content::WebContents* contents) OVERRIDE {}
175     virtual void Revert() OVERRIDE {}
176     virtual const OmniboxView* GetLocationEntry() const OVERRIDE;
177     virtual OmniboxView* GetLocationEntry() OVERRIDE;
178     virtual LocationBarTesting* GetLocationBarForTesting() OVERRIDE;
179
180    private:
181     DISALLOW_COPY_AND_ASSIGN(TestLocationBar);
182   };
183
184   TestDownloadShelf download_shelf_;
185   TestLocationBar location_bar_;
186
187   DISALLOW_COPY_AND_ASSIGN(TestBrowserWindow);
188 };
189
190 namespace chrome {
191
192 // Helper that handle the lifetime of TestBrowserWindow instances.
193 Browser* CreateBrowserWithTestWindowForParams(Browser::CreateParams* params);
194
195 }  // namespace chrome
196
197 #endif  // CHROME_TEST_BASE_TEST_BROWSER_WINDOW_H_