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

Unified Diff: content/renderer/npapi/webplugin_delegate_proxy.h

Issue 1853793003: Remove content/renderer/npapi (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 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/renderer/npapi/plugin_channel_host.cc ('k') | content/renderer/npapi/webplugin_delegate_proxy.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/npapi/webplugin_delegate_proxy.h
diff --git a/content/renderer/npapi/webplugin_delegate_proxy.h b/content/renderer/npapi/webplugin_delegate_proxy.h
deleted file mode 100644
index d23b51718f1a7526dd83e91f9520f9c8c0451c3c..0000000000000000000000000000000000000000
--- a/content/renderer/npapi/webplugin_delegate_proxy.h
+++ /dev/null
@@ -1,243 +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_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_
-#define CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_
-
-#include <stdint.h>
-
-#include <string>
-#include <vector>
-
-#include "base/macros.h"
-#include "base/memory/ref_counted.h"
-#include "base/memory/scoped_ptr.h"
-#include "base/memory/weak_ptr.h"
-#include "base/sequenced_task_runner_helpers.h"
-#include "build/build_config.h"
-#include "content/child/npapi/webplugin_delegate.h"
-#include "content/public/common/webplugininfo.h"
-#include "ipc/ipc_listener.h"
-#include "ipc/ipc_message.h"
-#include "ipc/ipc_sender.h"
-#include "skia/ext/refptr.h"
-#include "ui/gfx/geometry/rect.h"
-#include "ui/gfx/native_widget_types.h"
-#include "url/gurl.h"
-
-#if defined(OS_MACOSX)
-#include "base/containers/hash_tables.h"
-#endif
-
-struct NPObject;
-struct PluginHostMsg_URLRequest_Params;
-class SkBitmap;
-
-namespace base {
-class WaitableEvent;
-}
-
-
-namespace content {
-class PluginChannelHost;
-class RenderFrameImpl;
-class RenderViewImpl;
-class SharedMemoryBitmap;
-class WebPluginImpl;
-
-// An implementation of WebPluginDelegate that proxies all calls to
-// the plugin process.
-class WebPluginDelegateProxy
- : public WebPluginDelegate,
- public IPC::Listener,
- public IPC::Sender,
- public base::SupportsWeakPtr<WebPluginDelegateProxy> {
- public:
- WebPluginDelegateProxy(WebPluginImpl* plugin,
- const std::string& mime_type,
- const base::WeakPtr<RenderViewImpl>& render_view,
- RenderFrameImpl* render_frame);
-
- // WebPluginDelegate implementation:
- void PluginDestroyed() override;
- bool Initialize(const GURL& url,
- const std::vector<std::string>& arg_names,
- const std::vector<std::string>& arg_values,
- bool load_manually) override;
- void UpdateGeometry(const gfx::Rect& window_rect,
- const gfx::Rect& clip_rect) override;
- void Paint(SkCanvas* canvas, const gfx::Rect& rect) override;
- void SetFocus(bool focused) override;
- bool HandleInputEvent(const blink::WebInputEvent& event,
- WebCursor::CursorInfo* cursor) override;
- int GetProcessId() override;
-
- // Informs the plugin that its containing content view has gained or lost
- // first responder status.
- virtual void SetContentAreaFocus(bool has_focus);
-#if defined(OS_MACOSX)
- // Informs the plugin that its enclosing window has gained or lost focus.
- virtual void SetWindowFocus(bool window_has_focus);
- // Informs the plugin that its container (window/tab) has changed visibility.
- virtual void SetContainerVisibility(bool is_visible);
- // Informs the plugin that its enclosing window's frame has changed.
- virtual void WindowFrameChanged(gfx::Rect window_frame, gfx::Rect view_frame);
- // Informs the plugin that plugin IME has completed.
- // If |text| is empty, composition was cancelled.
- virtual void ImeCompositionCompleted(const base::string16& text,
- int plugin_id);
-#endif
-
- // IPC::Listener implementation:
- bool OnMessageReceived(const IPC::Message& msg) override;
- void OnChannelError() override;
-
- // IPC::Sender implementation:
- bool Send(IPC::Message* msg) override;
-
- protected:
- friend class base::DeleteHelper<WebPluginDelegateProxy>;
- ~WebPluginDelegateProxy() override;
-
- private:
- struct SharedBitmap {
- SharedBitmap();
- ~SharedBitmap();
-
- scoped_ptr<SharedMemoryBitmap> bitmap;
- skia::RefPtr<SkCanvas> canvas;
- };
-
- // Message handlers for messages that proxy WebPlugin methods, which
- // we translate into calls to the real WebPlugin.
- void OnCompleteURL(const std::string& url_in, std::string* url_out,
- bool* result);
- void OnHandleURLRequest(const PluginHostMsg_URLRequest_Params& params);
- void OnInvalidateRect(const gfx::Rect& rect);
- void OnResolveProxy(const GURL& url, bool* result, std::string* proxy_list);
- void OnSetCookie(const GURL& url,
- const GURL& first_party_for_cookies,
- const std::string& cookie);
- void OnGetCookies(const GURL& url, const GURL& first_party_for_cookies,
- std::string* cookies);
- void OnCancelDocumentLoad();
- void OnInitiateHTTPRangeRequest(const std::string& url,
- const std::string& range_info,
- int range_request_id);
- void OnDidStartLoading();
- void OnDidStopLoading();
-#if defined(OS_MACOSX)
- void OnFocusChanged(bool focused);
- void OnStartIme();
- // Accelerated (Core Animation) plugin implementation.
- void OnAcceleratedPluginEnabledRendering();
- void OnAcceleratedPluginAllocatedIOSurface(int32_t width,
- int32_t height,
- uint32_t surface_id);
- void OnAcceleratedPluginSwappedIOSurface();
-#endif
- // Helper function that sends the UpdateGeometry message.
- void SendUpdateGeometry(bool bitmaps_changed);
-
- // Copies the given rectangle from the back-buffer transport_stores_ bitmap to
- // the front-buffer transport_stores_ bitmap.
- void CopyFromBackBufferToFrontBuffer(const gfx::Rect& rect);
-
- // Updates the front-buffer with the given rectangle from the back-buffer,
- // either by copying the rectangle or flipping the buffers.
- void UpdateFrontBuffer(const gfx::Rect& rect, bool allow_buffer_flipping);
-
- // Clears the shared memory section and canvases used for windowless plugins.
- void ResetWindowlessBitmaps();
-
- int front_buffer_index() const {
- return front_buffer_index_;
- }
-
- int back_buffer_index() const {
- return 1 - front_buffer_index_;
- }
-
- SkCanvas* front_buffer_canvas() const {
- return transport_stores_[front_buffer_index()].canvas.get();
- }
-
- SkCanvas* back_buffer_canvas() const {
- return transport_stores_[back_buffer_index()].canvas.get();
- }
-
- SharedMemoryBitmap* front_buffer_bitmap() const {
- return transport_stores_[front_buffer_index()].bitmap.get();
- }
-
- SharedMemoryBitmap* back_buffer_bitmap() const {
- return transport_stores_[back_buffer_index()].bitmap.get();
- }
-
-#if !defined(OS_WIN)
- // Creates a process-local memory section and canvas. PlatformCanvas on
- // Windows only works with a DIB, not arbitrary memory.
- bool CreateLocalBitmap(std::vector<uint8_t>* memory,
- skia::RefPtr<SkCanvas>* canvas);
-#endif
-
- // Creates a shared memory section and canvas.
- bool CreateSharedBitmap(scoped_ptr<SharedMemoryBitmap>* memory,
- skia::RefPtr<SkCanvas>* canvas);
-
- // Called for cleanup during plugin destruction. Normally right before the
- // plugin window gets destroyed, or when the plugin has crashed (at which
- // point the window has already been destroyed).
- void WillDestroyWindow();
-
-#if defined(OS_WIN)
- // Returns true if we should update the plugin geometry synchronously.
- bool UseSynchronousGeometryUpdates();
-#endif
-
- base::WeakPtr<RenderViewImpl> render_view_;
- RenderFrameImpl* render_frame_;
- WebPluginImpl* plugin_;
- bool uses_shared_bitmaps_;
-#if defined(OS_MACOSX)
- bool uses_compositor_;
-#endif
- scoped_refptr<PluginChannelHost> channel_host_;
- std::string mime_type_;
- int instance_id_;
- WebPluginInfo info_;
-
- gfx::Rect plugin_rect_;
- gfx::Rect clip_rect_;
-
- // Bitmap for crashed plugin
- SkBitmap* sad_plugin_;
-
- // True if we got an invalidate from the plugin and are waiting for a paint.
- bool invalidate_pending_;
-
- // If the plugin is transparent or not.
- bool transparent_;
-
- // The index in the transport_stores_ array of the current front buffer
- // (i.e., the buffer to display).
- int front_buffer_index_;
- SharedBitmap transport_stores_[2];
- // This lets us know the total portion of the transport store that has been
- // painted since the buffers were created.
- gfx::Rect transport_store_painted_;
- // This is a bounding box on the portion of the front-buffer that was painted
- // on the last buffer flip and which has not yet been re-painted in the
- // back-buffer.
- gfx::Rect front_buffer_diff_;
-
- // The url of the main frame hosting the plugin.
- GURL page_url_;
-
- DISALLOW_COPY_AND_ASSIGN(WebPluginDelegateProxy);
-};
-
-} // namespace content
-
-#endif // CONTENT_RENDERER_NPAPI_WEBPLUGIN_DELEGATE_PROXY_H_
« no previous file with comments | « content/renderer/npapi/plugin_channel_host.cc ('k') | content/renderer/npapi/webplugin_delegate_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698