Index: ash/accelerators/exit_warning_handler.cc |
diff --git a/ash/accelerators/exit_warning_handler.cc b/ash/accelerators/exit_warning_handler.cc |
index 767b2667f75c073808ab0adca668e0c077a13542..6612fc88d184e4c4cb3ab3204433e8ecfd9400b2 100644 |
--- a/ash/accelerators/exit_warning_handler.cc |
+++ b/ash/accelerators/exit_warning_handler.cc |
@@ -100,11 +100,10 @@ class ExitWarningWidgetDelegateView : public views::WidgetDelegateView { |
DISALLOW_COPY_AND_ASSIGN(ExitWarningWidgetDelegateView); |
}; |
-} // namespace |
+} // namespace |
ExitWarningHandler::ExitWarningHandler() |
: state_(IDLE), |
- widget_(NULL), |
stub_timer_for_test_(false) { |
} |
@@ -169,6 +168,7 @@ void ExitWarningHandler::Show() { |
views::Widget::InitParams params; |
params.type = views::Widget::InitParams::TYPE_POPUP; |
params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW; |
+ params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
params.accept_events = false; |
params.can_activate = false; |
params.keep_on_top = true; |
@@ -178,7 +178,7 @@ void ExitWarningHandler::Show() { |
params.parent = Shell::GetContainer( |
root_window, |
internal::kShellWindowId_SettingBubbleContainer); |
- widget_ = new views::Widget; |
+ widget_.reset(new views::Widget); |
widget_->Init(params); |
widget_->SetContentsView(delegate); |
widget_->GetNativeView()->SetName("ExitWarningWindow"); |
@@ -188,10 +188,7 @@ void ExitWarningHandler::Show() { |
} |
void ExitWarningHandler::Hide() { |
- if (!widget_) |
- return; |
- widget_->Close(); |
- widget_ = NULL; |
+ widget_.reset(); |
} |
} // namespace ash |