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

Unified Diff: content/browser/loader/cross_site_resource_handler.cc

Issue 387703004: Navigation transitions: Parse out transition-entering-stylesheet link headers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more tests on java side Created 6 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/loader/cross_site_resource_handler.cc
diff --git a/content/browser/loader/cross_site_resource_handler.cc b/content/browser/loader/cross_site_resource_handler.cc
index 29dc77ea6b08b14babbce8b77910e99e17e32ab8..d778f139d69a80dadb89b4336f5c8e7cc2dd0843 100644
--- a/content/browser/loader/cross_site_resource_handler.cc
+++ b/content/browser/loader/cross_site_resource_handler.cc
@@ -87,11 +87,13 @@ void OnCrossSiteResponseHelper(const CrossSiteResponseParams& params) {
void OnDeferredAfterResponseStartedHelper(
const GlobalRequestID& global_request_id,
- int render_frame_id) {
+ int render_frame_id,
+ const TransitionLayerData& transition_layer_data) {
RenderFrameHostImpl* rfh =
RenderFrameHostImpl::FromID(global_request_id.child_id, render_frame_id);
if (rfh)
- rfh->OnDeferredAfterResponseStarted(global_request_id);
+ rfh->OnDeferredAfterResponseStarted(global_request_id,
+ transition_layer_data);
}
bool CheckNavigationPolicyOnUI(GURL url, int process_id, int render_frame_id) {
@@ -232,13 +234,21 @@ bool CrossSiteResourceHandler::OnNavigationTransitionResponseStarted(
bool* defer) {
ResourceRequestInfoImpl* info = GetRequestInfo();
+ TransitionLayerData transition_layer_data;
+ if (response_ && response_->head.headers)
+ TransitionRequestManager::ParseTransitionStylesheetsFromHeaders(
+ response_->head.headers, transition_layer_data, request()->url());
+
GlobalRequestID global_id(info->GetChildID(), info->GetRequestID());
int render_frame_id = info->GetRenderFrameID();
BrowserThread::PostTask(
BrowserThread::UI,
FROM_HERE,
base::Bind(
- &OnDeferredAfterResponseStartedHelper, global_id, render_frame_id));
+ &OnDeferredAfterResponseStartedHelper,
+ global_id,
+ render_frame_id,
+ transition_layer_data));
*defer = true;
OnDidDefer();

Powered by Google App Engine
This is Rietveld 408576698