| Index: chrome/common/render_messages.h
|
| ===================================================================
|
| --- chrome/common/render_messages.h (revision 9053)
|
| +++ chrome/common/render_messages.h (working copy)
|
| @@ -10,8 +10,10 @@
|
| #include <map>
|
|
|
| #include "base/basictypes.h"
|
| +#include "base/gfx/native_widget_types.h"
|
| #include "base/ref_counted.h"
|
| #include "base/shared_memory.h"
|
| +#include "chrome/common/bitmap_wire_data.h"
|
| #include "chrome/common/filter_policy.h"
|
| #include "chrome/common/ipc_message.h"
|
| #include "chrome/common/ipc_message_utils.h"
|
| @@ -33,6 +35,10 @@
|
| #include "webkit/glue/webpreferences.h"
|
| #include "webkit/glue/webview_delegate.h"
|
|
|
| +#if defined(OS_POSIX)
|
| +#include "skia/include/SkBitmap.h"
|
| +#endif
|
| +
|
| // Parameters structure for ViewMsg_Navigate, which has too many data
|
| // parameters to be reasonably put in a predefined IPC message.
|
| struct ViewMsg_Navigate_Params {
|
| @@ -190,13 +196,9 @@
|
| }
|
| };
|
|
|
| -#if defined(OS_WIN)
|
| -// TODO(port): Make these structs portable.
|
| -
|
| struct ViewHostMsg_PaintRect_Params {
|
| - // The bitmap to be painted into the rect given by bitmap_rect. Valid only
|
| - // in the context of the renderer process.
|
| - base::SharedMemoryHandle bitmap;
|
| + // The bitmap to be painted into the rect given by bitmap_rect.
|
| + BitmapWireData bitmap;
|
|
|
| // The position and size of the bitmap.
|
| gfx::Rect bitmap_rect;
|
| @@ -228,9 +230,8 @@
|
| // Parameters structure for ViewHostMsg_ScrollRect, which has too many data
|
| // parameters to be reasonably put in a predefined IPC message.
|
| struct ViewHostMsg_ScrollRect_Params {
|
| - // The bitmap to be painted into the rect exposed by scrolling. This handle
|
| - // is valid only in the context of the renderer process.
|
| - base::SharedMemoryHandle bitmap;
|
| + // The bitmap to be painted into the rect exposed by scrolling.
|
| + BitmapWireData bitmap;
|
|
|
| // The position and size of the bitmap.
|
| gfx::Rect bitmap_rect;
|
| @@ -248,7 +249,6 @@
|
| // New window locations for plugin child windows.
|
| std::vector<WebPluginGeometry> plugin_window_moves;
|
| };
|
| -#endif // defined(OS_WIN)
|
|
|
| // Parameters structure for ViewMsg_UploadFile.
|
| struct ViewMsg_UploadFile_Params {
|
| @@ -967,9 +967,6 @@
|
| }
|
| };
|
|
|
| -#if defined(OS_WIN)
|
| -// TODO(port): Make these messages portable.
|
| -
|
| // Traits for ViewHostMsg_PaintRect_Params structure to pack/unpack.
|
| template <>
|
| struct ParamTraits<ViewHostMsg_PaintRect_Params> {
|
| @@ -1078,7 +1075,6 @@
|
| l->append(L")");
|
| }
|
| };
|
| -#endif // defined(OS_WIN)
|
|
|
| // Traits for ViewMsg_GetPlugins_Reply structure to pack/unpack.
|
| template <>
|
| @@ -1738,6 +1734,31 @@
|
| }
|
| };
|
|
|
| +#if defined(OS_POSIX)
|
| +
|
| +// TODO(port): this shouldn't exist. However, the plugin stuff is really using
|
| +// HWNDS (NativeView), and making Windows calls based on them. I've not figured
|
| +// out the deal with plugins yet.
|
| +template <>
|
| +struct ParamTraits<gfx::NativeView> {
|
| + typedef gfx::NativeView param_type;
|
| + static void Write(Message* m, const param_type& p) {
|
| + NOTIMPLEMENTED();
|
| + }
|
| +
|
| + static bool Read(const Message* m, void** iter, param_type* p) {
|
| + NOTIMPLEMENTED();
|
| + *p = NULL;
|
| + return true;
|
| + }
|
| +
|
| + static void Log(const param_type& p, std::wstring* l) {
|
| + l->append(StringPrintf(L"<gfx::NativeView>"));
|
| + }
|
| +};
|
| +
|
| +#endif // defined(OS_POSIX)
|
| +
|
| } // namespace IPC
|
|
|
| #endif // CHROME_COMMON_RENDER_MESSAGES_H_
|
|
|