Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 005ade583726e7001e4fd9ab0c3fb817992e2ccb..47b58fa541d0892babd8bcd7d6e5a73befa98aae 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -2309,7 +2309,7 @@ void RenderFrameImpl::OnReload(bool bypass_cache) { |
} |
void RenderFrameImpl::OnReloadLoFiImages() { |
- previews_state_ = PREVIEWS_NO_TRANSFORM; |
+ previews_state_ = PREVIEWS_OFF; |
GetWebFrame()->ReloadLoFiImages(); |
} |
@@ -3685,11 +3685,18 @@ void RenderFrameImpl::DidCommitProvisionalLoad( |
previews_state_ = |
extra_data ? extra_data->previews_state() : PREVIEWS_OFF; |
- // Set lite pages off if a lite page was not loaded for the main frame. |
- if (web_url_response |
- .HttpHeaderField( |
- WebString::FromUTF8(kChromeProxyContentTransformHeader)) |
- .Utf8() != kChromeProxyLitePageDirective) { |
+ // Update previews state for subresources. |
+ // TODO(dougarnett): Add support for alt-transforms directive to |
+ // clear LoFi bit if not directed by server to use LoFi. |
+ std::string cpct(web_url_response |
+ .HttpHeaderField(WebString::FromUTF8( |
+ kChromeProxyContentTransformHeader)) |
+ .Utf8()); |
+ if (cpct == kChromeProxyLitePageDirective) { |
+ // Received lite page so be sure LoFi is turned off for subresources. |
+ previews_state_ &= ~(SERVER_LOFI_ON); |
+ } else { |
+ // Lite page not received so clear its bit for subresources, if set. |
previews_state_ &= ~(SERVER_LITE_PAGE_ON); |
} |