190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// found in the LICENSE file.
490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_DELEGATE_H_
690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_DELEGATE_H_
790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
87dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochclass FullscreenExitBubbleViews;
97dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch
107dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochnamespace gfx {
117dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochclass Rect;
127dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch}
137dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochnamespace views {
147dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdochclass View;
157dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch}
167dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch
1790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Delegate class to allow BrowserViewLayout to be decoupled from BrowserView
1890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// for testing.
1990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)class BrowserViewLayoutDelegate {
2090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) public:
2190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  virtual ~BrowserViewLayoutDelegate() {}
2290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  virtual views::View* GetContentsWebView() const = 0;
2490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  virtual bool IsTabStripVisible() const = 0;
25f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  virtual gfx::Rect GetBoundsForTabStripInBrowserView() const = 0;
26f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  virtual int GetTopInsetInBrowserView() const = 0;
27f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  virtual int GetThemeBackgroundXInset() const = 0;
2890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  virtual bool IsToolbarVisible() const = 0;
2990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  virtual bool IsBookmarkBarVisible() const = 0;
3090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  virtual bool DownloadShelfNeedsLayout() const = 0;
317dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch  virtual FullscreenExitBubbleViews* GetFullscreenExitBubble() const = 0;
3290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)};
3390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
3490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#endif  // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_DELEGATE_H_
35