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.
5 // The BookmarkBarToolbarView is responsible for drawing the background of the
6 // BookmarkBar's toolbar in either of its two display modes - permanently
7 // attached (slimline with a stroke at the bottom edge) or New Tab Page style
8 // (padded with a round rect border and the New Tab Page theme behind).
10 #ifndef CHROME_BROWSER_UI_COCOA_BOOKMARKS_BOOKMARK_BAR_TOOLBAR_VIEW_H_
11 #define CHROME_BROWSER_UI_COCOA_BOOKMARKS_BOOKMARK_BAR_TOOLBAR_VIEW_H_
13 #import <Cocoa/Cocoa.h>
15 #import "chrome/browser/ui/cocoa/animatable_view.h"
16 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_state.h"
18 @
class BookmarkBarView
;
22 // An interface to allow mocking of a BookmarkBarController by the
23 // BookmarkBarToolbarView.
24 @protocol BookmarkBarToolbarViewController
<BookmarkBarState
>
25 // Displaying the bookmark toolbar background in bubble (floating) mode requires
26 // the size of the currently selected tab to properly calculate where the
27 // background image is joined.
28 - (int)currentTabContentsHeight
;
30 // Current theme service, passed to the cross platform NtpBackgroundUtil class.
31 - (ThemeService
*)themeService
;
35 @interface BookmarkBarToolbarView
: AnimatableView
{
37 // The controller which tells us how we should be drawing (as normal or as a
39 IBOutlet id
<BookmarkBarToolbarViewController
> controller_
;
43 #endif // CHROME_BROWSER_UI_COCOA_BOOKMARKS_BOOKMARK_BAR_TOOLBAR_VIEW_H_