| Index: content/plugin/webplugin_proxy.h
|
| diff --git a/content/plugin/webplugin_proxy.h b/content/plugin/webplugin_proxy.h
|
| deleted file mode 100644
|
| index 645bd94cb734c33894476044168d4ab262e89b82..0000000000000000000000000000000000000000
|
| --- a/content/plugin/webplugin_proxy.h
|
| +++ /dev/null
|
| @@ -1,176 +0,0 @@
|
| -// Copyright (c) 2012 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 CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_
|
| -#define CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_
|
| -
|
| -#include <stdint.h>
|
| -
|
| -#include <string>
|
| -
|
| -#include "base/containers/hash_tables.h"
|
| -#include "base/memory/ref_counted.h"
|
| -#include "base/memory/scoped_ptr.h"
|
| -#include "base/memory/weak_ptr.h"
|
| -#include "build/build_config.h"
|
| -#include "content/child/npapi/webplugin.h"
|
| -#include "ipc/ipc_message.h"
|
| -#include "ipc/ipc_sender.h"
|
| -#include "skia/ext/refptr.h"
|
| -#include "third_party/skia/include/core/SkCanvas.h"
|
| -#include "ui/gl/gpu_preference.h"
|
| -#include "ui/surface/transport_dib.h"
|
| -#include "url/gurl.h"
|
| -
|
| -#if defined(OS_MACOSX)
|
| -#include <ApplicationServices/ApplicationServices.h>
|
| -
|
| -#include "base/mac/scoped_cftyperef.h"
|
| -#endif
|
| -
|
| -namespace content {
|
| -class PluginChannel;
|
| -class WebPluginDelegateImpl;
|
| -
|
| -#if defined(OS_MACOSX)
|
| -class WebPluginAcceleratedSurfaceProxy;
|
| -#endif
|
| -
|
| -// This is an implementation of WebPlugin that proxies all calls to the
|
| -// renderer.
|
| -class WebPluginProxy : public WebPlugin,
|
| - public IPC::Sender {
|
| - public:
|
| - // Creates a new proxy for WebPlugin, using the given sender to send the
|
| - // marshalled WebPlugin calls.
|
| - WebPluginProxy(PluginChannel* channel,
|
| - int route_id,
|
| - const GURL& page_url,
|
| - int host_render_view_routing_id);
|
| - ~WebPluginProxy() override;
|
| -
|
| - void set_delegate(WebPluginDelegateImpl* d) { delegate_ = d; }
|
| -
|
| - // WebPlugin overrides
|
| - void Invalidate() override;
|
| - void InvalidateRect(const gfx::Rect& rect) override;
|
| - bool FindProxyForUrl(const GURL& url, std::string* proxy_list) override;
|
| - void SetCookie(const GURL& url,
|
| - const GURL& first_party_for_cookies,
|
| - const std::string& cookie) override;
|
| - std::string GetCookies(const GURL& url,
|
| - const GURL& first_party_for_cookies) override;
|
| - void UpdateGeometry(const gfx::Rect& window_rect,
|
| - const gfx::Rect& clip_rect,
|
| - const TransportDIB::Handle& windowless_buffer0,
|
| - const TransportDIB::Handle& windowless_buffer1,
|
| - int windowless_buffer_index);
|
| - void CancelDocumentLoad() override;
|
| - void DidStartLoading() override;
|
| - void DidStopLoading() override;
|
| - bool IsOffTheRecord() override;
|
| -#if defined(OS_MACOSX)
|
| - void FocusChanged(bool focused) override;
|
| - void StartIme() override;
|
| - WebPluginAcceleratedSurface* GetAcceleratedSurface(
|
| - gfx::GpuPreference gpu_preference) override;
|
| - void AcceleratedPluginEnabledRendering() override;
|
| - void AcceleratedPluginAllocatedIOSurface(int32_t width,
|
| - int32_t height,
|
| - uint32_t surface_id) override;
|
| - void AcceleratedPluginSwappedIOSurface() override;
|
| -#endif
|
| -
|
| - // IPC::Sender implementation.
|
| - bool Send(IPC::Message* msg) override;
|
| -
|
| - // class-specific methods
|
| -
|
| - // Returns the id of the renderer that contains this plugin.
|
| - int GetRendererId();
|
| -
|
| - // Returns the id of the associated render view.
|
| - int host_render_view_routing_id() const {
|
| - return host_render_view_routing_id_;
|
| - }
|
| -
|
| - // For windowless plugins, paints the given rectangle into the local buffer.
|
| - void Paint(const gfx::Rect& rect);
|
| -
|
| - // Callback from the renderer to let us know that a paint occurred.
|
| - void DidPaint();
|
| -
|
| - private:
|
| - class SharedTransportDIB : public base::RefCounted<SharedTransportDIB> {
|
| - public:
|
| - explicit SharedTransportDIB(TransportDIB* dib);
|
| - TransportDIB* dib() { return dib_.get(); }
|
| - private:
|
| - friend class base::RefCounted<SharedTransportDIB>;
|
| - ~SharedTransportDIB();
|
| -
|
| - scoped_ptr<TransportDIB> dib_;
|
| - };
|
| -
|
| - // Handler for sending over the paint event to the plugin.
|
| - void OnPaint(const gfx::Rect& damaged_rect);
|
| -
|
| -#if defined(OS_WIN)
|
| - void CreateCanvasFromHandle(const TransportDIB::Handle& dib_handle,
|
| - const gfx::Rect& window_rect,
|
| - skia::RefPtr<SkCanvas>* canvas);
|
| -#elif defined(OS_MACOSX)
|
| - static void CreateDIBAndCGContextFromHandle(
|
| - const TransportDIB::Handle& dib_handle,
|
| - const gfx::Rect& window_rect,
|
| - scoped_ptr<TransportDIB>* dib_out,
|
| - base::ScopedCFTypeRef<CGContextRef>* cg_context_out);
|
| -#endif
|
| -
|
| - // Updates the shared memory sections where windowless plugins paint.
|
| - void SetWindowlessBuffers(const TransportDIB::Handle& windowless_buffer0,
|
| - const TransportDIB::Handle& windowless_buffer1,
|
| - const gfx::Rect& window_rect);
|
| -
|
| -#if defined(OS_MACOSX)
|
| - CGContextRef windowless_context() const {
|
| - return windowless_contexts_[windowless_buffer_index_].get();
|
| - }
|
| -#else
|
| - skia::RefPtr<SkCanvas> windowless_canvas() const {
|
| - return windowless_canvases_[windowless_buffer_index_];
|
| - }
|
| -#endif
|
| -
|
| - scoped_refptr<PluginChannel> channel_;
|
| - int route_id_;
|
| - WebPluginDelegateImpl* delegate_;
|
| - gfx::Rect damaged_rect_;
|
| - bool waiting_for_paint_;
|
| - // The url of the main frame hosting the plugin.
|
| - GURL page_url_;
|
| -
|
| - // Variables used for desynchronized windowless plugin painting. See note in
|
| - // webplugin_delegate_proxy.h for how this works. The two sets of windowless_*
|
| - // fields are for the front-buffer and back-buffer of a buffer flipping system
|
| - // and windowless_buffer_index_ identifies which set we are using as the
|
| - // back-buffer at any given time.
|
| - int windowless_buffer_index_;
|
| -#if defined(OS_MACOSX)
|
| - scoped_ptr<TransportDIB> windowless_dibs_[2];
|
| - base::ScopedCFTypeRef<CGContextRef> windowless_contexts_[2];
|
| - scoped_ptr<WebPluginAcceleratedSurfaceProxy> accelerated_surface_;
|
| -#else
|
| - skia::RefPtr<SkCanvas> windowless_canvases_[2];
|
| -#endif
|
| -
|
| - // Contains the routing id of the host render view.
|
| - int host_render_view_routing_id_;
|
| -
|
| - base::WeakPtrFactory<WebPluginProxy> weak_factory_;
|
| -};
|
| -
|
| -} // namespace content
|
| -
|
| -#endif // CONTENT_PLUGIN_WEBPLUGIN_PROXY_H_
|
|
|