| Index: webkit/glue/plugins/pepper_plugin_instance.h
|
| ===================================================================
|
| --- webkit/glue/plugins/pepper_plugin_instance.h (revision 0)
|
| +++ webkit/glue/plugins/pepper_plugin_instance.h (revision 0)
|
| @@ -0,0 +1,80 @@
|
| +// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_INSTANCE_H_
|
| +#define WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_INSTANCE_H_
|
| +
|
| +#include <string>
|
| +#include <vector>
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "base/ref_counted.h"
|
| +#include "third_party/WebKit/WebKit/chromium/public/WebCanvas.h"
|
| +
|
| +typedef struct _pp_Instance PP_Instance;
|
| +typedef struct _pp_Resource PP_Resource;
|
| +typedef struct _ppb_Instance PPB_Instance;
|
| +typedef struct _ppp_Instance PPP_Instance;
|
| +
|
| +namespace gfx {
|
| +class Rect;
|
| +}
|
| +
|
| +namespace WebKit {
|
| +struct WebCursorInfo;
|
| +class WebInputEvent;
|
| +}
|
| +
|
| +namespace pepper {
|
| +
|
| +class DeviceContext2D;
|
| +class PluginDelegate;
|
| +class PluginModule;
|
| +
|
| +class PluginInstance : public base::RefCounted<PluginInstance> {
|
| + public:
|
| + PluginInstance(PluginDelegate* delegate,
|
| + PluginModule* module,
|
| + const PPP_Instance* instance_interface);
|
| + ~PluginInstance();
|
| +
|
| + static const PPB_Instance* GetInterface();
|
| +
|
| + // Converts the given instance ID to an actual instance object.
|
| + static PluginInstance* FromPPInstance(PP_Instance instance);
|
| +
|
| + PluginDelegate* delegate() const { return delegate_; }
|
| + PluginModule* module() const { return module_.get(); }
|
| +
|
| + PP_Instance GetPPInstance();
|
| +
|
| + void Paint(WebKit::WebCanvas* canvas,
|
| + const gfx::Rect& plugin_rect,
|
| + const gfx::Rect& paint_rect);
|
| +
|
| + // PPB_Instance implementation.
|
| + bool BindGraphicsDeviceContext(PP_Resource device_id);
|
| +
|
| + // PPP_Instance pass-through.
|
| + void Delete();
|
| + bool Initialize(const std::vector<std::string>& arg_names,
|
| + const std::vector<std::string>& arg_values);
|
| + bool HandleInputEvent(const WebKit::WebInputEvent& event,
|
| + WebKit::WebCursorInfo* cursor_info);
|
| + void ViewChanged(const gfx::Rect& position, const gfx::Rect& clip);
|
| +
|
| + private:
|
| + PluginDelegate* delegate_;
|
| + scoped_refptr<PluginModule> module_;
|
| + const PPP_Instance* instance_interface_;
|
| +
|
| + // The current device context for painting in 2D.
|
| + scoped_refptr<DeviceContext2D> device_context_2d_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(PluginInstance);
|
| +};
|
| +
|
| +} // namespace pepper
|
| +
|
| +#endif // WEBKIT_GLUE_PLUGINS_PEPPER_PLUGIN_INSTANCE_H_
|
|
|
| Property changes on: webkit/glue/plugins/pepper_plugin_instance.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|