| Index: content/browser/web_contents/web_drag_dest_gtk.h
|
| diff --git a/content/browser/web_contents/web_drag_dest_gtk.h b/content/browser/web_contents/web_drag_dest_gtk.h
|
| index d09c54f25168730558568529d4a3b8b3494b2212..fb9a6b3719d655057dceb5d3e6b12a33b32e5245 100644
|
| --- a/content/browser/web_contents/web_drag_dest_gtk.h
|
| +++ b/content/browser/web_contents/web_drag_dest_gtk.h
|
| @@ -41,6 +41,8 @@ class CONTENT_EXPORT WebDragDestGtk {
|
| WebDragDestDelegate* delegate() const { return delegate_; }
|
| void set_delegate(WebDragDestDelegate* delegate) { delegate_ = delegate; }
|
|
|
| + GtkWidget* widget() const { return widget_; }
|
| +
|
| private:
|
| RenderViewHostImpl* GetRenderViewHost() const;
|
|
|
| @@ -90,11 +92,11 @@ class CONTENT_EXPORT WebDragDestGtk {
|
| // got from the renderer.
|
| bool is_drop_target_;
|
|
|
| - // Handler ID for the destroy signal handler. We connect to the destroy
|
| - // signal handler so that we won't call dest_unset on it after it is
|
| - // destroyed, but we have to cancel the handler if we are destroyed before
|
| - // |widget_| is.
|
| - int destroy_handler_;
|
| + // Stores Handler IDs for the gtk signal handlers. We have to cancel the
|
| + // signal handlers when this WebDragDestGtk is deleted so that if, later on,
|
| + // we re-create the drag dest with the same widget, we don't get callbacks to
|
| + // deleted functions.
|
| + scoped_array<int> handlers_;
|
|
|
| // A delegate that can receive drag information about drag events.
|
| WebDragDestDelegate* delegate_;
|
|
|