summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host
diff options
context:
space:
mode:
authorbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-03-05 17:59:23 +0000
committerbrettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-03-05 17:59:23 +0000
commite5c75e4861b7b84ffd18149ecc11934aaa159f21 (patch)
treee8db0d59bf55d5b01e4465e1881a8c3cdc71559b /chrome/browser/renderer_host
parent8a9adb85620f16df0c223992c8a51bc3d3537158 (diff)
downloadchromium_src-e5c75e4861b7b84ffd18149ecc11934aaa159f21.zip
chromium_src-e5c75e4861b7b84ffd18149ecc11934aaa159f21.tar.gz
chromium_src-e5c75e4861b7b84ffd18149ecc11934aaa159f21.tar.bz2
Make JavaScript alerts reflect the URL of the frame they came from, not the
enclosing frame. BUG=1686837 Review URL: http://codereview.chromium.org/39163 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11002 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host')
-rw-r--r--chrome/browser/renderer_host/render_view_host.cc9
-rw-r--r--chrome/browser/renderer_host/render_view_host.h4
-rw-r--r--chrome/browser/renderer_host/render_view_host_delegate.h4
3 files changed, 12 insertions, 5 deletions
diff --git a/chrome/browser/renderer_host/render_view_host.cc b/chrome/browser/renderer_host/render_view_host.cc
index 9f174fa..629a908 100644
--- a/chrome/browser/renderer_host/render_view_host.cc
+++ b/chrome/browser/renderer_host/render_view_host.cc
@@ -1088,21 +1088,24 @@ void RenderViewHost::OnMsgRunFileChooser(bool multiple_files,
void RenderViewHost::OnMsgRunJavaScriptMessage(
const std::wstring& message,
const std::wstring& default_prompt,
+ const GURL& frame_url,
const int flags,
IPC::Message* reply_msg) {
StopHangMonitorTimeout();
if (modal_dialog_count_++ == 0)
modal_dialog_event_->Signal();
- delegate_->RunJavaScriptMessage(message, default_prompt, flags, reply_msg,
+ delegate_->RunJavaScriptMessage(message, default_prompt, frame_url, flags,
+ reply_msg,
&are_javascript_messages_suppressed_);
}
-void RenderViewHost::OnMsgRunBeforeUnloadConfirm(const std::wstring& message,
+void RenderViewHost::OnMsgRunBeforeUnloadConfirm(const GURL& frame_url,
+ const std::wstring& message,
IPC::Message* reply_msg) {
StopHangMonitorTimeout();
if (modal_dialog_count_++ == 0)
modal_dialog_event_->Signal();
- delegate_->RunBeforeUnloadConfirm(message, reply_msg);
+ delegate_->RunBeforeUnloadConfirm(frame_url, message, reply_msg);
}
void RenderViewHost::OnMsgShowModalHTMLDialog(
diff --git a/chrome/browser/renderer_host/render_view_host.h b/chrome/browser/renderer_host/render_view_host.h
index 7120a22..29ed8e4 100644
--- a/chrome/browser/renderer_host/render_view_host.h
+++ b/chrome/browser/renderer_host/render_view_host.h
@@ -498,9 +498,11 @@ class RenderViewHost : public RenderWidgetHost {
const std::wstring& filter);
void OnMsgRunJavaScriptMessage(const std::wstring& message,
const std::wstring& default_prompt,
+ const GURL& frame_url,
const int flags,
IPC::Message* reply_msg);
- void OnMsgRunBeforeUnloadConfirm(const std::wstring& message,
+ void OnMsgRunBeforeUnloadConfirm(const GURL& frame_url,
+ const std::wstring& message,
IPC::Message* reply_msg);
void OnMsgShowModalHTMLDialog(const GURL& url, int width, int height,
const std::string& json_arguments,
diff --git a/chrome/browser/renderer_host/render_view_host_delegate.h b/chrome/browser/renderer_host/render_view_host_delegate.h
index cf78cf4..30870af 100644
--- a/chrome/browser/renderer_host/render_view_host_delegate.h
+++ b/chrome/browser/renderer_host/render_view_host_delegate.h
@@ -278,11 +278,13 @@ class RenderViewHostDelegate {
// A javascript message, confirmation or prompt should be shown.
virtual void RunJavaScriptMessage(const std::wstring& message,
const std::wstring& default_prompt,
+ const GURL& frame_url,
const int flags,
IPC::Message* reply_msg,
bool* did_suppress_message) { }
- virtual void RunBeforeUnloadConfirm(const std::wstring& message,
+ virtual void RunBeforeUnloadConfirm(const GURL& frame_url,
+ const std::wstring& message,
IPC::Message* reply_msg) { }
// Display this RenderViewHost in a modal fashion.