Commit Graph

377 Commits

Author SHA1 Message Date
Oleg Romashin
09890fa9b9 Bug 616700 - Transparent plugins rendering not clearing surface correctly. r=roc a=npodb 2010-12-12 17:50:13 +02:00
Benjamin Smedberg
104fd5dd08 Bug 614979 - Flash plugin crashes because we don't destroy the plugin window right after NPP_Destroy, which means that messages are being delivered and causing async messages to be queued after NPP_Destroy. Destroy the window earlier, r=jimm a=blocker 2010-12-09 09:54:26 -05:00
Benjamin Smedberg
d44a88b3a0 Bug 556194 - Use-after-free of PluginInstanceChild::mAsyncCallMutex - don't clear the pending async calls until after NPP_Destroy is called, because it is a synchronization point. r=cjones a=blocker 2010-12-07 10:05:56 -05:00
Jim Mathies
aee13a8cd4 Bug 604303 - Trap GetWindowInfo calls in flash and return browser window metrics similar to what we returned prior to the landing of bug 130078. r=bent, a=betaN. 2010-12-06 18:50:56 -06:00
Jim Mathies
dde88dffd2 Bug 604303 - Fixup linux expose quirk to use PluginModuleChild quirks system. r=karlt, a=betaN. 2010-12-06 18:50:53 -06:00
Jim Mathies
7a1e8e8157 Bug 604303 - Move plugin quirks from PluginInstanceChild to PluginModuleChild. r=bsmedgerg, a=betaN. 2010-12-06 18:50:47 -06:00
Robert O'Callahan
26240320bc Bug 615417. Postpone AsyncSetWindow processing until we're not in the middle of painting the plugin. r=bsmedberg a=pavlov 2010-12-05 21:57:33 +00:00
Josh Aas
4158076363 Bug 615881: Fix several bugs related to the handling of NPAPI's NPPluginFuncs structure. r=bsmedberg a=blocking2.0final+ 2010-12-03 00:20:59 -05:00
Ryan VanderMeulen
5de9ca5fd4 Bug 578546 - Fix more MSVC warning spam by removing unneeded declarations. r=cjones a=benjamin 2010-11-16 10:21:53 +01:00
Benjamin Smedberg
86502fd49e Bug 611593 - Topcrash @ PluginInstanceChild::AnswerNPP_Destroy because we were failing to clear mCurrentInvalidateTask in InvalidateRectDelayed. r=smaug a=blocking2.0 2010-11-15 09:18:33 -05:00
Benjamin Smedberg
00cd9aa6b2 Bug 611033 - Don't retain the plugin surface beyond the lifetime of the PluginInstanceParent: we only guarantee that the plugin X socket will kept alive until PluginModuleParent::ActorDestroy, r=karlt 2010-11-11 08:43:54 -05:00
Benjamin Smedberg
252c343281 Bug 611206 - Send the plugin information about mouse position changes when we scroll, even when we don't need to repaint the plugin, r=karlt 2010-11-15 09:41:18 -05:00
Ehsan Akhgari
6c2e6b0a79 Bug 610556 - Linker errors on shared builds with NS_SetDllDirectory; r=khuey a=bsmedberg
--HG--
rename : toolkit/xre/nsSetDllDirectory.cpp => xpcom/base/nsSetDllDirectory.cpp
rename : toolkit/xre/nsSetDllDirectory.h => xpcom/base/nsSetDllDirectory.h
2010-11-09 21:02:09 -05:00
Mike Hommey
d2876a53cc Bug 610951 - Avoid c++0x compilers to fail on narrowing conversions inside {} in PluginInstanceChild.cpp. r=jst,a=jst 2010-11-11 09:20:03 +01:00
Benjamin Smedberg
abe5e4d05f Final merge of bug 596451. a=blocking2.0 - Asynchronous layer-based painting on Windows. Various pieces r=josh/romaxa/karlt/jmathies/roc.
This merge includes the fix for bug 583109 - Add visibility notifications for plugins, so that asynchronous painting can be suspended when plugins are not visible. This collaterally fixes bug 606285, hulu homepage doesn't paint with async layers.

This changeset only implements asynchronous painting for out-of-process plugins. In-process painting will be implemented as a followup. Note that it is still possible to disable asynchronous layers on Windows by setting the preference mozilla.plugins.use_layers to false, but my intention is to remove this preference and sync-painting codepaths soon in a followup.
2010-11-10 10:29:09 -05:00
Benjamin Smedberg
2630a2b7e0 Fix review comments from bug 583109 (changeset 6ff3fcbb7845), comment 46. 2010-11-09 09:36:33 -05:00
Benjamin Smedberg
3c717e39c6 Merge mozilla-central into the branch for asynchronous plugin painting on Windows. 2010-11-05 15:56:28 -04:00
Benjamin Smedberg
3c4bb23cb4 Bug 606285 and Bug 583109 - Send the "visible" notification when painting with async layers, so that when a plugin goes from invisible to visible it starts sending asynchronous paints. Suspend sending surface updates for asynchronous plugins when they are invisible, and set the empty clipRect so that the plugin knows that drawing is suspended per the new API. Assume that plugins are visible again when a Paint or BuildLayer call is received. r-pending=karlt 2010-11-05 10:40:55 -04:00
Benjamin Smedberg
c71c0f761f Merge mozilla-central to the branch for bug 596451. 2010-10-28 10:05:20 -04:00
Benjamin Smedberg
6a2d751508 Bug 596451 part K - Make sure we set up the same plugin quirks for async plugin rendering that we do in AnswerNPP_SetWindow (fixes Flash/Silverlight context menus and mouse pointers), r=jmathies 2010-10-27 16:56:48 -04:00
Benjamin Smedberg
5276be66cf Build bustage from bug 596451 part I - always return a value from PluginInstanceChild::ReadbackDifferenceRect. 2010-10-27 15:27:33 -04:00
Benjamin Smedberg
d7c2cff52f Bug 596451 part H - Make our quirk of silverlight transparent by default active in the plugin process, to match the logic in nsNPAPIPluginInstance. This makes the Microsoft Surface website paint correctly. r=jimm 2010-10-27 09:13:53 -04:00
Benjamin Smedberg
112f42048c Bug 596451 part F - fix mouse/window positioning and remove the Silverlight quirk by changing the logical->device offset before painting, r=jimm 2010-10-27 09:09:37 -04:00
Benjamin Smedberg
88aabb1147 Bug 596451 part I - Read back from the current Windows surface, instead of repainting the entire client area every time, r-pending=jmathies 2010-10-27 09:09:15 -04:00
Benjamin Smedberg
d8be33b109 Bug 596451 part E - Implement transparency using DIBs with builtin transparency. Flash at least does this correctly, and since nobody else really uses windowless transparency, this is going to be the Way It Is. r-pending=jimm/karlt 2010-10-27 09:03:09 -04:00
Jim Mathies
376c582072 No bug, remove left over printf debug statement from PluginInstanceChild. r=me, a=nobug. 2010-10-27 13:32:45 -05:00
Benjamin Smedberg
2192686320 Non-Windows build bustage fix from bug 596451 part D - base::SharedMemoryHandle is not available to IPDL on non-Windows, so use typedefs. 2010-10-25 15:12:25 -04:00
Benjamin Smedberg
4a85b8746d Bug 596451 part D - Hook up asynchronous plugin painting on Windows. This part allows opaque plugins to paint correctly. r=jmathies 2010-10-25 13:57:13 -04:00
Benjamin Smedberg
dc418f86d1 Review comment from bug 596451 part C - the XSync is required so that pending composition using this surface is complete before the surface is re-used by the plugin. 2010-10-15 14:35:46 -04:00
Benjamin Smedberg
452a909681 Bug 596451 part C - simplify the behavior of the returning surface from Show, because it's only used to hand back ownership of IPDL shared memory. 2010-10-14 14:14:23 -04:00
Benjamin Smedberg
a37161d8e3 Merge mozilla-central with the asynchronous plugins painting branch. 2010-10-13 10:45:01 -04:00
Josh Aas
fd750ae218 Bug 610238: Sync to npapi-headers rev 31. r=bsmedberg a=blocking2.0betaN+ 2010-11-09 10:26:44 -05:00
Chris Jones
339106b788 Bug 562424: Switch IPDL interfaces to infallible TArray. r=bent a=blocking 2010-11-08 20:49:00 -06:00
Chris Jones
84bc5433b3 Bug 598862, part 3: Have plugin parents keep a 'proxy ref' to plugin X resources by duping the plugin's X socket. r=karlt 2010-11-08 20:48:59 -06:00
Ehsan Akhgari
f401254d50 Bug 603679 - Fix a regression causing the Shockwave plugin to fail to load; r=bsmedberg a=blocking-beta8+ 2010-11-04 14:45:51 -04:00
Benjamin Smedberg
e7d497dbc0 Bug 596451 part B - UseAsyncPainting really shouldn't need to dig very far or use an outparam, r=romaxa 2010-09-21 17:10:45 -04:00
Benjamin Smedberg
5df0592ad3 Bug 596451 part A - fix PluginInstanceChild to use bools, r=jimm/josh 2010-09-21 12:03:16 -04:00
Oleg Romashin
bf2134a854 Bug 598227 - Add support NPP_ImageDraw API for Maemo5. r=dougt a=blocking-fennec 2010-09-23 16:06:41 -07:00
Josh Aas
519b47a968 Bug 598223: Gracefully handle the failure of OOP plugins that negotiate Carbon NPAPI. r=cjones r=bsmedberg a=2.0-b7 2010-09-23 01:27:59 -04:00
Josh Aas
5c84bcf9f6 Bug 590057: Add support for loading plugins of a different architecture than the host browser on Mac OS X. r=cjones a=blocking-b7 2010-09-15 23:09:19 -07:00
Oleg Romashin
5a225313ad Bug 556487 - Plugin Child/Parent async implementation. r=roc a=blocking2.0 2010-09-15 09:02:49 -07:00
Oleg Romashin
d2b8ff70b8 Bug 556487 - Disable layers for non-ipc API. r=roc a=blocking2.0 2010-09-15 09:02:47 -07:00
Oleg Romashin
785c6952f6 Bug 556487 - Plugin Child/Parent async API. r=roc,jones.chris.g a=blocking2.0 2010-09-15 09:02:44 -07:00
Josh Aas
80863dcb8d Bug 594635: Fixes for OOP Core Animation NPAPI, fixes Quicktime plugin on Mac OS X. r=benwa a=josh/johnath 2010-11-01 09:47:23 -04:00
Jim Mathies
4398c466c9 Bug 572417 - Reset mouse capture when entering full screen mode in flash. r=bsmedberg, a=betaN. 2010-10-07 02:03:18 -05:00
Oleg Romashin
53b80cff95 Bug 599202 - Add support NPP_ImageDraw API for Maemo6. r=dougt a=npodb
--HG--
extra : rebase_source : 8486484c5c2bd25a1e1b63859a62bf41787e7004
2010-10-05 09:15:49 +03:00
Jim Mathies
70cc2cf4f8 Bug 596094 - Restore plugin subclass when Flash resets it in full screen mode (ipc enabled case). r=bent, a=betaN 2010-10-21 16:52:48 -05:00
Benjamin Smedberg
9c6b634f34 Revert bug 595337 because of persistent leaks running mochitests, and bug 556487 because of in-process test failures (crashes) and a reftest failure. 2010-09-14 14:50:24 -07:00
Oleg Romashin
b48ea2580b Bug 556487 - Plugin Child/Parent async implementation. r=roc a=blocking2.0 2010-09-14 12:01:10 -07:00
Oleg Romashin
d80d6312b3 Bug 556487 - Plugin Child/Parent async API. r=roc,jones.chris.g a=blocking2.0 2010-09-14 12:01:05 -07:00