| Index: ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
|
| diff --git a/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc b/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
|
| index 3a3a9dd6a20257b75c7f6dcfc4e4f6e15e8f0d83..6d63add6756d8d5a21c4020b810fa52f4b3a96c7 100644
|
| --- a/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
|
| +++ b/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc
|
| @@ -297,9 +297,11 @@ void DesktopNativeWidgetAura::OnHostClosed() {
|
| // references. Make sure we destroy ShadowController early on.
|
| shadow_controller_.reset();
|
| tooltip_manager_.reset();
|
| - host_->window()->RemovePreTargetHandler(tooltip_controller_.get());
|
| - aura::client::SetTooltipClient(host_->window(), NULL);
|
| - tooltip_controller_.reset();
|
| + if (tooltip_controller_.get()) {
|
| + host_->window()->RemovePreTargetHandler(tooltip_controller_.get());
|
| + aura::client::SetTooltipClient(host_->window(), NULL);
|
| + tooltip_controller_.reset();
|
| + }
|
|
|
| root_window_event_filter_->RemoveHandler(input_method_event_filter_.get());
|
|
|
| @@ -494,14 +496,15 @@ void DesktopNativeWidgetAura::InitNativeWidget(
|
| drop_helper_.reset(new DropHelper(GetWidget()->GetRootView()));
|
| aura::client::SetDragDropDelegate(content_window_, this);
|
|
|
| - tooltip_manager_.reset(new TooltipManagerAura(GetWidget()));
|
| -
|
| - tooltip_controller_.reset(
|
| - new corewm::TooltipController(
|
| - desktop_window_tree_host_->CreateTooltip()));
|
| - aura::client::SetTooltipClient(host_->window(),
|
| - tooltip_controller_.get());
|
| - host_->window()->AddPreTargetHandler(tooltip_controller_.get());
|
| + if (params.type != Widget::InitParams::TYPE_TOOLTIP) {
|
| + tooltip_manager_.reset(new TooltipManagerAura(GetWidget()));
|
| + tooltip_controller_.reset(
|
| + new corewm::TooltipController(
|
| + desktop_window_tree_host_->CreateTooltip()));
|
| + aura::client::SetTooltipClient(host_->window(),
|
| + tooltip_controller_.get());
|
| + host_->window()->AddPreTargetHandler(tooltip_controller_.get());
|
| + }
|
|
|
| if (params.opacity == Widget::InitParams::TRANSLUCENT_WINDOW) {
|
| visibility_controller_.reset(new wm::VisibilityController);
|
|
|