summaryrefslogtreecommitdiffstats
path: root/chrome_frame/extra_system_apis.h
diff options
context:
space:
mode:
authoramit@chromium.org <amit@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-19 00:53:23 +0000
committeramit@chromium.org <amit@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-19 00:53:23 +0000
commita1800e8c451736dea5663ae461454ab663d05bc4 (patch)
tree87ff9157562b9616139bb6154a06902e5ede5287 /chrome_frame/extra_system_apis.h
parent4f03cbccc4c09db3f053b74393961e8728bceeec (diff)
downloadchromium_src-a1800e8c451736dea5663ae461454ab663d05bc4.zip
chromium_src-a1800e8c451736dea5663ae461454ab663d05bc4.tar.gz
chromium_src-a1800e8c451736dea5663ae461454ab663d05bc4.tar.bz2
Back/Forward support for url fragments
Added support for anchor (url fragments). this involves mainly implementing IPersistHistory. The rest of the stuff is a song and dance to get called in IPersistHistory in the first place and then behave correctly when we do. BUG=23981 TEst=unit tests added and back forward with '#' URLs, sub frames etc. Review URL: http://codereview.chromium.org/371004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32454 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/extra_system_apis.h')
-rw-r--r--chrome_frame/extra_system_apis.h28
1 files changed, 26 insertions, 2 deletions
diff --git a/chrome_frame/extra_system_apis.h b/chrome_frame/extra_system_apis.h
index 0fbe0ea..2d78d59 100644
--- a/chrome_frame/extra_system_apis.h
+++ b/chrome_frame/extra_system_apis.h
@@ -15,7 +15,7 @@
class __declspec(uuid("54A8F188-9EBD-4795-AD16-9B4945119636"))
IWebBrowserEventsService : public IUnknown {
public:
- STDMETHOD(FireBeforeNavigate2Event)(VARIANT_BOOL *cancel) = 0;
+ STDMETHOD(FireBeforeNavigate2Event)(VARIANT_BOOL* cancel) = 0;
STDMETHOD(FireNavigateComplete2Event)(VOID) = 0;
STDMETHOD(FireDownloadBeginEvent)(VOID) = 0;
STDMETHOD(FireDownloadCompleteEvent)(VOID) = 0;
@@ -31,7 +31,31 @@ IWebBrowserEventsService : public IUnknown {
class __declspec(uuid("{87CC5D04-EAFA-4833-9820-8F986530CC00}"))
IWebBrowserEventsUrlService : public IUnknown {
public:
- STDMETHOD(GetUrlForEvents)(BSTR *url) = 0;
+ STDMETHOD(GetUrlForEvents)(BSTR* url) = 0;
+};
+
+// This interface is used to call FireBeforeNavigate with additional
+// information like url. Available on IE7 onwards.
+//
+// MSDN documents this interface see:
+// http://msdn.microsoft.com/en-us/library/aa770053(VS.85).aspx)
+// but this is not included in any Platform SDK header file.
+interface __declspec(uuid("3050f801-98b5-11cf-bb82-00aa00bdce0b"))
+IDocObjectService : public IUnknown {
+ STDMETHOD(FireBeforeNavigate2)(IDispatch* dispatch,
+ LPCTSTR url, DWORD flags, LPCTSTR frame_name, BYTE* post_data,
+ DWORD post_data_len, LPCTSTR headers, BOOL play_nav_sound,
+ BOOL* cancel) = 0;
+ STDMETHOD(FireNavigateComplete2)(IHTMLWindow2* html_window2,
+ DWORD flags) = 0;
+ STDMETHOD(FireDownloadBegin)() = 0;
+ STDMETHOD(FireDownloadComplete)() = 0;
+ STDMETHOD(FireDocumentComplete)(IHTMLWindow2* html_window2, DWORD flags) = 0;
+ STDMETHOD(UpdateDesktopComponent)(IHTMLWindow2* html_window2) = 0;
+ STDMETHOD(GetPendingUrl)(BSTR* pending_url) = 0;
+ STDMETHOD(ActiveElementChanged)(IHTMLElement* html_element) = 0;
+ STDMETHOD(GetUrlSearchComponent)(BSTR* search) = 0;
+ STDMETHOD(IsErrorUrl)(LPCTSTR url, BOOL* is_error) = 0;
};
#endif // CHROME_FRAME_EXTRA_SYSTEM_APIS_H_