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

Side by Side Diff: content/browser/frame_host/navigation_request.cc

Issue 2484633004: Change Lo-Fi bool to bitmask to support multiple Previews types (Closed)
Patch Set: use PreviewsState everywhere Created 4 years 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include "content/browser/frame_host/navigation_request.h" 5 #include "content/browser/frame_host/navigation_request.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "content/browser/appcache/appcache_navigation_handle.h" 9 #include "content/browser/appcache/appcache_navigation_handle.h"
10 #include "content/browser/appcache/chrome_appcache_service.h" 10 #include "content/browser/appcache/chrome_appcache_service.h"
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
142 } // namespace 142 } // namespace
143 143
144 // static 144 // static
145 std::unique_ptr<NavigationRequest> NavigationRequest::CreateBrowserInitiated( 145 std::unique_ptr<NavigationRequest> NavigationRequest::CreateBrowserInitiated(
146 FrameTreeNode* frame_tree_node, 146 FrameTreeNode* frame_tree_node,
147 const GURL& dest_url, 147 const GURL& dest_url,
148 const Referrer& dest_referrer, 148 const Referrer& dest_referrer,
149 const FrameNavigationEntry& frame_entry, 149 const FrameNavigationEntry& frame_entry,
150 const NavigationEntryImpl& entry, 150 const NavigationEntryImpl& entry,
151 FrameMsg_Navigate_Type::Value navigation_type, 151 FrameMsg_Navigate_Type::Value navigation_type,
152 LoFiState lofi_state, 152 PreviewsState previews_state,
153 bool is_same_document_history_load, 153 bool is_same_document_history_load,
154 bool is_history_navigation_in_new_child, 154 bool is_history_navigation_in_new_child,
155 const base::TimeTicks& navigation_start, 155 const base::TimeTicks& navigation_start,
156 NavigationControllerImpl* controller) { 156 NavigationControllerImpl* controller) {
157 // Fill POST data in the request body. 157 // Fill POST data in the request body.
158 scoped_refptr<ResourceRequestBodyImpl> request_body; 158 scoped_refptr<ResourceRequestBodyImpl> request_body;
159 if (frame_entry.method() == "POST") 159 if (frame_entry.method() == "POST")
160 request_body = frame_entry.GetPostData(); 160 request_body = frame_entry.GetPostData();
161 161
162 std::unique_ptr<NavigationRequest> navigation_request(new NavigationRequest( 162 std::unique_ptr<NavigationRequest> navigation_request(new NavigationRequest(
163 frame_tree_node, entry.ConstructCommonNavigationParams( 163 frame_tree_node, entry.ConstructCommonNavigationParams(
164 frame_entry, request_body, dest_url, dest_referrer, 164 frame_entry, request_body, dest_url, dest_referrer,
165 navigation_type, lofi_state, navigation_start), 165 navigation_type, previews_state, navigation_start),
166 BeginNavigationParams(entry.extra_headers(), net::LOAD_NORMAL, 166 BeginNavigationParams(entry.extra_headers(), net::LOAD_NORMAL,
167 false, // skip_service_worker 167 false, // skip_service_worker
168 REQUEST_CONTEXT_TYPE_LOCATION), 168 REQUEST_CONTEXT_TYPE_LOCATION),
169 entry.ConstructRequestNavigationParams( 169 entry.ConstructRequestNavigationParams(
170 frame_entry, is_same_document_history_load, 170 frame_entry, is_same_document_history_load,
171 is_history_navigation_in_new_child, 171 is_history_navigation_in_new_child,
172 entry.GetSubframeUniqueNames(frame_tree_node), 172 entry.GetSubframeUniqueNames(frame_tree_node),
173 frame_tree_node->has_committed_real_load(), 173 frame_tree_node->has_committed_real_load(),
174 controller->GetPendingEntryIndex() == -1, 174 controller->GetPendingEntryIndex() == -1,
175 controller->GetIndexOfEntry(&entry), 175 controller->GetIndexOfEntry(&entry),
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 did_create_service_worker_host 406 did_create_service_worker_host
407 ? navigation_handle_->service_worker_handle() 407 ? navigation_handle_->service_worker_handle()
408 ->service_worker_provider_host_id() 408 ->service_worker_provider_host_id()
409 : kInvalidServiceWorkerProviderId; 409 : kInvalidServiceWorkerProviderId;
410 410
411 request_params_.appcache_host_id = 411 request_params_.appcache_host_id =
412 navigation_handle_->appcache_handle() 412 navigation_handle_->appcache_handle()
413 ? navigation_handle_->appcache_handle()->appcache_host_id() 413 ? navigation_handle_->appcache_handle()->appcache_host_id()
414 : kAppCacheNoHostId; 414 : kAppCacheNoHostId;
415 415
416 // Update the lofi state of the request. 416 // Update the previews state of the request.
417 if (response->head.is_using_lofi) 417 common_params_.previews_state = response->head.previews_state;
418 common_params_.lofi_state = LOFI_ON;
419 else
420 common_params_.lofi_state = LOFI_OFF;
421 418
422 // Select an appropriate renderer to commit the navigation. 419 // Select an appropriate renderer to commit the navigation.
423 RenderFrameHostImpl* render_frame_host = 420 RenderFrameHostImpl* render_frame_host =
424 frame_tree_node_->render_manager()->GetFrameHostForNavigation(*this); 421 frame_tree_node_->render_manager()->GetFrameHostForNavigation(*this);
425 NavigatorImpl::CheckWebUIRendererDoesNotDisplayNormalURL(render_frame_host, 422 NavigatorImpl::CheckWebUIRendererDoesNotDisplayNormalURL(render_frame_host,
426 common_params_.url); 423 common_params_.url);
427 424
428 // For renderer-initiated navigations that are set to commit in a different 425 // For renderer-initiated navigations that are set to commit in a different
429 // renderer, allow the embedder to cancel the transfer. 426 // renderer, allow the embedder to cancel the transfer.
430 if (!browser_initiated_ && 427 if (!browser_initiated_ &&
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
613 TransferNavigationHandleOwnership(render_frame_host); 610 TransferNavigationHandleOwnership(render_frame_host);
614 611
615 render_frame_host->CommitNavigation(response_.get(), std::move(body_), 612 render_frame_host->CommitNavigation(response_.get(), std::move(body_),
616 common_params_, request_params_, 613 common_params_, request_params_,
617 is_view_source_); 614 is_view_source_);
618 615
619 frame_tree_node_->ResetNavigationRequest(true); 616 frame_tree_node_->ResetNavigationRequest(true);
620 } 617 }
621 618
622 } // namespace content 619 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698