Index: chrome_frame/extra_system_apis.h |
=================================================================== |
--- chrome_frame/extra_system_apis.h (revision 0) |
+++ chrome_frame/extra_system_apis.h (revision 0) |
@@ -0,0 +1,37 @@ |
+// Copyright (c) 2009 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+// This header file contains declarations for system APIs and interfaces |
+// that are either undocumented or are documented but not included in any |
+// Platform SDK header files. |
+#ifndef CHROME_FRAME_EXTRA_SYSTEM_APIS_H_ |
+#define CHROME_FRAME_EXTRA_SYSTEM_APIS_H_ |
+ |
+// This is an interface provided by the WebBrowser object. It allows us to |
+// notify the browser of navigation events. MSDN documents this interface |
+// (see http://msdn2.microsoft.com/en-us/library/aa752109(VS.85).aspx) |
+// but this is not included in any Platform SDK header file. |
+class __declspec(uuid("54A8F188-9EBD-4795-AD16-9B4945119636")) |
+IWebBrowserEventsService : public IUnknown { |
+ public: |
+ STDMETHOD(FireBeforeNavigate2Event)(VARIANT_BOOL *cancel) = 0; |
+ STDMETHOD(FireNavigateComplete2Event)(VOID) = 0; |
+ STDMETHOD(FireDownloadBeginEvent)(VOID) = 0; |
+ STDMETHOD(FireDownloadCompleteEvent)(VOID) = 0; |
+ STDMETHOD(FireDocumentCompleteEvent)(VOID) = 0; |
+}; |
+ |
+// This interface is used in conjunction with the IWebBrowserEventsService |
+// interface. The web browser queries us for this interface when we invoke |
+// one of the IWebBrowserEventsService methods. This interface supplies the |
+// WebBrowser with a URL to use for the events. MSDN documents this interface |
+// (see http://msdn2.microsoft.com/en-us/library/aa752103(VS.85).aspx) |
+// but this is not included in any Platform SDK header file. |
+class __declspec(uuid("{87CC5D04-EAFA-4833-9820-8F986530CC00}")) |
+IWebBrowserEventsUrlService : public IUnknown { |
+ public: |
+ STDMETHOD(GetUrlForEvents)(BSTR *url) = 0; |
+}; |
+ |
+#endif // CHROME_FRAME_EXTRA_SYSTEM_APIS_H_ |