1c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved. 2c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// found in the LICENSE file. 4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 5c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#ifndef CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_ 6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 7c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#define CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_ 8c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 9eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "base/mac/scoped_nsobject.h" 10c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "base/memory/scoped_ptr.h" 11c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_mac.h" 12c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#import "chrome/browser/ui/cocoa/constrained_window/constrained_window_sheet.h" 13c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)class SSLCertificateViewerCocoaBridge; 15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)@class SFCertificatePanel; 16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 17c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)namespace net { 18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) class X509Certificate; 19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} 20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)@interface SSLCertificateViewerCocoa : NSObject<ConstrainedWindowSheet> { 22c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) @private 23c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) // The corresponding list of certificates. 24eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch base::scoped_nsobject<NSArray> certificates_; 25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) scoped_ptr<SSLCertificateViewerCocoaBridge> observer_; 26eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch base::scoped_nsobject<SFCertificatePanel> panel_; 27c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) scoped_ptr<ConstrainedWindowMac> constrainedWindow_; 28eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch base::scoped_nsobject<NSWindow> overlayWindow_; 29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) BOOL closePending_; 30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) // A copy of the sheet's frame used to restore on show. 31c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) NSRect oldSheetFrame_; 32c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) // A copy of the sheet's |autoresizesSubviews| flag to restore on show. 33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) BOOL oldResizesSubviews_; 34c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} 35c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 36c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)- (id)initWithCertificate:(net::X509Certificate*)certificate; 37c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 38c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)- (void)displayForWebContents:(content::WebContents*)webContents; 39c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 40c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)- (NSWindow*)overlayWindow; 41c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 42c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)@end 43c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 44c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif // CHROME_BROWSER_UI_COCOA_CERTIFICATE_VIEWER_MAC_H_ 45