Index: content/renderer/render_view_impl.cc |
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc |
index 2b6e5b18f1af5c242a4b3a5671f84bfc44edf5d3..e2ec05e7f52663648b2a19afcd1d9b7180ab5495 100644 |
--- a/content/renderer/render_view_impl.cc |
+++ b/content/renderer/render_view_impl.cc |
@@ -511,6 +511,7 @@ RenderViewImpl::RenderViewImpl( |
send_content_state_immediately_(false), |
enabled_bindings_(0), |
send_preferred_size_changes_(false), |
+ is_overriding_user_agent_(false), |
is_loading_(false), |
navigation_gesture_(NavigationGestureUnknown), |
opened_by_user_gesture_(true), |
@@ -1016,6 +1017,9 @@ void RenderViewImpl::OnNavigate(const ViewMsg_Navigate_Params& params) { |
SetSwappedOut(false); |
} |
+ // Track whether we're using the user agent string override. |
+ is_overriding_user_agent_ = params.is_overriding_user_agent; |
+ |
history_list_offset_ = params.current_history_list_offset; |
history_list_length_ = params.current_history_list_length; |
if (history_list_length_ >= 0) |
@@ -1448,6 +1452,9 @@ void RenderViewImpl::UpdateURL(WebFrame* frame) { |
params.post_id = ExtractPostId(item); |
} |
+ // Send the user agent override back. |
+ params.is_overriding_user_agent = is_overriding_user_agent_; |
+ |
// Save some histogram data so we can compute the average memory used per |
// page load of the glyphs. |
UMA_HISTOGRAM_COUNTS_10000("Memory.GlyphPagesPerLoad", |
@@ -3699,6 +3706,14 @@ void RenderViewImpl::willOpenSocketStream( |
SocketStreamHandleData::AddToHandle(handle, routing_id_); |
} |
+WebKit::WebString RenderViewImpl::userAgentOverride(const WebKit::WebURL& url) { |
darin (slow to review)
2012/06/15 04:09:22
nit: please list methods in the .cc file in the sa
gone
2012/06/15 21:22:36
Oddly, willCheckAndDispatchMessageEvent() is in th
|
+ if (!is_overriding_user_agent_ || |
+ renderer_preferences_.user_agent_override.empty()) |
+ return WebKit::WebString(); |
+ |
+ return WebString::fromUTF8(renderer_preferences_.user_agent_override); |
+} |
+ |
// WebKit::WebPageSerializerClient implementation ------------------------------ |
void RenderViewImpl::didSerializeDataForFrame( |