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 3// found in the LICENSE file. 4 5#ifndef CHROME_BROWSER_UI_COCOA_PASSWORDS_MANAGE_PASSWORDS_BUBBLE_CONTROLLER_H_ 6#define CHROME_BROWSER_UI_COCOA_PASSWORDS_MANAGE_PASSWORDS_BUBBLE_CONTROLLER_H_ 7 8#import <Cocoa/Cocoa.h> 9 10#include "base/mac/scoped_nsobject.h" 11#import "chrome/browser/ui/cocoa/base_bubble_controller.h" 12#import "chrome/browser/ui/cocoa/passwords/manage_passwords_bubble_content_view_controller.h" 13#import "chrome/browser/ui/cocoa/passwords/manage_passwords_bubble_never_save_view_controller.h" 14#import "chrome/browser/ui/cocoa/passwords/manage_passwords_bubble_pending_view_controller.h" 15#include "chrome/browser/ui/passwords/manage_passwords_bubble_model.h" 16 17// Controller for the Cocoa manage passwords bubble. Transitions through several 18// views according to user interaction and updates the password management state 19// accordingly. 20@interface ManagePasswordsBubbleController 21 : BaseBubbleController<ManagePasswordsBubbleContentViewDelegate, 22 ManagePasswordsBubbleNeverSaveViewDelegate, 23 ManagePasswordsBubblePendingViewDelegate> { 24 @private 25 ManagePasswordsBubbleModel* model_; 26 base::scoped_nsobject<ManagePasswordsBubbleContentViewController> 27 currentController_; 28} 29- (id)initWithParentWindow:(NSWindow*)parentWindow 30 model:(ManagePasswordsBubbleModel*)model; 31@end 32 33@interface ManagePasswordsBubbleController (Testing) 34@property(readonly) NSViewController* currentController; 35@end 36 37#endif // CHROME_BROWSER_UI_COCOA_PASSWORDS_MANAGE_PASSWORDS_BUBBLE_CONTROLLER_H_ 38