From 72c94f309664498277eee70eeccc05b44f0f255a Mon Sep 17 00:00:00 2001 From: "jnd@google.com" Date: Mon, 18 Aug 2008 21:24:29 +0000 Subject: The CL is consist of CLs(1624,1580) for bug:1281734 which are reviewed and LG by brett. I just merge them to single one for passing compilation. The CL is to fix bug http://b/issue?id=1281734. FireFox uses encoding used by the original webpage to decode the source of the webpage, Chrome does not. We need to add a new parameter which carries the override encoding when opening a view-source URL for viewing its source. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@997 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/views/constrained_window_impl.cc | 10 ++++++---- chrome/browser/views/constrained_window_impl.h | 3 ++- chrome/browser/views/html_dialog_view.cc | 6 ++++-- chrome/browser/views/html_dialog_view.h | 3 ++- 4 files changed, 14 insertions(+), 8 deletions(-) (limited to 'chrome/browser/views') diff --git a/chrome/browser/views/constrained_window_impl.cc b/chrome/browser/views/constrained_window_impl.cc index 7524debc..3dfdc20 100644 --- a/chrome/browser/views/constrained_window_impl.cc +++ b/chrome/browser/views/constrained_window_impl.cc @@ -1041,10 +1041,12 @@ void ConstrainedWindowImpl::ActivateContents(TabContents* contents) { ActivateConstrainedWindow(); } -void ConstrainedWindowImpl::OpenURLFromTab(TabContents* source, - const GURL& url, - WindowOpenDisposition disposition, - PageTransition::Type transition) { +void ConstrainedWindowImpl::OpenURLFromTab( + TabContents* source, + const GURL& url, + WindowOpenDisposition disposition, + PageTransition::Type transition, + const std::wstring& override_encoding) { // We ignore source right now. owner_->OpenURL(this, url, disposition, transition); } diff --git a/chrome/browser/views/constrained_window_impl.h b/chrome/browser/views/constrained_window_impl.h index 5a37e10..a91586b 100644 --- a/chrome/browser/views/constrained_window_impl.h +++ b/chrome/browser/views/constrained_window_impl.h @@ -80,7 +80,8 @@ class ConstrainedWindowImpl : public ConstrainedWindow, virtual void OpenURLFromTab(TabContents* source, const GURL& url, WindowOpenDisposition disposition, - PageTransition::Type transition); + PageTransition::Type transition, + const std::wstring& override_encoding); // Overridden from TabContentsDelegate: virtual void NavigationStateChanged(const TabContents* source, diff --git a/chrome/browser/views/html_dialog_view.cc b/chrome/browser/views/html_dialog_view.cc index 890d5a4..07f89c4 100644 --- a/chrome/browser/views/html_dialog_view.cc +++ b/chrome/browser/views/html_dialog_view.cc @@ -110,11 +110,13 @@ void HtmlDialogView::OnDialogClosed(const std::string& json_retval) { void HtmlDialogView::OpenURLFromTab(TabContents* source, const GURL& url, WindowOpenDisposition disposition, - PageTransition::Type transition) { + PageTransition::Type transition, + const std::wstring& override_encoding) { // Force all links to open in a new window, ignoring the incoming // disposition. This is a tabless, modal dialog so we can't just // open it in the current frame. - parent_browser_->OpenURLFromTab(source, url, NEW_WINDOW, transition); + parent_browser_->OpenURLFromTab(source, url, NEW_WINDOW, transition, + override_encoding); } //////////////////////////////////////////////////////////////////////////////// diff --git a/chrome/browser/views/html_dialog_view.h b/chrome/browser/views/html_dialog_view.h index a07e5e3..51e9abb 100644 --- a/chrome/browser/views/html_dialog_view.h +++ b/chrome/browser/views/html_dialog_view.h @@ -82,7 +82,8 @@ class HtmlDialogView virtual void OpenURLFromTab(TabContents* source, const GURL& url, WindowOpenDisposition disposition, - PageTransition::Type transition); + PageTransition::Type transition, + const std::wstring& override_encoding); virtual void NavigationStateChanged(const TabContents* source, unsigned changed_flags); virtual void ReplaceContents(TabContents* source, -- cgit v1.1