OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_UI_COCOA_PERMISSION_BUBBLE_PERMISSION_BUBBLE_COCOA_H_ | 5 #ifndef CHROME_BROWSER_UI_COCOA_PERMISSION_BUBBLE_PERMISSION_BUBBLE_COCOA_H_ |
6 #define CHROME_BROWSER_UI_COCOA_PERMISSION_BUBBLE_PERMISSION_BUBBLE_COCOA_H_ | 6 #define CHROME_BROWSER_UI_COCOA_PERMISSION_BUBBLE_PERMISSION_BUBBLE_COCOA_H_ |
7 | 7 |
8 #import <Foundation/Foundation.h> | 8 #import <Foundation/Foundation.h> |
9 | 9 |
10 #include "base/gtest_prod_util.h" | 10 #include "base/gtest_prod_util.h" |
11 #include "base/mac/scoped_nsobject.h" | 11 #include "base/mac/scoped_nsobject.h" |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
13 #include "base/memory/weak_ptr.h" | 13 #include "base/memory/weak_ptr.h" |
14 #include "chrome/browser/ui/cocoa/info_bubble_view.h" | 14 #include "chrome/browser/ui/cocoa/info_bubble_view.h" |
15 #include "chrome/browser/ui/permission_bubble/permission_prompt.h" | 15 #include "chrome/browser/ui/permission_bubble/permission_prompt.h" |
16 #include "content/public/browser/web_contents.h" | 16 #include "content/public/browser/web_contents.h" |
17 | 17 |
18 class Browser; | 18 class Browser; |
19 @class PermissionBubbleController; | 19 @class PermissionBubbleController; |
20 | 20 |
21 class PermissionBubbleCocoa : public PermissionPrompt { | 21 class PermissionBubbleCocoa : public PermissionPrompt { |
22 public: | 22 public: |
23 explicit PermissionBubbleCocoa(Browser* browser); | 23 explicit PermissionBubbleCocoa(Browser* browser); |
24 ~PermissionBubbleCocoa() override; | 24 ~PermissionBubbleCocoa() override; |
25 | 25 |
26 // PermissionPrompt: | 26 // PermissionPrompt: |
27 void Show() override; | 27 void Show() override; |
28 void Hide() override; | 28 void Hide() override; |
29 void SetDelegate(Delegate* delegate) override; | 29 void SetDelegate(Delegate* delegate) override; |
30 bool CanAcceptRequestUpdate() override; | 30 bool MaybeCancelRequest() override; |
31 bool HidesAutomatically() override; | 31 bool HidesAutomatically() override; |
32 void UpdateAnchorPosition() override; | 32 void UpdateAnchorPosition() override; |
33 gfx::NativeWindow GetNativeWindow() override; | 33 gfx::NativeWindow GetNativeWindow() override; |
34 | 34 |
35 // Called when |bubbleController_| is closing. | 35 // Called when |bubbleController_| is closing. |
36 void OnBubbleClosing(); | 36 void OnBubbleClosing(); |
37 | 37 |
38 private: | 38 private: |
39 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, | 39 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, |
40 HasLocationBarByDefault); | 40 HasLocationBarByDefault); |
41 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, | 41 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, |
42 BrowserFullscreenHasLocationBar); | 42 BrowserFullscreenHasLocationBar); |
43 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, | 43 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, |
44 TabFullscreenHasLocationBar); | 44 TabFullscreenHasLocationBar); |
45 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, AppHasNoLocationBar); | 45 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleBrowserTest, AppHasNoLocationBar); |
46 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleKioskBrowserTest, | 46 FRIEND_TEST_ALL_PREFIXES(PermissionBubbleKioskBrowserTest, |
47 KioskHasNoLocationBar); | 47 KioskHasNoLocationBar); |
48 | 48 |
49 Browser* browser_; // Weak. | 49 Browser* browser_; // Weak. |
50 Delegate* delegate_; // Weak. | 50 Delegate* delegate_; // Weak. |
51 | 51 |
52 // Cocoa-side UI controller for the bubble. Weak, as it will close itself. | 52 // Cocoa-side UI controller for the bubble. Weak, as it will close itself. |
53 PermissionBubbleController* bubbleController_; | 53 PermissionBubbleController* bubbleController_; |
54 | 54 |
55 DISALLOW_COPY_AND_ASSIGN(PermissionBubbleCocoa); | 55 DISALLOW_COPY_AND_ASSIGN(PermissionBubbleCocoa); |
56 }; | 56 }; |
57 | 57 |
58 #endif // CHROME_BROWSER_UI_COCOA_PERMISSION_BUBBLE_PERMISSION_BUBBLE_COCOA_H_ | 58 #endif // CHROME_BROWSER_UI_COCOA_PERMISSION_BUBBLE_PERMISSION_BUBBLE_COCOA_H_ |
OLD | NEW |