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_PAGE_INFO_PAGE_INFO_BUBBLE_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_UI_COCOA_PAGE_INFO_PAGE_INFO_BUBBLE_CONTROLLER_H_ |
6 #define CHROME_BROWSER_UI_COCOA_PAGE_INFO_PAGE_INFO_BUBBLE_CONTROLLER_H_ | 6 #define CHROME_BROWSER_UI_COCOA_PAGE_INFO_PAGE_INFO_BUBBLE_CONTROLLER_H_ |
7 | 7 |
8 #import <Cocoa/Cocoa.h> | 8 #import <Cocoa/Cocoa.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 | 11 |
12 #include "base/mac/scoped_nsobject.h" | 12 #include "base/mac/scoped_nsobject.h" |
13 #include "base/macros.h" | 13 #include "base/macros.h" |
14 #import "chrome/browser/ui/cocoa/base_bubble_controller.h" | 14 #import "chrome/browser/ui/cocoa/base_bubble_controller.h" |
15 #include "chrome/browser/ui/page_info/page_info_ui.h" | 15 #include "chrome/browser/ui/page_info/page_info_ui.h" |
16 #include "content/public/browser/web_contents_observer.h" | 16 #include "content/public/browser/web_contents_observer.h" |
17 | 17 |
18 class LocationBarDecoration; | 18 class LocationBarDecoration; |
19 class PageInfoUIBridge; | 19 class PageInfoUIBridge; |
| 20 @class InspectLinkView; |
20 | 21 |
21 namespace content { | 22 namespace content { |
22 class WebContents; | 23 class WebContents; |
23 } | 24 } |
24 | 25 |
25 namespace net { | 26 namespace net { |
26 class X509Certificate; | 27 class X509Certificate; |
27 } | 28 } |
28 | 29 |
29 namespace security_state { | 30 namespace security_state { |
30 struct SecurityInfo; | 31 struct SecurityInfo; |
31 } // namespace security_state | 32 } // namespace security_state |
32 | 33 |
33 // This NSWindowController subclass manages the InfoBubbleWindow and view that | 34 // This NSWindowController subclass manages the InfoBubbleWindow and view that |
34 // are displayed when the user clicks the favicon or security lock icon. | 35 // are displayed when the user clicks the omnibox security indicator icon. |
35 @interface PageInfoBubbleController : BaseBubbleController { | 36 @interface PageInfoBubbleController : BaseBubbleController { |
36 @private | 37 @private |
37 content::WebContents* webContents_; | 38 content::WebContents* webContents_; |
38 | 39 |
39 base::scoped_nsobject<NSView> contentView_; | 40 base::scoped_nsobject<NSView> contentView_; |
40 | 41 |
41 // The main content view for the Permissions tab. | 42 // The main content view for the Permissions tab. |
42 NSView* securitySectionView_; | 43 NSView* securitySectionView_; |
43 | 44 |
44 // Displays the short security summary for the page | 45 // Displays the short security summary for the page |
(...skipping 11 matching lines...) Expand all Loading... |
56 // URL of the page for which the bubble is shown. | 57 // URL of the page for which the bubble is shown. |
57 GURL url_; | 58 GURL url_; |
58 | 59 |
59 // Displays a paragraph to accompany the reset decisions button, explaining | 60 // Displays a paragraph to accompany the reset decisions button, explaining |
60 // that the user has made a decision to trust an invalid security certificate | 61 // that the user has made a decision to trust an invalid security certificate |
61 // for the current site. | 62 // for the current site. |
62 // This field only shows when there is an acrive certificate exception. | 63 // This field only shows when there is an acrive certificate exception. |
63 NSTextField* resetDecisionsField_; | 64 NSTextField* resetDecisionsField_; |
64 | 65 |
65 // The link button for revoking certificate decisions. | 66 // The link button for revoking certificate decisions. |
66 // This link only shows when there is an acrive certificate exception. | 67 // This link only shows when there is an active certificate exception. |
67 NSButton* resetDecisionsButton_; | 68 NSButton* resetDecisionsButton_; |
68 | 69 |
69 // The server certificate from the identity info. This should always be | 70 // The server certificate from the identity info. This should always be |
70 // non-null on a cryptographic connection, and null otherwise. | 71 // non-null on a cryptographic connection, and null otherwise. |
71 scoped_refptr<net::X509Certificate> certificate_; | 72 scoped_refptr<net::X509Certificate> certificate_; |
72 | 73 |
73 // Separator line. | 74 // Separator line. |
74 NSView* separatorAfterSecuritySection_; | 75 NSView* separatorAfterSecuritySection_; |
75 | 76 |
76 // Container for the site settings section. | 77 // Container for the site settings section. |
77 NSView* siteSettingsSectionView_; | 78 NSView* siteSettingsSectionView_; |
78 | 79 |
| 80 // Container for certificate info in the site settings section. |
| 81 InspectLinkView* certificateView_; |
| 82 |
79 // Container for cookies info in the site settings section. | 83 // Container for cookies info in the site settings section. |
80 NSView* cookiesView_; | 84 InspectLinkView* cookiesView_; |
81 | 85 |
82 // Container for permission info in the site settings section. | 86 // Container for permission info in the site settings section. |
83 NSView* permissionsView_; | 87 NSView* permissionsView_; |
84 | 88 |
85 // Whether the permissionView_ shows anything. | 89 // Whether the permissionView_ shows anything. |
86 BOOL permissionsPresent_; | 90 BOOL permissionsPresent_; |
87 | 91 |
88 // The link button for showing site settings. | 92 // The link button for showing site settings. |
89 NSButton* siteSettingsButton_; | 93 NSButton* siteSettingsButton_; |
90 | 94 |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
153 // The WebContents the bubble UI is attached to. | 157 // The WebContents the bubble UI is attached to. |
154 content::WebContents* web_contents_; | 158 content::WebContents* web_contents_; |
155 | 159 |
156 // The Cocoa controller for the bubble UI. | 160 // The Cocoa controller for the bubble UI. |
157 PageInfoBubbleController* bubble_controller_; | 161 PageInfoBubbleController* bubble_controller_; |
158 | 162 |
159 DISALLOW_COPY_AND_ASSIGN(PageInfoUIBridge); | 163 DISALLOW_COPY_AND_ASSIGN(PageInfoUIBridge); |
160 }; | 164 }; |
161 | 165 |
162 #endif // CHROME_BROWSER_UI_COCOA_PAGE_INFO_PAGE_INFO_BUBBLE_CONTROLLER_H_ | 166 #endif // CHROME_BROWSER_UI_COCOA_PAGE_INFO_PAGE_INFO_BUBBLE_CONTROLLER_H_ |
OLD | NEW |