page_action_with_badge_view.h revision 5f1c94371a64b3196d4be9466099bb892df9b88e
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_LOCATION_BAR_PAGE_ACTION_WITH_BADGE_VIEW_H_ 6#define CHROME_BROWSER_UI_VIEWS_LOCATION_BAR_PAGE_ACTION_WITH_BADGE_VIEW_H_ 7 8#include "base/compiler_specific.h" 9#include "ui/gfx/size.h" 10#include "ui/views/view.h" 11 12class PageActionImageView; 13 14namespace content { 15class WebContents; 16} 17 18// A container for the PageActionImageView plus its badge. 19class PageActionWithBadgeView : public views::View { 20 public: 21 explicit PageActionWithBadgeView(PageActionImageView* image_view); 22 23 PageActionImageView* image_view() { return image_view_; } 24 25 // views::View: 26 virtual void GetAccessibleState(ui::AXViewState* state) OVERRIDE; 27 virtual gfx::Size GetPreferredSize() const OVERRIDE; 28 29 void UpdateVisibility(content::WebContents* contents); 30 31 private: 32 virtual void Layout() OVERRIDE; 33 34 // The button this view contains. 35 PageActionImageView* image_view_; 36 37 DISALLOW_COPY_AND_ASSIGN(PageActionWithBadgeView); 38}; 39 40#endif // CHROME_BROWSER_UI_VIEWS_LOCATION_BAR_PAGE_ACTION_WITH_BADGE_VIEW_H_ 41