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 e81a82358b862806f8561eb29005fc0a2de0b9bc..cf068755f55767576fd2aa33c735a575cabf592e 100644 |
--- a/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc |
+++ b/ui/views/widget/desktop_aura/desktop_native_widget_aura.cc |
@@ -29,13 +29,13 @@ |
#include "ui/views/corewm/input_method_event_filter.h" |
#include "ui/views/corewm/shadow_controller.h" |
#include "ui/views/corewm/shadow_types.h" |
-#include "ui/views/corewm/tooltip_controller.h" |
#include "ui/views/corewm/visibility_controller.h" |
#include "ui/views/corewm/window_modality_controller.h" |
#include "ui/views/drag_utils.h" |
#include "ui/views/ime/input_method.h" |
#include "ui/views/ime/input_method_bridge.h" |
#include "ui/views/widget/desktop_aura/desktop_root_window_host.h" |
+#include "ui/views/widget/desktop_aura/scoped_tooltip_client.h" |
#include "ui/views/widget/drop_helper.h" |
#include "ui/views/widget/native_widget_aura.h" |
#include "ui/views/widget/native_widget_aura_window_observer.h" |
@@ -260,11 +260,8 @@ void DesktopNativeWidgetAura::InitNativeWidget( |
aura::client::SetDragDropDelegate(window_, this); |
tooltip_manager_.reset(new views::TooltipManagerAura(window_, GetWidget())); |
- tooltip_controller_.reset( |
- new corewm::TooltipController(gfx::SCREEN_TYPE_NATIVE)); |
- aura::client::SetTooltipClient(root_window_.get(), |
- tooltip_controller_.get()); |
- root_window_->AddPreTargetHandler(tooltip_controller_.get()); |
+ |
+ scoped_tooltip_client_.reset(new ScopedTooltipClient(root_window_.get())); |
if (params.opacity == Widget::InitParams::TRANSLUCENT_WINDOW) { |
visibility_controller_.reset(new views::corewm::VisibilityController); |
@@ -720,11 +717,7 @@ void DesktopNativeWidgetAura::OnWindowDestroying() { |
shadow_controller_.reset(); |
// The DesktopRootWindowHost implementation sends OnNativeWidgetDestroying(). |
tooltip_manager_.reset(); |
- if (tooltip_controller_.get()) { |
- root_window_->RemovePreTargetHandler(tooltip_controller_.get()); |
- tooltip_controller_.reset(); |
- aura::client::SetTooltipClient(root_window_.get(), NULL); |
- } |
+ scoped_tooltip_client_.reset(); |
if (window_modality_controller_) { |
root_window_->RemovePreTargetHandler(window_modality_controller_.get()); |
window_modality_controller_.reset(); |