Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(409)

Side by Side Diff: chrome_frame/urlmon_moniker.h

Issue 15600006: Cleanup: Remove unneeded gurl.h includes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: remove file Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_FRAME_URLMON_MONIKER_H_ 5 #ifndef CHROME_FRAME_URLMON_MONIKER_H_
6 #define CHROME_FRAME_URLMON_MONIKER_H_ 6 #define CHROME_FRAME_URLMON_MONIKER_H_
7 7
8 #include <atlbase.h> 8 #include <atlbase.h>
9 #include <atlcom.h> 9 #include <atlcom.h>
10 #include <urlmon.h> 10 #include <urlmon.h>
11 #include <string> 11 #include <string>
12 12
13 #include "base/lazy_instance.h" 13 #include "base/lazy_instance.h"
14 #include "base/logging.h" 14 #include "base/logging.h"
15 #include "base/threading/thread_local.h" 15 #include "base/threading/thread_local.h"
16 #include "base/win/scoped_variant.h" 16 #include "base/win/scoped_variant.h"
17 #include "googleurl/src/gurl.h"
18 #include "chrome_frame/utils.h" 17 #include "chrome_frame/utils.h"
19 18
20 // This file contains classes that are used to cache the contents of a top-level 19 // This file contains classes that are used to cache the contents of a top-level
21 // http request (not for sub frames) while that request is parsed for the 20 // http request (not for sub frames) while that request is parsed for the
22 // presence of a meta tag indicating that the page should be rendered in CF. 21 // presence of a meta tag indicating that the page should be rendered in CF.
23 22
24 // Here are a few scenarios we handle and how the classes come to play. 23 // Here are a few scenarios we handle and how the classes come to play.
25 24
26 // 25 //
27 // Scenario 1: Non CF url navigation through address bar (www.msn.com) 26 // Scenario 1: Non CF url navigation through address bar (www.msn.com)
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
164 }; 163 };
165 164
166 // static-only class that manages an IMoniker patch. 165 // static-only class that manages an IMoniker patch.
167 // We need this patch to stay in the loop when top-level HTML content is 166 // We need this patch to stay in the loop when top-level HTML content is
168 // downloaded that might have the CF http-equiv meta tag. 167 // downloaded that might have the CF http-equiv meta tag.
169 // When we detect candidates for those requests, we add our own callback 168 // When we detect candidates for those requests, we add our own callback
170 // object (as explained at the top of this file) and use it to cache the 169 // object (as explained at the top of this file) and use it to cache the
171 // original document contents in order to avoid multiple network trips 170 // original document contents in order to avoid multiple network trips
172 // if we need to switch the renderer over to CF. 171 // if we need to switch the renderer over to CF.
173 class MonikerPatch { 172 class MonikerPatch {
174 MonikerPatch() {} // no instances should be created of this class. 173 MonikerPatch() {} // no instances should be created of this class.
175 public: 174 public:
176 // Patches two IMoniker methods, BindToObject and BindToStorage. 175 // Patches two IMoniker methods, BindToObject and BindToStorage.
177 static bool Initialize(); 176 static bool Initialize();
178 177
179 // Nullifies the IMoniker patches. 178 // Nullifies the IMoniker patches.
180 static void Uninitialize(); 179 static void Uninitialize();
181 180
182 // Typedefs for IMoniker methods. 181 // Typedefs for IMoniker methods.
183 typedef HRESULT (STDMETHODCALLTYPE* IMoniker_BindToObject_Fn)(IMoniker* me, 182 typedef HRESULT (STDMETHODCALLTYPE* IMoniker_BindToObject_Fn)(IMoniker* me,
184 IBindCtx* bind_ctx, IMoniker* to_left, REFIID iid, void** obj); 183 IBindCtx* bind_ctx, IMoniker* to_left, REFIID iid, void** obj);
185 typedef HRESULT (STDMETHODCALLTYPE* IMoniker_BindToStorage_Fn)(IMoniker* me, 184 typedef HRESULT (STDMETHODCALLTYPE* IMoniker_BindToStorage_Fn)(IMoniker* me,
186 IBindCtx* bind_ctx, IMoniker* to_left, REFIID iid, void** obj); 185 IBindCtx* bind_ctx, IMoniker* to_left, REFIID iid, void** obj);
187 186
188 static STDMETHODIMP BindToObject(IMoniker_BindToObject_Fn original, 187 static STDMETHODIMP BindToObject(IMoniker_BindToObject_Fn original,
189 IMoniker* me, IBindCtx* bind_ctx, 188 IMoniker* me, IBindCtx* bind_ctx,
190 IMoniker* to_left, REFIID iid, void** obj); 189 IMoniker* to_left, REFIID iid, void** obj);
191 190
192 static STDMETHODIMP BindToStorage(IMoniker_BindToStorage_Fn original, 191 static STDMETHODIMP BindToStorage(IMoniker_BindToStorage_Fn original,
193 IMoniker* me, IBindCtx* bind_ctx, 192 IMoniker* me, IBindCtx* bind_ctx,
194 IMoniker* to_left, REFIID iid, void** obj); 193 IMoniker* to_left, REFIID iid, void** obj);
195
196 }; 194 };
197 195
198 extern wchar_t* kChromeRequestParam; 196 extern wchar_t* kChromeRequestParam;
199 197
200 #endif // CHROME_FRAME_URLMON_MONIKER_H_ 198 #endif // CHROME_FRAME_URLMON_MONIKER_H_
OLDNEW
« no previous file with comments | « chrome_frame/protocol_sink_wrap.h ('k') | components/autofill/content/browser/wallet/encryption_escrow_client_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698