summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/webplugin_delegate_proxy.cc
Commit message (Collapse)AuthorAgeFilesLines
* Wave upload operations performed within ChromeFrame would cause the Wave ↵ananta@chromium.org2010-01-131-0/+1
| | | | | | | | | | | | | | | | application to freeze. This was because we were not passing the renderer routing id in the PluginMsg_Init params when the plugin was initialized. We need the routing id in ChromeFrame to be able to intercept network requests and route them via the host network stack. Fixes bug http://code.google.com/p/chromium/issues/detail?id=26375 Bug=26375 Review URL: http://codereview.chromium.org/541040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36130 0039d316-1c4b-4281-b951-d872f2087c98
* plugins: limit maximum window sizeevan@chromium.org2009-12-281-0/+10
| | | | | | | | | | | Even if plugins will crash when they are too large, we should try to have the renderer stay up. BUG=28606 Review URL: http://codereview.chromium.org/515043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35309 0039d316-1c4b-4281-b951-d872f2087c98
* Added Pepper 3D device that instantiates the GPU plugin and sends GLES2 ↵apatrick@google.com2009-12-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | commands to it via a command buffer. Added API for managing buffers to Pepper 3D device. Removed DCHECK from WebPluginImpl::SetWindow that checks against a windowless plugin being given a window handle. Please check this! Now an initially windowless plugin instance gets a handle when it requests a Pepper 3D context. Perhaps the window handle should be concealed from the underlying plugin isntance. Removed enable_gpu gyp variable and C macro. GPU code is always built on windows but not mac or linux. It is enabled at runtime with the --enable-gpu-plugin switch. Redesigned CommandBuffer interface so it exposes shared memory through a Buffer. This was necessary because Pepper has no notion of shared memory handles. The Buffer exposes the shared memory as both a handle (through base::SharedMemory) and the mapped address and size. Refactored CommandBufferEngine so mapped shared memory addresses and sizes are returned with a single call rather than two separate calls. Added 3D demo to pepper test plugin. TEST=try servers BUG=none Review URL: http://codereview.chromium.org/367002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35185 0039d316-1c4b-4281-b951-d872f2087c98
* Added CommandBufferProxy, CommandBufferStub. Replaced NPAPI with IPC for ↵apatrick@google.com2009-12-121-0/+15
| | | | | | | | | | | synchronous messages. WebPluginDelegateImpl can instantiate a command buffer. Removed remaining dependencies on NPAPI. TEST=none BUG=none Review URL: http://codereview.chromium.org/465040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34397 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid including gtk & glib headers in message_pump_glib.h, saves 1 sec on ↵mattm@chromium.org2009-12-041-0/+4
| | | | | | | | | | | do-nothing make. TEST=manual browser test, trybots BUG=none Review URL: http://codereview.chromium.org/464031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33851 0039d316-1c4b-4281-b951-d872f2087c98
* Send resource load notifications from plugins to devtools agent. This is a ↵yurys@chromium.org2009-12-031-5/+6
| | | | | | | | | | part of a fix which would allow to inspect plugin resources. BUG=2084 Review URL: http://codereview.chromium.org/435044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33672 0039d316-1c4b-4281-b951-d872f2087c98
* Add acknowledgement messages for PluginMsg_UpdateGeometry. On the Mac, usemark@chromium.org2009-11-301-9/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | these acknowledgements to know when it's safe to dump old TransportDIBs in the renderer process. The Mac TransportDIB implementation uses base::SharedMemory, which cannot be disposed of if an in-flight UpdateGeometry message refers to the shared memory file descriptor. BUG=27510, 26754 TEST=1. From bug 25710: a. Visit http://www.dkmsoftware.com/Yubotu.htm b. Click "Play Now" c. Resize vigorously. Expect: no sad plug-in icon. 2. Test case from bug 26754 (affected machines only): a. Visit http://news.google.com/ b. Click the [+] to the left of a YouTube link. On affected machines, you'll get a sad plug-in icon. c. Click the [+] to the left of a different YouTube link. Expect: no crash. 3. Test case from bug 26754 comment 9 (affected machines only): a. Have lots of bookmarks (import Safari defaults) b. Right-click on bookmark bar, and choose "Open All Bookmarks" Expect: no crash. This change may not actually fix the third test case. Review URL: http://codereview.chromium.org/417005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33264 0039d316-1c4b-4281-b951-d872f2087c98
* Duplicating the SetActiveURL() change from the renderer to the plugin ↵jschuh@chromium.org2009-11-141-1/+1
| | | | | | | | | | | process. (Should also fix a plugin callback that may be clearing the renderer's URL prematurely.) BUG=22033 TEST=None Review URL: http://codereview.chromium.org/384130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31971 0039d316-1c4b-4281-b951-d872f2087c98
* Upstreaming WebKit.gypyaar@chromium.org2009-11-121-7/+7
| | | | | | | | | | | | This mega patch contains a few simple but tightly dependent changes: 1. Deletion of webkit/api/WebKit.gyp. The file now lives in webkit.org. 2. Rename of webkit/webkit.gyp to webkit/webkit_glue.gyp. Having two webkit.gyp was a source of developer confusion. 3. Gyp dependencies are updated across chromium to point at the upstream WebKit.gyp and the renamed webkit_glue.gyp. 4. Some 200+ files include paths fixed to point to third_party/WebKit/WebKit/chromium instead of webkit/api. The later will be deleted in a subsequent patch. Review URL: http://codereview.chromium.org/387020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31749 0039d316-1c4b-4281-b951-d872f2087c98
* A large number of style nits in preparation for turning on automated cpplint.py.erg@google.com2009-11-111-2/+3
| | | | | | Review URL: http://codereview.chromium.org/385023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31669 0039d316-1c4b-4281-b951-d872f2087c98
* Fix partial updates of transparent plugin backgrounds on Macstuartmorgan@chromium.org2009-11-101-5/+8
| | | | | | | | | | | Applies the same flipping that fixed partial plugin drawing originally to backgrounds of transparent plugins, since it has the same relative flipping. BUG=25820 TEST=Visit a site with a transparent plugin (see bug for example) Review URL: http://codereview.chromium.org/372078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31561 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid a CHECK when the modal_loop_pump_messages_event handle comes in as ↵jam@chromium.org2009-11-021-0/+5
| | | | | | | | | NULL to the renderer. This happens with some "virus scanners". BUG=25583 Review URL: http://codereview.chromium.org/348046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30760 0039d316-1c4b-4281-b951-d872f2087c98
* Try to force plugins to use software rendering until we can supportamanda@chromium.org2009-10-291-0/+10
| | | | | | | | | | | hardware acceleration on the Mac. BUG=25406, 25092 TEST=Flash should no longer crash immediately after loading on sites with complex Flash applications. Review URL: http://codereview.chromium.org/339068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30493 0039d316-1c4b-4281-b951-d872f2087c98
* Push the native canvas into the plugin implementation. On Windows, this meansbrettw@chromium.org2009-10-231-17/+37
| | | | | | | | | | | | | | | using SkCanvas instead of an HDC. This way, the pepper implementation can use the more advanced blending of SkCanvas and avoid the Windows API. I did some refactoring in the standard plugin implementation to support this and make it as clean as I could. Hopefully the code is slightly clearer than before. TEST=none BUG=none Review URL: http://codereview.chromium.org/306027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29897 0039d316-1c4b-4281-b951-d872f2087c98
* Fix renderer hang if plugin process crashes while initializing a plugin.jam@chromium.org2009-10-221-9/+17
| | | | | | | BUG=25104 Review URL: http://codereview.chromium.org/315012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29806 0039d316-1c4b-4281-b951-d872f2087c98
* Delete glue/webview{_delegate}.hdarin@chromium.org2009-10-191-3/+4
| | | | | | | | | | R=dglazkov BUG=10033 TEST=none Review URL: http://codereview.chromium.org/293001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29390 0039d316-1c4b-4281-b951-d872f2087c98
* Turn NULL used as int to 0.phajdan.jr@chromium.org2009-10-131-6/+6
| | | | | | | | | | | | | (Excluding chrome/browser/...) Landing patch for Jacob Mandelson. Original review: http://codereview.chromium.org/195067 BUG=none TEST=base_unittests & app_unittests Review URL: http://codereview.chromium.org/267076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28810 0039d316-1c4b-4281-b951-d872f2087c98
* Move native_widget_types and gtk_native_view_id_manager from base/gfx tobrettw@chromium.org2009-10-111-1/+1
| | | | | | | | | | | | app/gfx in preparation for removing the base_gfx project. This also moves base/window_impl.cc to app/win/window_impl because this file shouldn't be in base. TEST=none BUG=none Review URL: http://codereview.chromium.org/273017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28691 0039d316-1c4b-4281-b951-d872f2087c98
* Move classes depending on Skia out of base/gfx and into app/gfx. Renamebrettw@chromium.org2009-10-071-1/+1
| | | | | | | | | | native_theme to native_theme_win since its Windows-specific. BUG=none TEST=none Review URL: http://codereview.chromium.org/259047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28300 0039d316-1c4b-4281-b951-d872f2087c98
* Fix scripting during NPP_Destroy. Note that if the plugin is making a call ↵jam@chromium.org2009-10-061-26/+21
| | | | | | | | | | to the renderer so this instance is in the callstack, destruction will have to be asynchronous and so scripting still won't work. This change also fixes use of PluginChannel after it's deleted (if this was the last instance). BUG=23713, 23706 TEST=added ui test Review URL: http://codereview.chromium.org/258026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28141 0039d316-1c4b-4281-b951-d872f2087c98
* Move various methods from glue/webview.h to api/public/WebView.h darin@chromium.org2009-10-011-1/+1
| | | | | | | | | | | | | | | | | | I'll re-order the methods in webview_impl.cc in a follow-up CL. I wanted to keep this one easy to review. SetBackForwardListSize is no longer necessary given that BackForwardListChromium.cpp doesn't care about its capacity. R=dglazkov BUG=10033 TEST=none Originally reviewed here: http://codereview.chromium.org/251051 Review URL: http://codereview.chromium.org/255042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27780 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 27705 - Move various methods from glue/webview.h to api/public/WebView.hmal@chromium.org2009-10-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | ** browser_tests started failing at this revision. See: http://build.chromium.org/buildbot/waterfall/builders/Chromium%20XP/builds/7697/steps/browser_tests/logs/stdio ** I'll reorder the methods in webview_impl.cc in a followup CL. I wanted to keep this one easy to review. SetBackForwardListSize is no longer necessary given that BackForwardListChromium.cpp doesn't care about its capacity. R=dglazkov BUG=10033 TEST=none Review URL: http://codereview.chromium.org/251051 TBR=darin@chromium.org Review URL: http://codereview.chromium.org/246060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27711 0039d316-1c4b-4281-b951-d872f2087c98
* Move various methods from glue/webview.h to api/public/WebView.hdarin@chromium.org2009-10-011-1/+1
| | | | | | | | | | | | | | | | I'll re-order the methods in webview_impl.cc in a follow-up CL. I wanted to keep this one easy to review. SetBackForwardListSize is no longer necessary given that BackForwardListChromium.cpp doesn't care about its capacity. R=dglazkov BUG=10033 TEST=none Review URL: http://codereview.chromium.org/251051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27705 0039d316-1c4b-4281-b951-d872f2087c98
* Hook up webkit/api/public/WebView.hdarin@chromium.org2009-09-301-3/+3
| | | | | | | | | | | | | | This change does not completely eliminate webkit/glue/webview.h. Instead, the old WebView extends from the new WebView temporarily as we complete the transition. R=dglazkov BUG=10033 TEST=none Review URL: http://codereview.chromium.org/257001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27620 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the need for cross process events in order to get plugin ↵jam@chromium.org2009-09-291-9/+3
| | | | | | | | | | processes to run nested message loops when a dialog is shown. Instead use an async message that's broadcast from the renderer to all plugin processes that are connected to it, and which is dispatched on the plugin IO thread to set a process-local waitable event. This fixes showModalDialog on Linux/Mac. BUG=15891 TEST=covered by UI tests, undef's them for POSIX Review URL: http://codereview.chromium.org/242043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27456 0039d316-1c4b-4281-b951-d872f2087c98
* Coverity: Initialize instance_id_ in the constructor.jhawkins@chromium.org2009-09-221-0/+1
| | | | | | | | | CID=6212 BUG=none TEST=none Review URL: http://codereview.chromium.org/208051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26858 0039d316-1c4b-4281-b951-d872f2087c98
* Fix regression of transparent plugins not displaying correctly.jam@chromium.org2009-09-101-3/+3
| | | | | | | BUG=21157 Review URL: http://codereview.chromium.org/203013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25830 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused ATL headers.jhawkins@chromium.org2009-09-091-12/+9
| | | | | | | | BUG=5027 TEST=none Review URL: http://codereview.chromium.org/194051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25761 0039d316-1c4b-4281-b951-d872f2087c98
* Take out the activex control.BUG=20259jam@chromium.org2009-09-081-3/+1
| | | | | | Review URL: http://codereview.chromium.org/200031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25650 0039d316-1c4b-4281-b951-d872f2087c98
* This changelist fixes some issues with the NPAPI WMP plugin work in Chrome. ↵jam@chromium.org2009-09-041-58/+39
| | | | | | | | | | | | The first is that we need to disable windowless mode since it doesn't work in the NPAPI plugin (Safari does this as well, and sites don't use windowless for Firefox). The second is to make UpdateGeometry message synchronous for WMP. The problem I saw was that while handling that message, the plugin might disaptch a NPObject Invoke method to play a video, which WMP doesn't expect and it leads to the video never playing. While touching these files, I made some small cleanup by reverting the change that made WebPluginProxy not have a WebPluginDelegateImpl pointer, which added a bunch of unnecessary methods to WebPluginDelegate. BUG=20259 TEST=use --no-activex and try playing the videos on http://www.nana10.co.il/Section/?SectionID=10847&sid=235 Review URL: http://codereview.chromium.org/196012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25433 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate remaining WebCore dependencies from webplugin_impl.ccdarin@chromium.org2009-09-021-11/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduces WebPluginPageDelegate to hold the methods that only existed on WebViewDelegate to allow WebPluginImpl to talk to the RenderView. This enables us to eliminate those methods from WebViewDelegate, which eliminates the last dependency on gfx/ native_widget_types.h in our WebKit interface! WebViewDelegate grows a CreatePlugin method that returns a WebKit::WebPlugin. It loses its CreatePluginDelegate method, which now lives on WebPluginPageDelegate. This change makes RenderView use WeakPtr when it hands itself to each WebPluginDelegateProxy and WebPluginImpl instance. This makes the memory management simpler. This change also moves various WebPlugin* interfaces defined in webkit/glue into the webkit_glue namespace. This was to help reduce confusion with similarly named types in the WebKit namespace. WebKit::WebPluginParams is added to contain the set of parameters used to construct a plugin. WebPluginContainer gets a couple more methods to allow us to avoid WebCore dependencies in WebPluginImpl. R=jam BUG=10036 TEST=none Review URL: http://codereview.chromium.org/181014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25184 0039d316-1c4b-4281-b951-d872f2087c98
* Replace the RenderProcessHost.PID function that returns the OS-generatedbrettw@chromium.org2009-08-311-3/+2
| | | | | | | | | | | | | | | | | | | | process ID with an internally-generated id() function. This allows us the guarantee that the IDs are unique over the entire run of the application. This also cleans up some code associated with managing the PID. The main potentially interesting change is now the PID is set uniquely for every creation of RenderProcessHost. It used to be set cleared if the process went away, and re-set if the process was re-created. The ID generation is in ChildProcesInfo so it is also unique between workers and plugins. I had to change some significant things in resource_dispatcher_host_unittest to take into account this new generation of IDs. BUG=17828 TEST=none Review URL: http://codereview.chromium.org/160203 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24899 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Fix a ton of compiler warnings."tony@chromium.org2009-08-281-6/+6
| | | | | | | | | | | This reverts commit r24792. TBR=estade Review URL: http://codereview.chromium.org/179028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24796 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a ton of compiler warnings.estade@chromium.org2009-08-281-6/+6
| | | | | | | | | | | | | | | Most of these are classes with virtual methods lacking virtual destructors or NULL used in non-pointer context. BUG=none TEST=app_unittests && base_unittests --gtest_filter=-ConditionVariableTest.LargeFastTaskTest patch by Jacob Mandelson <jlmjlm [at] gmail> http://codereview.chromium.org/171028/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24792 0039d316-1c4b-4281-b951-d872f2087c98
* More refactoring for WebPlugin.darin@chromium.org2009-08-271-11/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL eliminates direct calls to WebPluginDelegate::DidFinishLoadWithReason from WebFrameLoaderClient. This CL also moves WebDataSourceImpl into webkit/api/src. That change was needed so that WebPluginContainerImpl can add a WebPluginLoadObserver to it, which WebFrameLoaderClient uses to communicate back to the WebPlugin upon completion of the frame load. WebViewDelegate::DidFinishLoadWithReason is modified to include url and notify_data parameters, eliminating the URLRequestRouted method. This is done so that we can support overlapping NPN_GetURLNotify targetting different frames. WebPluginContainer grows an executeScriptURL method to deal with javascript: URLs. NOTE: I'm working on some UI tests to better cover the case of overlapping NPN_GetURLNotify calls. R=jam BUG=10036 TEST=none yet Review URL: http://codereview.chromium.org/174514 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24655 0039d316-1c4b-4281-b951-d872f2087c98
* Implement WebPluginDelegateProxy::BackgroundChanged for Mac.stuartmorgan@chromium.org2009-08-261-33/+71
| | | | | | | | | | | Shares as much as possible with the Linux implementation. Adjusts the bounds-checking done on Linux to correctly handle cases where the damage rect isn't left-aligned. BUG=18193 TEST=Transparent plugins should still repaint when changed. Review URL: http://codereview.chromium.org/173427 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24411 0039d316-1c4b-4281-b951-d872f2087c98
* linux: new socket/plug code for windowed pluginspiman@chromium.org2009-08-251-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | This CL reworks the GtkSocket/GtkPlug code for windowed plugins on linux. Instead of having the plugin ask the browser to create a socket to plug into, it simply creates a plug and sends it to the browser. The browser creates a socket and attaches the plug when the socket becomes realized This fixes 2 main issues: - we can create windowed plugins in background tabs (Issue 16125) - we can detach tabs with windowed plugins and reattach them (Issue 17110) I reworked the IPCs, so it removes some amount of linux-specific things. We also need less synchronous IPCs to create/destroy plugins, so that should be a bit faster. In particular, I removed the plugin pid map, and instead made sure the renderer always destroys the plugin containers if the plugin process crashes - they will be destroyed if the renderer process crashes. Let me know if you have an issue with that. Also, the intermediate plug/socket creation now happens in webplugin_delegate_impl_gtk. That means test_shell uses it as well. It made the code a lot simpler, and means we're testing it as well, albeit with a bit of extra overhead. Bonus: I found a big bad bug in the GtkPluginContainer that made its width/height alias with some internal gtk structures. That was certainly causing some amounts of bugs. Bonus 2: scrolling now looks more in sync with the rest of the page, though I'm not exactly sure which part caused that. BUG=16125,17110 TEST=a lot of manual testing involving YouTube videos Review URL: http://codereview.chromium.org/174295 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24309 0039d316-1c4b-4281-b951-d872f2087c98
* More removal of WebCore usage from webplugin_impl.ccdarin@chromium.org2009-08-211-4/+4
| | | | | | | | | | | | Adds a few helper methods on WebFrame. R=jam BUG=10036 TEST=none Review URL: http://codereview.chromium.org/173152 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23956 0039d316-1c4b-4281-b951-d872f2087c98
* linux: implement WebPluginDelegateProxy::BackgroundChangedpiman@chromium.org2009-08-141-5/+51
| | | | | | | | | | | That makes windowless transparent flash much better. BUG=19157 Review URL: http://codereview.chromium.org/165522 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23461 0039d316-1c4b-4281-b951-d872f2087c98
* linux/mac: Fix race condition when destroying the renderer<->plugin channelpiman@chromium.org2009-08-111-0/+8
| | | | | | | | | | | | | | | | | | | | | | | There is a race condition at plugin destruction on posix: 1- (renderer) WebPluginDelegateProxy1 opens a channel to the plugin 2- (plugin) new channel created, sends FD1 to renderer 3- (renderer) WebPluginDelegateProxy1 receives FD1, establishes the channel name -> FD1 mapping. [...] 4- (renderer) WebPluginDelegateProxy1 asks the plugin to destroy an instance, and schedules self for delayed deletion which will release the channel and remove the mapping. 5- (plugin) this was the last instance, plugin closes its end of the channel, removes its mapping. 6- (renderer) WebPluginDelegateProxy2 opens a channel to the plugin 7- (plugin) new channel created, sends FD2 to renderer 8- (renderer) WebPluginDelegateProxy2 receives FD2, establishes the channel name -> FD2 mapping *ASSERT* because the mapping already exists (to FD1) 9- (renderer) WebPluginDelegateProxy1 deleted, causes channel host destruction and removing of channel name -> FD1 mapping The channel host destruction in (9) needs to happen before (8). This CL does that. BUG=18491 Review URL: http://codereview.chromium.org/165280 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23102 0039d316-1c4b-4281-b951-d872f2087c98
* Add some helper methods for constructing a WebCString from UTF16 input,darin@chromium.org2009-08-111-1/+1
| | | | | | | | | | | | | | | | assuming a UTF16 to UTF8 conversion. Also, includes a .utf16() method on WebCString to get a UTF16 string out. These methods mirror the similar methods for UTF8 on WebString. Make use of these conversion methods in a few more places. R=dglazkov BUG=none TEST=none Review URL: http://codereview.chromium.org/164274 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23010 0039d316-1c4b-4281-b951-d872f2087c98
* Switch to WebFrame from the WebKit API.darin@chromium.org2009-08-101-2/+2
| | | | | | | | | | | | | | | I tried to avoid unnecessary changes in this CL to help make it easier to review. As part of this CL, glue/webtextinput* are folded into WebFrame / WebFrameImpl. R=dglazkov BUG=10034 TEST=none Review URL: http://codereview.chromium.org/164225 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22896 0039d316-1c4b-4281-b951-d872f2087c98
* When the plugin crashes, cleanup references to its window in the renderer.piman@chromium.org2009-08-061-1/+9
| | | | | | | | | This avoids spurious messages when the plugin crashes, and potential issues (plugin crashes, the HWND/XID gets destroyed, a new one gets created by a new instance and gets the same HWND/XID, the browser operates on the new one instead of the old one). Review URL: http://codereview.chromium.org/160614 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22688 0039d316-1c4b-4281-b951-d872f2087c98
* Another attempt at landing this patch.ananta@chromium.org2009-08-041-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | The reliability tests regressions caused by this patch have been addressed by the upstream bug fix https://bugs.webkit.org/show_bug.cgi?id=27769 The IPCs for carrying data requested by plugins have been changed from synchronous IPCs to asynchronous IPCs. This fixes bug http://code.google.com/p/chromium/issues/detail?id=14323, where the Flash plugin would not render content on the page if these IPCs were processed while the plugin waited for sync calls like NPN_Evaluate to return. This CL also fixes the following bugs, which were crashes in reliability test runs when this patch was landed last time. http://code.google.com/p/chromium/issues/detail?id=18058 http://code.google.com/p/chromium/issues/detail?id=18059 The crash happens because of NPP_Write calls issued to the plugin while it is waiting for an NPN_Invoke call to return in the context of NPP_NewStream. Inspecting the safari plugin implementation revealed that they defer the resource load before calling the plugin and restore it on return. We emulate this behavior via an IPC sent from the plugin which serves as an acknowledgement. Test=covered by UI tests. Bug=14323,18058,18059 Review URL: http://codereview.chromium.org/159746 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22369 0039d316-1c4b-4281-b951-d872f2087c98
* Replace WebPluginDelegateProxy::BackgroundChanged NOTIMPLEMENTED with a bug ↵stuartmorgan@google.com2009-07-311-2/+5
| | | | | | | | | | | | | comment on Mac This is a big source of console spew, so we should turn it off before enabling plugins by default. BUG=18193 TEST=No "Not implemented reached" spew to console for WebPluginDelegateProxy::BackgroundChanged Review URL: http://codereview.chromium.org/159724 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22183 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Mac plugin background snapshotsstuartmorgan@google.com2009-07-311-0/+5
| | | | | | | | | BUG=none TEST=Compose an email in Gmail with plugins enabled; scroll around and mouse over the "Add attachment" link; it should always draw correctly instead of sometimes showing another part of the page. Review URL: http://codereview.chromium.org/159712 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22178 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 22041 as it caused plugin crashes in reliability test runs.ananta@chromium.org2009-07-301-2/+4
| | | | | | | | | | Also reverting 22065/22046/22041 which are changes to knowncrashes.txt. TBR=huanr Review URL: http://codereview.chromium.org/160418 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22109 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the sad tab so that it draws right-side-up on the Macstuartmorgan@google.com2009-07-301-0/+5
| | | | | | | | | BUG=none TEST=Kill a plugin process; sad tab should be right-side up. Review URL: http://codereview.chromium.org/159611 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22062 0039d316-1c4b-4281-b951-d872f2087c98
* Another attempt at landing this patch. ananta@chromium.org2009-07-301-4/+2
| | | | | | | | | | | | | | | | | | | | | | The reliability tests regressions caused by this patch have been addressed by the upstream bug fix https://bugs.webkit.org/show_bug.cgi?id=27769 The IPCs for carrying data requested by plugins have been changed from synchronous IPCs to asynchronous IPCs. This fixes bug http://code.google.com/p/chromium/issues/detail?id=14323, where the Flash plugin would not render content on the page if these IPCs were processed while the plugin waited for sync calls like NPN_Evaluate to return. Test=covered by UI tests. Bug=14323 Review URL: http://codereview.chromium.org/160338 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22041 0039d316-1c4b-4281-b951-d872f2087c98
* linux: fix plugins crash: 0 is a valid shm handle.piman@chromium.org2009-07-301-3/+3
| | | | | | | Review URL: http://codereview.chromium.org/159487 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22037 0039d316-1c4b-4281-b951-d872f2087c98