1 // Copyright 2014 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_WEBSITE_SETTINGS_PERMISSIONS_BUBBLE_VIEW_H_ 6 #define CHROME_BROWSER_UI_VIEWS_WEBSITE_SETTINGS_PERMISSIONS_BUBBLE_VIEW_H_ 7 8 #include "base/compiler_specific.h" 9 #include "base/macros.h" 10 #include "chrome/browser/ui/website_settings/permission_bubble_view.h" 11 12 namespace views { 13 class View; 14 } 15 16 class PermissionsBubbleDelegateView; 17 18 class PermissionBubbleViewViews : public PermissionBubbleView { 19 public: 20 explicit PermissionBubbleViewViews(views::View* anchor_view); 21 virtual ~PermissionBubbleViewViews(); 22 23 // PermissionBubbleView: 24 virtual void SetDelegate(Delegate* delegate) OVERRIDE; 25 virtual void Show(const std::vector<PermissionBubbleRequest*>& requests, 26 const std::vector<bool>& accept_state, 27 bool customization_mode) OVERRIDE; 28 virtual bool CanAcceptRequestUpdate() OVERRIDE; 29 virtual void Hide() OVERRIDE; 30 virtual bool IsVisible() OVERRIDE; 31 32 void Closing(); 33 void Toggle(int index, bool value); 34 void Accept(); 35 void Deny(); 36 void SetCustomizationMode(); 37 38 private: 39 views::View* anchor_view_; 40 Delegate* delegate_; 41 PermissionsBubbleDelegateView* bubble_delegate_; 42 43 DISALLOW_COPY_AND_ASSIGN(PermissionBubbleViewViews); 44 }; 45 46 #endif // CHROME_BROWSER_UI_VIEWS_WEBSITE_SETTINGS_PERMISSIONS_BUBBLE_VIEW_H_ 47