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

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: Fix positioning after resize from top, don't allow interaction with tab WebContents while certifica… Created 4 years, 8 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..6c7033c5a4f50667042269e6b070d3e598859cef 100644
--- a/chrome/browser/ui/cocoa/certificate_viewer_mac.h
+++ b/chrome/browser/ui/cocoa/certificate_viewer_mac.h
@@ -1,45 +1,69 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Copyright (c) 2016 The Chromium Authors. All rights reserved.
tapted 2016/05/04 03:29:23 nit: keep the old copyright
Patti Lor 2016/05/11 01:35:17 Done.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
-
#define CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
+#import <Cocoa/Cocoa.h>
+#import <Security/Security.h>
tapted 2016/05/04 03:29:23 I think Security.h is actually a C header, so it s
Patti Lor 2016/05/11 01:35:17 Done.
+#import <SecurityInterface/SFCertificatePanel.h>
+
#include <memory>
tapted 2016/05/04 03:29:23 nit: this can be removed since unique_ptr is gone
Patti Lor 2016/05/11 01:35:17 Done.
#include "base/mac/scoped_nsobject.h"
tapted 2016/05/04 03:29:23 nit: import
Patti Lor 2016/05/11 01:35:17 Done.
-#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_mac.h"
#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_sheet.h"
-class SSLCertificateViewerCocoaBridge;
-@class SFCertificatePanel;
-
+namespace content {
+class WebContents;
+}
namespace net {
tapted 2016/05/04 03:29:23 nit: blank line before
Patti Lor 2016/05/11 01:35:17 Done.
- 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.
tapted 2016/05/04 03:29:23 this comment style never took off in Chrome for so
Patti Lor 2016/05/11 01:35:17 Done.
+ * It grabs the certificates for a given WebContents object and displays the
+ * certificate viewer.
+ */
+@interface SSLCertificateViewerMac : NSObject<ConstrainedWindowSheet> {
+ @protected
tapted 2016/05/04 03:29:23 These should stay @private. If the derived class n
Patti Lor 2016/05/11 01:35:17 Done.
// The corresponding list of certificates.
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;
+/** Returns the invisible overlay window used to block interaction with the tab,
+ * but not the entire browser.
+ */
- (NSWindow*)overlayWindow;
@end
-#endif // CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_
+#endif // CHROME_BROWSER_MAC_CERTIFICATE_VIEWER_MAC_H_
tapted 2016/05/04 03:29:23 nit: ensure comment matches #ifdef
Patti Lor 2016/05/11 01:35:17 Done.

Powered by Google App Engine
This is Rietveld 408576698