Source/WebKit/chromium/ChangeLog

 12012-09-10 Mark Pilgrim <pilgrim@chromium.org>
 2
 3 [Chromium] Define new setSharedWorkerRepository function in preparation for removing WebKitPlatformSupport::sharedWorkerRepository()
 4 https://bugs.webkit.org/show_bug.cgi?id=95861
 5
 6 Reviewed by NOBODY (OOPS!).
 7
 8 Followup patch to Chromium will call this new function, then we can remove all references to the legacy function on WebKitPlatformSupport.
 9
 10 * public/WebSharedWorkerRepository.h:
 11 (WebKit):
 12 * src/SharedWorkerRepository.cpp:
 13 (WebKit):
 14 (WebKit::setSharedWorkerRepository):
 15 (WebKit::sharedWorkerRepository):
 16 (WebCore::SharedWorkerRepository::isAvailable):
 17 (WebCore::SharedWorkerRepository::connect):
 18 (WebCore::SharedWorkerRepository::documentDetached):
 19 (WebCore::SharedWorkerRepository::hasSharedWorkers):
 20
1212012-09-10 Rick Byers <rbyers@chromium.org>
222
323 [chromium] Don't use WebGestureEvent.boundingBox for touch adjustment
128077

Source/WebKit/chromium/public/WebSharedWorkerRepository.h

@@public:
5454 virtual bool hasSharedWorkers(DocumentID) = 0;
5555};
5656
 57// Initializes shared worker support.
 58WEBKIT_EXPORT void setSharedWorkerRepository(WebSharedWorkerRepository*);
 59
5760} // namespace WebKit
5861
5962#endif // WebSharedWorkerRepository_h
128065

Source/WebKit/chromium/src/SharedWorkerRepository.cpp

5858#include <public/WebString.h>
5959#include <public/WebURL.h>
6060
 61namespace WebKit {
 62
 63WebSharedWorkerRepository* s_sharedWorkerRepository = 0;
 64
 65void setSharedWorkerRepository(WebSharedWorkerRepository* repository)
 66{
 67 s_sharedWorkerRepository = repository;
 68}
 69
 70static WebSharedWorkerRepository* sharedWorkerRepository()
 71{
 72 WebSharedWorkerRepository* repository;
 73
 74 repository = s_sharedWorkerRepository;
 75 if (!repository) {
 76 repository = webKitPlatformSupport()->sharedWorkerRepository();
 77 setSharedWorkerRepository(repository);
 78 }
 79
 80 return repository;
 81}
 82
 83}
 84
6185namespace WebCore {
6286
6387class Document;

@@void SharedWorkerScriptLoader::connected
194218
195219bool SharedWorkerRepository::isAvailable()
196220{
197  // Allow the WebKitPlatformSupport to determine if SharedWorkers are available.
198  return WebKit::webKitPlatformSupport()->sharedWorkerRepository();
 221 // Allow the WebKitPlatformSupport to determine if SharedWorkers
 222 // are available.
 223 return WebKit::sharedWorkerRepository();
199224}
200225
201226static WebSharedWorkerRepository::DocumentID getId(void* document)

@@static WebSharedWorkerRepository::Docume
206231
207232void SharedWorkerRepository::connect(PassRefPtr<SharedWorker> worker, PassOwnPtr<MessagePortChannel> port, const KURL& url, const String& name, ExceptionCode& ec)
208233{
 234 WebKit::WebSharedWorkerRepository* repository = WebKit::sharedWorkerRepository();
 235
209236 // This should not be callable unless there's a SharedWorkerRepository for
210237 // this context (since isAvailable() should have returned null).
211  ASSERT(WebKit::webKitPlatformSupport()->sharedWorkerRepository());
 238 ASSERT(repository);
212239
213240 // No nested workers (for now) - connect() should only be called from document context.
214241 ASSERT(worker->scriptExecutionContext()->isDocument());

@@void SharedWorkerRepository::connect(Pas
223250 return;
224251 }
225252
226  WebKit::webKitPlatformSupport()->sharedWorkerRepository()->addSharedWorker(
227  webWorker.get(), getId(document));
 253 repository->addSharedWorker(webWorker.get(), getId(document));
228254
229255 // The loader object manages its own lifecycle (and the lifecycles of the two worker objects).
230256 // It will free itself once loading is completed.

@@void SharedWorkerRepository::connect(Pas
234260
235261void SharedWorkerRepository::documentDetached(Document* document)
236262{
237  WebSharedWorkerRepository* repo = WebKit::webKitPlatformSupport()->sharedWorkerRepository();
238  if (repo)
239  repo->documentDetached(getId(document));
 263 WebKit::WebSharedWorkerRepository* repository = WebKit::sharedWorkerRepository();
 264
 265 if (repository)
 266 repository->documentDetached(getId(document));
240267
241268 // Stop the creation of any pending SharedWorkers for this context.
242269 // FIXME: Need a way to invoke this for WorkerContexts as well when we support for nested workers.

@@void SharedWorkerRepository::documentDet
245272
246273bool SharedWorkerRepository::hasSharedWorkers(Document* document)
247274{
248  WebSharedWorkerRepository* repo = WebKit::webKitPlatformSupport()->sharedWorkerRepository();
249  return repo && repo->hasSharedWorkers(getId(document));
250 }
251 
 275 WebKit::WebSharedWorkerRepository* repository = WebKit::sharedWorkerRepository();
252276
 277 return repository && repository->hasSharedWorkers(getId(document));
 278}
253279
254280} // namespace WebCore
255281
128065