diff options
author | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-20 21:26:39 +0000 |
---|---|---|
committer | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-20 21:26:39 +0000 |
commit | 3ec40f2a1a918be8350022342a6c9e7824b1d03b (patch) | |
tree | 154ec7366bfe00bb86fdbb4e11c68a848832f673 /ppapi/thunk | |
parent | 2d2118e9ebf9c85974e6299680253598a7a5610d (diff) | |
download | chromium_src-3ec40f2a1a918be8350022342a6c9e7824b1d03b.zip chromium_src-3ec40f2a1a918be8350022342a6c9e7824b1d03b.tar.gz chromium_src-3ec40f2a1a918be8350022342a6c9e7824b1d03b.tar.bz2 |
Relanding this with fixes to the mac dbg builder
Remove the Webkit thread in the PPAPI plugin process and perform the text and font operations
on the PPAPI main thread. This thread is now registered as the Webkit thread.
Fixes performance issues seen in Flapper with text and font operations. It appears that the perf
issues occur due to context switching between the main thread and the webkit thread.
As per comments from Brett moving the font forwarding code inline to ppb_font_shared.cc. This file
has been moved to ppapi/shared_impl/private as it now brings in a dependency on WebKit. The font
creation has been wired up to the ResourceCreationAPI as suggested.
BUG=110190
TBR=brettw
Review URL: https://chromiumcodereview.appspot.com/9192038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118503 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/thunk')
-rw-r--r-- | ppapi/thunk/ppb_font_api.h | 3 | ||||
-rw-r--r-- | ppapi/thunk/ppb_image_data_api.h | 7 |
2 files changed, 9 insertions, 1 deletions
diff --git a/ppapi/thunk/ppb_font_api.h b/ppapi/thunk/ppb_font_api.h index e3bac24..e85bb1b 100644 --- a/ppapi/thunk/ppb_font_api.h +++ b/ppapi/thunk/ppb_font_api.h @@ -7,6 +7,7 @@ #include "ppapi/c/dev/ppb_font_dev.h" #include "ppapi/shared_impl/api_id.h" +#include "ppapi/thunk/ppapi_thunk_export.h" namespace ppapi { namespace thunk { @@ -22,7 +23,7 @@ class PPB_Font_FunctionAPI { }; // API for font resources. -class PPB_Font_API { +class PPAPI_THUNK_EXPORT PPB_Font_API { public: virtual ~PPB_Font_API() {} diff --git a/ppapi/thunk/ppb_image_data_api.h b/ppapi/thunk/ppb_image_data_api.h index c22e899..b7a3e69 100644 --- a/ppapi/thunk/ppb_image_data_api.h +++ b/ppapi/thunk/ppb_image_data_api.h @@ -8,6 +8,10 @@ #include "ppapi/c/pp_bool.h" #include "ppapi/c/ppb_image_data.h" +namespace skia { +class PlatformCanvas; +} + namespace ppapi { namespace thunk { @@ -21,6 +25,9 @@ class PPB_ImageData_API { // Trusted inteface. virtual int32_t GetSharedMemory(int* handle, uint32_t* byte_count) = 0; + + // The canvas will be NULL if the image is not mapped. + virtual skia::PlatformCanvas* GetPlatformCanvas() = 0; }; } // namespace thunk |