Index: chrome/browser/automation/automation_provider_observers.cc |
diff --git a/chrome/browser/automation/automation_provider_observers.cc b/chrome/browser/automation/automation_provider_observers.cc |
index 26734013fee43ff13fa0a90fe92407f53565943d..4c334c0d3d09215e570dd4eea78d3d20e7b7b265 100644 |
--- a/chrome/browser/automation/automation_provider_observers.cc |
+++ b/chrome/browser/automation/automation_provider_observers.cc |
@@ -2580,3 +2580,28 @@ void WaitForProcessLauncherThreadToGoIdleObserver::RunOnUIThread() { |
automation_->Send(reply_message_.release()); |
Release(); |
} |
+ |
+DragTargetDropAckNotificationObserver::DragTargetDropAckNotificationObserver( |
+ AutomationProvider* automation, |
+ IPC::Message* reply_message) |
+ : automation_(automation->AsWeakPtr()), |
+ reply_message_(reply_message) { |
+ registrar_.Add( |
+ this, |
+ NotificationType::RENDER_VIEW_HOST_DID_RECEIVE_DRAG_TARGET_DROP_ACK, |
+ NotificationService::AllSources()); |
+} |
+ |
+DragTargetDropAckNotificationObserver:: |
+ ~DragTargetDropAckNotificationObserver() {} |
+ |
+void DragTargetDropAckNotificationObserver::Observe( |
+ NotificationType type, |
+ const NotificationSource& source, |
+ const NotificationDetails& details) { |
+ if (automation_) { |
+ AutomationJSONReply(automation_, |
+ reply_message_.release()).SendSuccess(NULL); |
+ } |
+ delete this; |
+} |