Index: chrome/browser/ui/webui/hung_renderer_dialog.cc |
=================================================================== |
--- chrome/browser/ui/webui/hung_renderer_dialog.cc (revision 101584) |
+++ chrome/browser/ui/webui/hung_renderer_dialog.cc (working copy) |
@@ -8,13 +8,10 @@ |
#include <vector> |
#include "base/json/json_reader.h" |
-#include "base/utf_string_conversions.h" |
#include "base/values.h" |
#include "chrome/browser/ui/browser.h" |
#include "chrome/browser/ui/browser_list.h" |
-#include "chrome/browser/ui/browser_dialogs.h" |
#include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
-#include "chrome/browser/ui/webui/html_dialog_ui.h" |
#include "chrome/common/logging_chrome.h" |
#include "chrome/common/url_constants.h" |
#include "content/browser/renderer_host/render_view_host.h" |
@@ -22,6 +19,7 @@ |
#include "content/common/result_codes.h" |
#include "grit/generated_resources.h" |
#include "ui/base/l10n/l10n_util.h" |
+#include "views/widget/widget.h" |
namespace { |
HungRendererDialog* g_instance = NULL; |
@@ -32,21 +30,11 @@ |
namespace browser { |
void ShowHungRendererDialog(TabContents* contents) { |
- if (ChromeWebUI::IsMoreWebUI()) { |
- HungRendererDialog::ShowHungRendererDialog(contents); |
- return; |
- } |
- |
- ShowNativeHungRendererDialog(contents); |
+ HungRendererDialog::ShowHungRendererDialog(contents); |
} |
void HideHungRendererDialog(TabContents* contents) { |
- if (ChromeWebUI::IsMoreWebUI()) { |
- HungRendererDialog::HideHungRendererDialog(contents); |
- return; |
- } |
- |
- HideNativeHungRendererDialog(contents); |
+ HungRendererDialog::HideHungRendererDialog(contents); |
} |
} // namespace browser |
@@ -74,7 +62,6 @@ |
HungRendererDialog::HungRendererDialog() |
: contents_(NULL), |
- handler_(NULL), |
window_(NULL) { |
} |
@@ -83,7 +70,6 @@ |
contents_ = contents; |
Browser* browser = BrowserList::GetLastActive(); |
DCHECK(browser); |
- handler_ = new HungRendererDialogHandler(contents_); |
window_ = browser->BrowserShowHtmlDialog(this, NULL); |
} |
@@ -97,8 +83,9 @@ |
// We do this because the close dialog handler runs whether it is trigged by |
// the user closing the box, or by being closed externally with widget->Close. |
contents_ = NULL; |
- DCHECK(handler_); |
- handler_->CloseDialog(); |
+ views::Widget* widget = views::Widget::GetWidgetForNativeWindow(window_); |
+ DCHECK(widget); |
+ widget->Close(); |
} |
bool HungRendererDialog::IsDialogModal() const { |
@@ -115,7 +102,7 @@ |
void HungRendererDialog::GetWebUIMessageHandlers( |
std::vector<WebUIMessageHandler*>* handlers) const { |
- handlers->push_back(handler_); |
+ handlers->push_back(new HungRendererDialogHandler(contents_)); |
} |
void HungRendererDialog::GetDialogSize(gfx::Size* size) const { |
@@ -168,11 +155,6 @@ |
: contents_(contents) { |
} |
-void HungRendererDialogHandler::CloseDialog() { |
- DCHECK(web_ui_); |
- static_cast<HtmlDialogUI*>(web_ui_)->CloseDialog(NULL); |
-} |
- |
void HungRendererDialogHandler::RegisterMessages() { |
web_ui_->RegisterMessageCallback("requestTabContentsList", |
NewCallback(this, |