summaryrefslogtreecommitdiffstats
path: root/chrome_frame/chrome_frame_activex_base.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome_frame/chrome_frame_activex_base.h')
-rw-r--r--chrome_frame/chrome_frame_activex_base.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/chrome_frame/chrome_frame_activex_base.h b/chrome_frame/chrome_frame_activex_base.h
index 4c0879b..def29b8 100644
--- a/chrome_frame/chrome_frame_activex_base.h
+++ b/chrome_frame/chrome_frame_activex_base.h
@@ -140,6 +140,10 @@ class ATL_NO_VTABLE ProxyDIChromeFrameEvents
void Fire_onchannelerror() { // NOLINT
FireMethodWithParams(CF_EVENT_DISPID_ONCHANNELERROR, NULL, 0);
}
+
+ void Fire_onclose() { // NOLINT
+ FireMethodWithParams(CF_EVENT_DISPID_ONCLOSE, NULL, 0);
+ }
};
extern bool g_first_launch_by_process_;
@@ -337,7 +341,6 @@ END_MSG_MAP()
return S_OK;
}
-
// Used to setup the document_url_ member needed for completing navigation.
// Create external tab (possibly in incognito mode).
HRESULT IOleObject_SetClientSite(IOleClientSite* client_site) {
@@ -415,7 +418,6 @@ END_MSG_MAP()
DVLOG(1) << __FUNCTION__ << ": " << profile_path->value();
}
-
void OnLoad(int tab_handle, const GURL& url) {
if (ready_state_ < READYSTATE_COMPLETE) {
ready_state_ = READYSTATE_COMPLETE;
@@ -567,6 +569,10 @@ END_MSG_MAP()
FireOnChanged(DISPID_READYSTATE);
}
+ virtual void OnCloseTab(int tab_handle) {
+ Fire_onclose();
+ }
+
// Overridden to take advantage of readystate prop changes and send those
// to potential listeners.
HRESULT FireOnChanged(DISPID dispid) {