Index: content/renderer/render_frame_impl.h |
diff --git a/content/renderer/render_frame_impl.h b/content/renderer/render_frame_impl.h |
index d46c0cd262528f930cbbc1018088a084c18a8206..af42b7bc86e5d1619ec33a97ba657ead9de8506d 100644 |
--- a/content/renderer/render_frame_impl.h |
+++ b/content/renderer/render_frame_impl.h |
@@ -460,6 +460,22 @@ class CONTENT_EXPORT RenderFrameImpl |
const Referrer& referrer, |
blink::WebNavigationPolicy policy); |
+ // Update current main frame's encoding and send it to browser window. |
+ // Since we want to let users see the right encoding info from menu |
+ // before finishing loading, we call the UpdateEncoding in |
+ // a) function:DidCommitLoadForFrame. When this function is called, |
+ // that means we have got first data. In here we try to get encoding |
+ // of page if it has been specified in http header. |
+ // b) function:DidReceiveTitle. When this function is called, |
+ // that means we have got specified title. Because in most of webpages, |
+ // title tags will follow meta tags. In here we try to get encoding of |
+ // page if it has been specified in meta tag. |
+ // c) function:DidFinishDocumentLoadForFrame. When this function is |
+ // called, that means we have got whole html page. In here we should |
+ // finally get right encoding of page. |
+ void UpdateEncoding(blink::WebFrame* frame, |
+ const std::string& encoding_name); |
+ |
// Dispatches the current state of selection on the webpage to the browser if |
// it has changed. |
// TODO(varunjain): delete this method once we figure out how to keep |