diff options
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/renderer_host/render_widget_host_view_mac.mm | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_mac.mm b/chrome/browser/renderer_host/render_widget_host_view_mac.mm index 23fe34c..d44a7bc 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_mac.mm +++ b/chrome/browser/renderer_host/render_widget_host_view_mac.mm @@ -52,7 +52,6 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget) parent_view_(NULL) { cocoa_view_ = [[[RenderWidgetHostViewCocoa alloc] initWithRenderWidgetHostViewMac:this] autorelease]; - tooltip_.reset([[ToolTip alloc] init]); render_widget_host_->set_view(this); } @@ -278,10 +277,12 @@ void RenderWidgetHostViewMac::SetTooltipText(const std::wstring& tooltip_text) { NSString* tooltip_nsstring = base::SysWideToNSString(display_text); if ([tooltip_nsstring length] == 0) { - [tooltip_ closeToolTip]; + tooltip_.reset(NULL); // The dtor closes the tooltip. } else { // Get the current mouse location in the window's coordinate system and // use that as the point for displaying the tooltip. + if (!tooltip_.get()) + tooltip_.reset([[ToolTip alloc] init]); NSPoint event_point = [[cocoa_view_ window] mouseLocationOutsideOfEventStream]; [tooltip_ showToolTipAtPoint:event_point |