Ttomfinegan@chromium.orgFix resource leaks in CDM implementation.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Change the cpp wrappers of audio input/video capture to use CompletionCallbackWithOutput. And also fix a few bugs in the PP_ArrayOutput and CallbackWithOutput code. - Make sure POD members of Dispatcher\.* are properly initialized. - Avoid leaking var/resource references in DispatcherWithOutput\.*::operator(). BUG=None TEST=None Review URL: http://codereview.chromium.org/9965080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130849 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Fix IsBaseOf in output_traits.h. Previously, it may be used with forward declarations unintentionally and does wrong things silently. BUG=None TEST=None Review URL: http://codereview.chromium.org/10068004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132088 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Fix resource leaks in CDM implementation. Two fixes: 1) Add a PassRef constructor to pp::Buffer_Dev to deal with reference counting issues related to passing PP_Resources across the IPC proxy, and use it to avoid adding unnecessary references on PP_Resources. 2) Use the PassRef ScopedPPResource contructor in PluginInstance::Decrypt to avoid added an unnecessary reference on the buffer resource before it's passed to the plugin interface code. BUG=146200 TEST=PPB_Testing_Dev::GetLiveObjectsForInstance shows a stable live object count. Review URL: https://chromiumcodereview.appspot.com/10909068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155145 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Fix resource leaks in CDM implementation. Two fixes: 1) Add a PassRef constructor to pp::Buffer_Dev to deal with reference counting issues related to passing PP_Resources across the IPC proxy, and use it to avoid adding unnecessary references on PP_Resources. 2) Use the PassRef ScopedPPResource contructor in PluginInstance::Decrypt to avoid added an unnecessary reference on the buffer resource before it's passed to the plugin interface code. BUG=146200 TEST=PPB_Testing_Dev::GetLiveObjectsForInstance shows a stable live object count. Review URL: https://chromiumcodereview.appspot.com/10909068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155145 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Remove all the swap() stuff in the PPAPI C++ wrappers. Basically all of them are trivial and you can use the std::swap just as efficiently. Since this is unnecessary, we can reduce the complexity a bit. TEST=none BUG=54441 Review URL: http://codereview.chromium.org/5539001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68028 0039d316-1c4b-4281-b951-d872f2087c98 | 15 年前 | |
Migrating PPB_FileIO_Dev, PPB_FileRef_Dev, and PPB_FileSystem_Dev dependencies to PPB_FileIO, PPB_FileRef, and PPB_FileSystem. Also fixed some lint errors. Review URL: http://codereview.chromium.org/7248047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91733 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Migrating PPB_FileIO_Dev, PPB_FileRef_Dev, and PPB_FileSystem_Dev dependencies to PPB_FileIO, PPB_FileRef, and PPB_FileSystem. Also fixed some lint errors. Review URL: http://codereview.chromium.org/7248047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91733 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Migrating PPB_FileIO_Dev, PPB_FileRef_Dev, and PPB_FileSystem_Dev dependencies to PPB_FileIO, PPB_FileRef, and PPB_FileSystem. Also fixed some lint errors. Review URL: http://codereview.chromium.org/7248047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91733 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Modified the pepper file chooser API to support filtering files by extensions. Previously you could filter only by MIME type. This adds support for filtering by specific extensions as well, e.g. .txt,.html. This change is aligned with the web platform which now allows filtering by file extension for <input> elements (http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#attr-input-accept). This also changes the linux implementation of the file dialog (SelectFileDialogImplGTK). In the past, it would turn file extensions to filter into MIME types. However this is a bit silly because in FileSelectHelper we do the reverse (turn MIME types into a list of file extensions to filter by). It also prevents us from filtering by a specific extensions when this is really what is desired. BUG=129251 TEST= Review URL: https://chromiumcodereview.appspot.com/10414085 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@139434 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Modified the pepper file chooser API to support filtering files by extensions. Previously you could filter only by MIME type. This adds support for filtering by specific extensions as well, e.g. .txt,.html. This change is aligned with the web platform which now allows filtering by file extension for <input> elements (http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#attr-input-accept). This also changes the linux implementation of the file dialog (SelectFileDialogImplGTK). In the past, it would turn file extensions to filter into MIME types. However this is a bit silly because in FileSelectHelper we do the reverse (turn MIME types into a list of file extensions to filter by). It also prevents us from filtering by a specific extensions when this is really what is desired. BUG=129251 TEST= Review URL: https://chromiumcodereview.appspot.com/10414085 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@139434 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Add a query function for the scaling feature. We need to be able to query whether scaling is supported before creating a Graphics2D object so we know which code path to use. This just adds a function to do that checking. I also renamed Graphics2DDev to Graphics2D_Dev for consistency with the other Dev wrapper objects. TEST=none BUG=none Review URL: https://chromiumcodereview.appspot.com/10832428 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152829 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Add a query function for the scaling feature. We need to be able to query whether scaling is supported before creating a Graphics2D object so we know which code path to use. This just adds a function to do that checking. I also renamed Graphics2DDev to Graphics2D_Dev for consistency with the other Dev wrapper objects. TEST=none BUG=none Review URL: https://chromiumcodereview.appspot.com/10832428 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152829 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Coverity: Fix pass by value error in IMEInputEvent_Dev. CID=104063 TBR=brettw@chromium.org BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10421032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138697 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Coverity: Fix pass by value error in IMEInputEvent_Dev. CID=104063 TBR=brettw@chromium.org BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10421032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138697 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Add PPB_Memory_Dev. This is the first of a few CLs needed to pull MemAlloc and MemFree from PPB_Core. BUG=80610 TEST=ui_tests Review URL: http://codereview.chromium.org/7300010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91518 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Add PPB_Memory_Dev. This is the first of a few CLs needed to pull MemAlloc and MemFree from PPB_Core. BUG=80610 TEST=ui_tests Review URL: http://codereview.chromium.org/7300010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91518 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
PPAPI: Make PPB_MessageLoop_Dev::GetForMainThread work BUG=92909 TEST= Review URL: https://chromiumcodereview.appspot.com/10790078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154238 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
PPAPI: Make Printing_Dev::GetDefaultPrintSettings() const. Review URL: https://chromiumcodereview.appspot.com/10560008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142419 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
PPAPI: Make Printing_Dev::GetDefaultPrintSettings() const. Review URL: https://chromiumcodereview.appspot.com/10560008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142419 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Change the cpp wrappers of audio input/video capture to use CompletionCallbackWithOutput. And also fix a few bugs in the PP_ArrayOutput and CallbackWithOutput code. - Make sure POD members of Dispatcher\.* are properly initialized. - Avoid leaking var/resource references in DispatcherWithOutput\.*::operator(). BUG=None TEST=None Review URL: http://codereview.chromium.org/9965080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130849 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Change the cpp wrappers of audio input/video capture to use CompletionCallbackWithOutput. And also fix a few bugs in the PP_ArrayOutput and CallbackWithOutput code. - Make sure POD members of Dispatcher\.* are properly initialized. - Avoid leaking var/resource references in DispatcherWithOutput\.*::operator(). BUG=None TEST=None Review URL: http://codereview.chromium.org/9965080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130849 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Removed MemAlloc and MemFree from PPB_Core BUG=81610 TEST=Trybots Review URL: http://codereview.chromium.org/7349016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92554 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Create a VarPrivate interface to contain the scripting helper functions of Var. Currently, the old functions are left in Var. When people have a chance to move to this new API, we can delete them from Var. This also adds new enums for ARRAY and DICTIONARY vars, and makes the var C++ wrapper forward-compatible with them by refcounting any enums that it doesn't know about. Review URL: http://codereview.chromium.org/6823016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81068 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Pepper IME API for surrounding text retrieval. IME benefits from knowing what portion of text is selected inside a text editing plugin. This change is to implement a Pepper API for doing it. It consists of three API functions: 1. Browser asks plugins by PPP_TextInput_Dev::RequestSurroundingText() to send such info. 2. Plugin must reply the query by PPB_TextInput_Dev::UpdateSurroundingText(). 3. Additionally, plugin notifies the browser by PPB_TextInput_Dev::SelectionChanged() that the selection is changed. Typically triggers the steps 1->2. Intention of the API design is (1) to avoid synchronous IPC, and (2) to keep the room to implement it in an optimal and right way, that is, expensive send of selection text happens only when needed (= "IME requiring the info is on" + "selection indeed changed in the plugin"), though the current impl in the patch is not necessary like that (for sake of simplicity). The changes in the API is in: * ppapi/c/dev/ppb_text_input_dev.h * ppapi/c/dev/ppp_text_input_dev.h The browser side implementation mostly resides in: * content/renderer/render_view_impl.cc * content/renderer/pepper/pepper_plugin_delegate_impl.{h,cc} * webkit/plugins/ppapi/ppapi_plugin_instance.{h,cc} The other files are for wiring necessary cables. BUG=101101 TEST=Manual: make ppapi_example_ime and run ./your/chrome --register-pepper-plugins=\ "/path/to/ppapi_example_ime.plugin;application/x-ppapi-example-ime" \ --ppapi-out-of-process \ file:///path/to/ppapi/examples/ime/ime.html Try some IME that supports reconversion (e.g., Google Japanese Input on Windows). Review URL: http://codereview.chromium.org/8769003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126862 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Pepper IME API for surrounding text retrieval. IME benefits from knowing what portion of text is selected inside a text editing plugin. This change is to implement a Pepper API for doing it. It consists of three API functions: 1. Browser asks plugins by PPP_TextInput_Dev::RequestSurroundingText() to send such info. 2. Plugin must reply the query by PPB_TextInput_Dev::UpdateSurroundingText(). 3. Additionally, plugin notifies the browser by PPB_TextInput_Dev::SelectionChanged() that the selection is changed. Typically triggers the steps 1->2. Intention of the API design is (1) to avoid synchronous IPC, and (2) to keep the room to implement it in an optimal and right way, that is, expensive send of selection text happens only when needed (= "IME requiring the info is on" + "selection indeed changed in the plugin"), though the current impl in the patch is not necessary like that (for sake of simplicity). The changes in the API is in: * ppapi/c/dev/ppb_text_input_dev.h * ppapi/c/dev/ppp_text_input_dev.h The browser side implementation mostly resides in: * content/renderer/render_view_impl.cc * content/renderer/pepper/pepper_plugin_delegate_impl.{h,cc} * webkit/plugins/ppapi/ppapi_plugin_instance.{h,cc} The other files are for wiring necessary cables. BUG=101101 TEST=Manual: make ppapi_example_ime and run ./your/chrome --register-pepper-plugins=\ "/path/to/ppapi_example_ime.plugin;application/x-ppapi-example-ime" \ --ppapi-out-of-process \ file:///path/to/ppapi/examples/ime/ime.html Try some IME that supports reconversion (e.g., Google Japanese Input on Windows). Review URL: http://codereview.chromium.org/8769003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126862 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Change the cpp wrappers of audio input/video capture to use CompletionCallbackWithOutput. And also fix a few bugs in the PP_ArrayOutput and CallbackWithOutput code. - Make sure POD members of Dispatcher\.* are properly initialized. - Avoid leaking var/resource references in DispatcherWithOutput\.*::operator(). BUG=None TEST=None Review URL: http://codereview.chromium.org/9965080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130849 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Change the cpp wrappers of audio input/video capture to use CompletionCallbackWithOutput. And also fix a few bugs in the PP_ArrayOutput and CallbackWithOutput code. - Make sure POD members of Dispatcher\.* are properly initialized. - Avoid leaking var/resource references in DispatcherWithOutput\.*::operator(). BUG=None TEST=None Review URL: http://codereview.chromium.org/9965080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130849 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Plumb texture target to VideoDecodeAccelerator::Client Currently all VideoDecodeAccelerator::Clients use GL_TEXTURE_2D as their texture target. Unfortunately the Mac decoder only supports GL_TEXTURE_RECTANGLE_ARB texture targets. This CL allows decoders to choose which texture target they want. BUG=127414 TEST= Review URL: https://chromiumcodereview.appspot.com/10392141 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141258 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Plumb texture target to VideoDecodeAccelerator::Client Currently all VideoDecodeAccelerator::Clients use GL_TEXTURE_2D as their texture target. Unfortunately the Mac decoder only supports GL_TEXTURE_RECTANGLE_ARB texture targets. This CL allows decoders to choose which texture target they want. BUG=127414 TEST= Review URL: https://chromiumcodereview.appspot.com/10392141 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141258 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
pass CompletionCallbacks by reference (resubmitting https://chromiumcodereview.appspot.com/9866049/ -- previous failure looks like flake) CID=100006,100007 BUG=none TEST=none TBR=yzshen@chromium.org Review URL: https://chromiumcodereview.appspot.com/9965067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130156 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
pass CompletionCallbacks by reference (resubmitting https://chromiumcodereview.appspot.com/9866049/ -- previous failure looks like flake) CID=100006,100007 BUG=none TEST=none TBR=yzshen@chromium.org Review URL: https://chromiumcodereview.appspot.com/9965067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130156 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Implement HiDPI support in Pepper dev interface This patch requires WebKit patch https://bugs.webkit.org/show_bug.cgi?id=87874 (WebKit r121364) Expose device_scale_factor and css_scale_factor to Pepper plugins via a dev interface on View resource. Allow Pepper plugins to create a 2D graphics context with a scale factor so the plugins can render at device resolution rather than DIPs if they want. BUG=114673 TEST=browser_tests --gtest_filter="PPAPITest.*" TEST=browser_tests --gtest_filter="OutOfProcessPPAPITest.*" TEST=Build, run existing PPAPI plugin at 2x scale TEST=Build, run test HiDPI aware plugin to render at device rez, at 1x, 2x scale Review URL: https://chromiumcodereview.appspot.com/10544168 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144773 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Implement HiDPI support in Pepper dev interface This patch requires WebKit patch https://bugs.webkit.org/show_bug.cgi?id=87874 (WebKit r121364) Expose device_scale_factor and css_scale_factor to Pepper plugins via a dev interface on View resource. Allow Pepper plugins to create a 2D graphics context with a scale factor so the plugins can render at device resolution rather than DIPs if they want. BUG=114673 TEST=browser_tests --gtest_filter="PPAPITest.*" TEST=browser_tests --gtest_filter="OutOfProcessPPAPITest.*" TEST=Build, run existing PPAPI plugin at 2x scale TEST=Build, run test HiDPI aware plugin to render at device rez, at 1x, 2x scale Review URL: https://chromiumcodereview.appspot.com/10544168 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144773 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Convert resources to take an instance key instead of an Instance*. Review URL: https://chromiumcodereview.appspot.com/9381010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123795 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Add SetScale to PPB_WidgetDev, use scale for painting In order to allow for HiDPI-aware scrollbars, this patch allows the plugin to specify a scale factor used during widget paint operations. The widgets (of which Scrollbar is the only current instance) will continue to use the DIP coordinate system for events and sizing, which is consistent with their WebKit implementation. This change should maintain backward compat. with existing users of interface 'PPB_Wdiget(Dev);0.3' BUG=140833 TEST=Run pre-built (with 0.3 interfaces) PDF plugin and verify scrollbars Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=152495 Review URL: https://chromiumcodereview.appspot.com/10824386 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152889 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Add SetScale to PPB_WidgetDev, use scale for painting In order to allow for HiDPI-aware scrollbars, this patch allows the plugin to specify a scale factor used during widget paint operations. The widgets (of which Scrollbar is the only current instance) will continue to use the DIP coordinate system for events and sizing, which is consistent with their WebKit implementation. This change should maintain backward compat. with existing users of interface 'PPB_Wdiget(Dev);0.3' BUG=140833 TEST=Run pre-built (with 0.3 interfaces) PDF plugin and verify scrollbars Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=152495 Review URL: https://chromiumcodereview.appspot.com/10824386 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152889 0039d316-1c4b-4281-b951-d872f2087c98 | 13 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 | |
Make the PPP wrappers take an Instance*. I changed these to take InstanceHandles but this doesn't actually work. If you use them the recommended way, the module->instance mapping isn't set up by the time the constructors are called, so doing AddPerInstanceObject fails. Since these objects are all called on the main thread, there is no race condition with pp::Instance destruction and the implementation using a pointer is safe. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9481015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123828 0039d316-1c4b-4281-b951-d872f2087c98 | 14 年前 |