Home | History | Annotate | Download | only in bookmarks
      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 // 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).
      9 
     10 #ifndef CHROME_BROWSER_UI_COCOA_BOOKMARKS_BOOKMARK_BAR_TOOLBAR_VIEW_H_
     11 #define CHROME_BROWSER_UI_COCOA_BOOKMARKS_BOOKMARK_BAR_TOOLBAR_VIEW_H_
     12 
     13 #import <Cocoa/Cocoa.h>
     14 
     15 #import "chrome/browser/ui/cocoa/animatable_view.h"
     16 #import "chrome/browser/ui/cocoa/bookmarks/bookmark_bar_state.h"
     17 
     18 @class BookmarkBarView;
     19 
     20 class ThemeService;
     21 
     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;
     29 
     30 // Current theme service, passed to the cross platform NtpBackgroundUtil class.
     31 - (ThemeService*)themeService;
     32 
     33 @end
     34 
     35 @interface BookmarkBarToolbarView : AnimatableView {
     36  @private
     37    // The controller which tells us how we should be drawing (as normal or as a
     38    // floating bar).
     39    IBOutlet id<BookmarkBarToolbarViewController> controller_;
     40 }
     41 @end
     42 
     43 #endif  // CHROME_BROWSER_UI_COCOA_BOOKMARKS_BOOKMARK_BAR_TOOLBAR_VIEW_H_
     44