Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6847)

Unified Diff: chrome/browser/ui/cocoa/certificate_viewer_mac.h

Issue 1779383002: MacViews: Remove constrained window dependencies for certificate viewer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase & address review comments. Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/cocoa/certificate_viewer_mac.h
diff --git a/chrome/browser/ui/cocoa/certificate_viewer_mac.h b/chrome/browser/ui/cocoa/certificate_viewer_mac.h
index 962cc569500ae978a47f0b556e5cf479daedb423..b7e6df19900f37c1a26840dcb190b1d4c2b8f7b1 100644
--- a/chrome/browser/ui/cocoa/certificate_viewer_mac.h
+++ b/chrome/browser/ui/cocoa/certificate_viewer_mac.h
@@ -3,43 +3,55 @@
// found in the LICENSE file.
#ifndef CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
-
#define CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
-#include <memory>
+#import <Cocoa/Cocoa.h>
+#import <SecurityInterface/SFCertificatePanel.h>
-#include "base/mac/scoped_nsobject.h"
-#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_mac.h"
+#import "base/mac/scoped_nsobject.h"
#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_sheet.h"
-class SSLCertificateViewerCocoaBridge;
-@class SFCertificatePanel;
+namespace content {
+class WebContents;
+}
namespace net {
- class X509Certificate;
+class X509Certificate;
}
-@interface SSLCertificateViewerCocoa : NSObject<ConstrainedWindowSheet> {
- @private
+@interface SFCertificatePanel (SystemPrivate)
+// A system-private interface that dismisses a panel whose sheet was started by
+// -beginSheetForWindow:
+// modalDelegate:
+// didEndSelector:
+// contextInfo:
+// certificates:
+// showGroup:
+// as though the user clicked the button identified by returnCode. Verified
+// present in 10.8.
+- (void)_dismissWithCode:(NSInteger)code;
+@end
+
+// Base class for the certificate viewer generated by OSX for Chrome Mac.
+// It grabs the certificates for a given WebContents object and displays the
+// certificate viewer.
+@interface SSLCertificateViewerMac : NSObject<ConstrainedWindowSheet> {
tapted 2016/05/13 06:08:46 I wonder.. is there anything still preventing movi
Patti Lor 2016/05/18 04:48:37 Both the MacViews and Cocoa subclasses rely on met
tapted 2016/05/19 01:53:25 Ah!, so I think we can just rename those methods.
tapted 2016/05/25 06:52:24 Did you see this comment from an older patchset?
// The corresponding list of certificates.
tapted 2016/05/13 06:08:46 @private And actually, the New Way is to move all
Patti Lor 2016/05/18 04:48:37 Done, I've added a @property for closePending and
base::scoped_nsobject<NSArray> certificates_;
- std::unique_ptr<SSLCertificateViewerCocoaBridge> observer_;
base::scoped_nsobject<SFCertificatePanel> panel_;
- std::unique_ptr<ConstrainedWindowMac> constrainedWindow_;
- base::scoped_nsobject<NSWindow> overlayWindow_;
BOOL closePending_;
- // A copy of the sheet's frame used to restore on show.
- NSRect oldSheetFrame_;
// A copy of the sheet's |autoresizesSubviews| flag to restore on show.
BOOL oldResizesSubviews_;
}
+// Initializes |certificates_| with the certificate chain for a given
+// certificate.
- (id)initWithCertificate:(net::X509Certificate*)certificate;
+// Initializes the SFCertificatePanel provided by the OS to show the
+// certificate. Also handles showing revoked certificates.
- (void)displayForWebContents:(content::WebContents*)webContents;
-- (NSWindow*)overlayWindow;
-
@end
-#endif // CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
+#endif // CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
« no previous file with comments | « no previous file | chrome/browser/ui/cocoa/certificate_viewer_mac.mm » ('j') | chrome/browser/ui/cocoa/certificate_viewer_mac.mm » ('J')

Powered by Google App Engine
This is Rietveld 408576698