Remove srpcgen-diff test from scons
[chromium-blink-merge.git] / chrome_frame / ready_mode / ready_mode.h
blob0d42ab30315f07d1e0980578690c71f891ad591b
1 // Copyright (c) 2011 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.
5 #ifndef CHROME_FRAME_READY_MODE_READY_MODE_H_
6 #define CHROME_FRAME_READY_MODE_READY_MODE_H_
7 #pragma once
9 #include <atlbase.h>
10 #include <atlcom.h>
12 #include "base/basictypes.h"
14 interface IWebBrowser2;
16 // Integrates Ready Mode functionality with a specified IWebBrowser2 instance.
17 // Displays prompts allowing the user to permanently activate, permanently
18 // disable, or temporarily disable Chrome Frame whenever a Chrome Frame-enabled
19 // site is rendered in the browser.
20 namespace ready_mode {
22 // Defines an interface for disabling Chrome Frame based on user interaction
23 // with Ready Mode.
24 class Delegate {
25 public:
26 virtual ~Delegate() {}
28 // Disables Chrome Frame functionality in the current process. Will be
29 // called after the installer has been invoked to manipulate the system or
30 // user-level state.
31 virtual void DisableChromeFrame() = 0;
32 }; // class Delegate
34 // Enables Ready Mode for the specified IWebBrowser2 instance, if Chrome Frame
35 // is currently in Ready Mode. If Chrome Frame is temporarily or permanently
36 // declined, will invoke chrome_frame->DisableChromeFrame() to synchronize the
37 // process state with the system- / user-level state.
38 void Configure(Delegate* chrome_frame, IWebBrowser2* web_browser);
40 }; // namespace ready_mode
42 #endif // CHROME_FRAME_READY_MODE_READY_MODE_H_