1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CONTENT_PUBLIC_RENDERER_BROWSER_PLUGIN_DELEGATE_H_ 6 #define CONTENT_PUBLIC_RENDERER_BROWSER_PLUGIN_DELEGATE_H_ 7 8 #include <string> 9 10 #include "content/common/content_export.h" 11 12 namespace content { 13 14 class RenderFrame; 15 16 // A delegate for BrowserPlugin which gets notified about the plugin load. 17 // Implementations can provide additional steps necessary to change the load 18 // behavior of the plugin. 19 class CONTENT_EXPORT BrowserPluginDelegate { 20 public: 21 BrowserPluginDelegate(RenderFrame* render_frame, 22 const std::string& mime_type) {} 23 virtual ~BrowserPluginDelegate() {} 24 25 // Called when plugin document has finished loading. 26 virtual void DidFinishLoading() {} 27 28 // Called when plugin document receives data. 29 virtual void DidReceiveData(const char* data, int data_length) {} 30 31 // Sets the instance ID that idenfies the plugin within current render 32 // process. 33 virtual void SetElementInstanceID(int element_instance_id) {} 34 }; 35 36 } // namespace content 37 38 #endif // CONTENT_PUBLIC_RENDERER_BROWSER_PLUGIN_DELEGATE_H_ 39