browser_view_layout_delegate.h revision 010d83a9304c5a91596085d917d248abff47903a
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_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_DELEGATE_H_ 6#define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_DELEGATE_H_ 7 8class FullscreenExitBubbleViews; 9 10namespace gfx { 11class Rect; 12} 13namespace views { 14class View; 15} 16 17// Delegate class to allow BrowserViewLayout to be decoupled from BrowserView 18// for testing. 19class BrowserViewLayoutDelegate { 20 public: 21 virtual ~BrowserViewLayoutDelegate() {} 22 23 virtual views::View* GetContentsWebView() const = 0; 24 virtual bool IsTabStripVisible() const = 0; 25 virtual gfx::Rect GetBoundsForTabStripInBrowserView() const = 0; 26 virtual int GetTopInsetInBrowserView() const = 0; 27 virtual int GetThemeBackgroundXInset() const = 0; 28 virtual bool IsToolbarVisible() const = 0; 29 virtual bool IsBookmarkBarVisible() const = 0; 30 virtual bool DownloadShelfNeedsLayout() const = 0; 31 virtual FullscreenExitBubbleViews* GetFullscreenExitBubble() const = 0; 32}; 33 34#endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_VIEW_LAYOUT_DELEGATE_H_ 35