Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(343)

Unified Diff: content/plugin/webplugin_proxy.h

Issue 1852593004: Remove content/plugin (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@remove_npapi_test_plugin
Patch Set: . Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/plugin/webplugin_delegate_stub.cc ('k') | content/plugin/webplugin_proxy.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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_
« no previous file with comments | « content/plugin/webplugin_delegate_stub.cc ('k') | content/plugin/webplugin_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698