Revert "Reland "Move WebUI code to run on the UI thread only.""
This reverts commit 52fd322ec1.
Revert "Reland "Remove InstantIOContext since it's not needed anymore.""
This reverts commit 6360b9fdb0.
Revert "Add extra thread hops in WebUI code on ChromeOS to simulate old timing."
This reverts commit dbb65740f2.
TBR=jennyz@chromium.org
Bug: 1082326, 1062873
Change-Id: Ic6e6d1cce833c9927ac80ceada5e682c3d120553
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2203707
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#769199}
This is a reland of 2dd9b658bb. There's no change, the fix was in different code in r768065.
TBR=nasko@chromium.org
Original change's description:
> Move WebUI code to run on the UI thread only.
>
> The optimization to run it on the IO thread was for the non-network service path. We can now simplify this.
>
> InstantIOContext can be removed, I'll leave that for a follow-up as this is already big.
>
> Bug: 908955,1062873
> Change-Id: Ia209d22575f49159227e49accf249dccb4fbaffe
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2190744
> Reviewed-by: Nasko Oskov <nasko@chromium.org>
> Commit-Queue: John Abd-El-Malek <jam@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#767182}
Bug: 908955, 1062873
Change-Id: Iae51e1c9b17a9c9d68bdfebd3a07387f34070339
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2197500
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#768133}
The optimization to run it on the IO thread was for the non-network service path. We can now simplify this.
InstantIOContext can be removed, I'll leave that for a follow-up as this is already big.
Bug: 908955,1062873
Change-Id: Ia209d22575f49159227e49accf249dccb4fbaffe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2190744
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#767182}
In ServiceWorkerURLRequestJob::DidDispatchFetchEvent(), if response.stream_url of ServiceWorkerHostMsg_FetchEventFinished is set, ServiceWorkerURLRequestJob starts reading the body of the response from the stream instead of the blob.
But the stream may not be registered yet.
It is because ServiceWorkerHostMsg_FetchEventFinished is sent from the worker thread but StreamHostMsg_StartBuilding which triggers the stream registration is sent from the main thread of the ServiceWorker process.
So if ServiceWorkerURLRequestJob can't get the stream in DidDispatchFetchEvent(), call StreamRegistry::SetRegisterObserver() to receive the stream registration event.
When ServiceWorkerURLRequestJob successfuly gets the stream, it starts reading the stream.
The codes for reading the stream is almost same as the codes in StreamURLRequestJob.
This change depends on these changes:
https://codereview.chromium.org/760823002https://codereview.chromium.org/759823003
BUG=436424
Review URL: https://codereview.chromium.org/759203002
Cr-Commit-Position: refs/heads/master@{#308059}
This CL changes the persistence of host zoom levels to be on
a per-storage-partition basis, as opposed to (the current)
per-profile basis. This is needed to allow WebView content
(withing apps) to keep their zoom levels independent of those
in the main browser window.
BUG=335317
Review URL: https://codereview.chromium.org/393133002
Cr-Commit-Position: refs/heads/master@{#303841}
This fixes the memory leaks introduced by the original CL.
BUG=171585
Review URL: https://chromiumcodereview.appspot.com/12637006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@187777 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of BrowserContext::GetAppCacheService and ResourceContext::GetAppCacheService as they've been replace by accessors on the StoragePartition and WorkerStoragePartition classes.
* Added a BrowsingContext::GetRequestContextForStoragePartition(id) accessor so the constellation of storage context + main request context can initialized properly. Implemented that method in chrome's Profile class in terms of the existing GetRequestContextForIsolatedApp(id) accessor.
* Hold references to the ChromeAppCacheService and ChromeBlobStorageContext inside of ResourceMessageFilter and provide accessors to them. These are for use by the ResourceDispatcherHost singleton which would otherwise not have enough context to get needed references to partitioned things.
* Widen the ResourceDispatcherHostDelegate::RequestBeginning method to also take an AppCacheService* parameter since that value can no longer be retrieved via the ResourceContext. Chrome's impl of this delegate interface needs that value to construct OfflineResourceThrottles.
* Poke at WorkerProcessHost to create ResourceMessageFilters and others to utlize the correct URLRequestContext so the right set of cookies are used in shared workers.
TBR=mihaip,sail,thakis
BUG=85121
Review URL: https://chromiumcodereview.appspot.com/10916132
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156991 0039d316-1c4b-4281-b951-d872f2087c98
ResourceContext is the IO thread projection of the Profile. Since one profile
may now have multiple StoragePartitions (and thus multiple storage contexts),
we need to remove these accessors. All code in the IO thread has enough
information to find their appropriate storage context objects without needing
to grab it through the ResourceContext. The only users of the ResourceContext
storage context APIs are in worker_host classes.
As a result of this change, a number of APIs that previously just took 1
ResourceContext now need to take 4 additional objects. We could create a
StoragePartitionForIO class that parallels StoragePartition, but since the
API ugliness is purely limited to workers, the abstraction isn't worth its
weight.
BUG=85121
Review URL: https://chromiumcodereview.appspot.com/10885044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156126 0039d316-1c4b-4281-b951-d872f2087c98
I also moved the appcache/blob/cache developer urls to content so that they work in content_shell. This simplifies the Content API since the static blob/filesystem getters in ResourceContext are now not needed.
BUG=98716
Review URL: https://chromiumcodereview.appspot.com/9834039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128493 0039d316-1c4b-4281-b951-d872f2087c98
BUG=None
TEST=chrome_frame_net_tests don't crash at shutdown (Note, they currently crash at startup or simply don't run without a few other patches applied - this fixes one of the crashes!).
Review URL: http://codereview.chromium.org/9443033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123492 0039d316-1c4b-4281-b951-d872f2087c98