summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/render_process.cc
Commit message (Collapse)AuthorAgeFilesLines
* Linux: Limit the size of the shared memory segment a renderer will request.estade@chromium.org2009-06-171-2/+25
| | | | | | | | | TEST=everything behaves the same, and you don't sad tab when resizing a very large autocomplete popup BUG=13805 Review URL: http://codereview.chromium.org/125274 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18660 0039d316-1c4b-4281-b951-d872f2087c98
* Adds kind-of-live thumbnail generation for a potential tab switcher.brettw@chromium.org2009-06-161-16/+1
| | | | | | | | | | | | | | | | | | | | This listens to tab events and tries to keep thumbnails ready to go. See thumbnail_generator.cc for a more detailed design. This adds a painting observer to the RenderWidgetHost to enable this new behavior, as well as a notification to allow the thumbnail generator to hook its observer in. There is also a new notification that a backing store has been disabled, which required making the backing stores know about their owning widget hosts. This component is currently disabled. We just need to uncomment the member in Profile and it will start to work. Original review: http://codereview.chromium.org/118420 Review URL: http://codereview.chromium.org/126101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18540 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on DevTools Profiler.mnaganov@chromium.org2009-06-081-1/+3
| | | | | | | | | | | Works on Windows and Linux. On Mac V8's sampling doesn't work with Chromium due to an unknown reason. BUG=none TEST=none Review URL: http://codereview.chromium.org/118384 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17866 0039d316-1c4b-4281-b951-d872f2087c98
* ipc: use strings, not wstrings for channel ids.evan@chromium.org2009-06-041-1/+1
| | | | | | | | | | They're ASCII anyway. TEST=covered by existing tests Review URL: http://codereview.chromium.org/119131 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17682 0039d316-1c4b-4281-b951-d872f2087c98
* Move WebMediaPlayerClientImpl files to WebKit API src location.darin@chromium.org2009-05-181-5/+3
| | | | | | | | | | | This involves adding a temporary glue function, which will be removed once WebFrame / WebView are part of the WebKit API. R=hclam Review URL: http://codereview.chromium.org/115482 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16336 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: enable out of process dev tools by default. Take 2.pfeldman@chromium.org2009-05-131-0/+5
| | | | | | Review URL: http://codereview.chromium.org/115292 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15947 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 15843: chrome performance regression.pfeldman@chromium.org2009-05-121-5/+0
| | | | | | Review URL: http://codereview.chromium.org/113284 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15879 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: enable out of process dev tools by default.pfeldman@chromium.org2009-05-121-0/+5
| | | | | | Review URL: http://codereview.chromium.org/115231 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15843 0039d316-1c4b-4281-b951-d872f2087c98
* linux: make --single-process mean in-process renderer.evan@chromium.org2009-04-271-0/+8
| | | | | | | | | | | | | | | | | | Since we can't have in-process plugins on Linux, let's make single-process do as much of a single process as possible. The alternative is detecting and erroring out on --single-process, then adding a new flag and changing all of the other code that currently examines --single-process to examine both the new flag and --single-process. That seems like a lot of extra code and source of potential error. Note that we print out a warning indicating this on --single-process in the LINUX case. Review URL: http://codereview.chromium.org/100053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14645 0039d316-1c4b-4281-b951-d872f2087c98
* Move the ffmpeg loading function into media library.ajwong@chromium.org2009-04-181-37/+6
| | | | | | | | This will allow us to hide the platform specific library loading code from the main chrome code. Review URL: http://codereview.chromium.org/69027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13991 0039d316-1c4b-4281-b951-d872f2087c98
* Removing --enable-video and instead relying on having DLLs present.scherkus@chromium.org2009-04-101-1/+1
| | | | | | | | | | | | I measured a ~10ms startup regression when the DLLs are not present and a ~20ms regression when the DLLs are present and loaded in render_process.cc. Not sure how else to tackle this problem since we need these DLLs loaded before the sandbox is engaged. Review URL: http://codereview.chromium.org/63101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13542 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Move IPC code to ipc/"agl@chromium.org2009-04-031-2/+2
| | | | | | | This reverts commit r13062 which, unsurprisingly, broke the build. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13063 0039d316-1c4b-4281-b951-d872f2087c98
* Move IPC code to ipc/agl@chromium.org2009-04-031-2/+2
| | | | | | | (No review URL: Rietvelt couldn't cope) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13062 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the gears in renderer process code. This allows me to do some ↵jam@chromium.org2009-03-131-15/+0
| | | | | | | | cleanup in how resource dispatching happens in a future cl. Review URL: http://codereview.chromium.org/42158 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11601 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGE.maruel@google.com2009-03-101-1/+2
| | | | | | | Fix files with lines > 80 cols. Part 2. Review URL: http://codereview.chromium.org/40226 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11326 0039d316-1c4b-4281-b951-d872f2087c98
* POSIX: Rewrite IPC's interaction with FileDescriptoragl@chromium.org2009-03-051-4/+4
| | | | | | | | | | | | | | | | | | | The FileDescriptor API is clearly too hard to use. It's the only IPC data type which is non-POD and serialising an invalid file descriptor is fatal to Chrome on POSIX. The use of Maybe is possibly non-obvious to non-functional programmers. This patch merges Maybe and FileDescriptor so that serialising invalid file descriptors is permitted and results in -1 at the other end. (Serialising /closed/ a file descriptor is still fatal.) Also, it adds a pointer in base/file_descriptor.h to instructions for its use with IPC. Although it's generally bad practice to mention IPC in base, in this case I cannot find another suitable location. Review URL: http://codereview.chromium.org/39208 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11041 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor v8 extensions so that they aren't in the WebCore namespace, and can ↵asargent@chromium.org2009-03-051-4/+0
| | | | | | | | | | | call functions in the rest of Chromium code without having to go through ChromiumBridge (which now lives upstream in the WebKit repository). R=darin,mbelshe Review URL: http://codereview.chromium.org/40132 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11040 0039d316-1c4b-4281-b951-d872f2087c98
* Dynamically load FFmpeg DLLs if present and --enable-video is on.scherkus@chromium.org2009-02-251-3/+37
| | | | | | | | If any of the DLLs fail to load or are not present, video is disabled. Review URL: http://codereview.chromium.org/24025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10376 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor code from RenderThread and PluginThread and move it to ChildThread. ↵jam@chromium.org2009-02-211-42/+38
| | | | | | | | | | | ChildProcess now owns the ChildThread, which removes duplicate code and simplifies things. Clean up ChildProcess, there really was no need for all the templates and statics in it and its subclasses. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=10080 Review URL: http://codereview.chromium.org/21502 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10144 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 10080.jam@chromium.org2009-02-201-36/+42
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10082 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor code from RenderThread and PluginThread and move it to ChildThread. ↵jam@chromium.org2009-02-201-42/+36
| | | | | | | | | ChildProcess now owns the ChildThread, which removes duplicate code and simplifies things. Clean up ChildProcess, there really was no need for all the templates and statics in it and its subclasses. Review URL: http://codereview.chromium.org/21502 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10080 0039d316-1c4b-4281-b951-d872f2087c98
* Bitmap transportagl@chromium.org2009-02-201-56/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch reworks bitmap transport on all platforms. Linux and Mac are switched from serialising bitmaps over the IPC channel to using shared memory. All platforms gain a shared memory mapping cache on the host side. The concept of a TransportDIB (device independent bitmap) is added to encapsulate most of the platform specifics. On Linux, we use SysV shared memory. This is because X shared pixmaps, which predate POSIX SHM, can only use SysV. By using SysV between renderer and browser, we open up the possibility to map the shared memory directly from the renderer to the X server. On Mac, we use POSIX shared memory. However, since this needs filesystem access and the Mac renderer is sandboxed from the filesystem, we add two new messages from renderer -> browser: The first, AllocTransportDIB, synchronously creates a transport DIB in the browser and passes a handle back to the renderer. The second, FreeTransportDIB, asynchronously, notifies the browser that it may close its handle to the shared memory region. On Mac, the shared memory regions are identified by their inode numbers on the wire. This means that the browser must keep handles open to all the allocated shared memory regions (since an inode number is insufficient to map the region). The alternative design is that the renderer passes the file descriptor with each paint operation. Since passing file descriptors is special case in the code, I felt that it would be best to minimise their use. Creating and freeing transport DIBs are relatively rare operations relative to paints and scrolls. On Windows, most of the code remains the same, except that Windows now uses the mapping cache added in this patch. This allows the browser to maintain a shared memory mapping for a transport DIB over several paints. Previously it mapped and unmapped for every operation, causing lots of TLB and VM churn. Review URL: http://codereview.chromium.org/21485 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10071 0039d316-1c4b-4281-b951-d872f2087c98
* Renderer and test shell now handle --enable-video with SetMediaPlayerAvailable.scherkus@chromium.org2009-02-111-0/+5
| | | | | | Review URL: http://codereview.chromium.org/20268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9614 0039d316-1c4b-4281-b951-d872f2087c98
* Properly honor base::SharedMemory semantics for name="" to meanjrg@chromium.org2009-02-041-10/+1
| | | | | | | | | | | | new/private shared memory on POSIX. Transition base::SharedMemory implementation to file/mmap() to prevent leaking of wired kernel resources and allow easier cleanup. Enable one more shared_memory unit test for POSIX. Enable stats_table_unittest.cc for Mac, and modify it so it cleans up. Review URL: http://codereview.chromium.org/19724 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9114 0039d316-1c4b-4281-b951-d872f2087c98
* Unit test addition, cleanup for render_process/thread.jrg@chromium.org2009-01-281-11/+10
| | | | | | Review URL: http://codereview.chromium.org/19606 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8782 0039d316-1c4b-4281-b951-d872f2087c98
* render_* work.jrg@chromium.org2009-01-271-0/+12
| | | | | | Review URL: http://codereview.chromium.org/18650 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8732 0039d316-1c4b-4281-b951-d872f2087c98
* POSIX: Porting renderer/render_process.cc, low hanging fruitagl@chromium.org2009-01-221-13/+22
| | | | | | | Review URL: http://codereview.chromium.org/18622 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8436 0039d316-1c4b-4281-b951-d872f2087c98
* Make CommandLine into a normal object, with some statics for getting at the ↵evan@chromium.org2009-01-211-1/+1
| | | | | | | | | | | current process's command line. One explicit goal of this change is to *not* deal with the string/wstring issues at the API on POSIX; the functions are the same as before, which means they remain as broken as before. (I did try to fix the internals, though, so migrating the callers is now possible by adding platform-appropriate hooks.) Review URL: http://codereview.chromium.org/18248 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8347 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 7306 to reapply 7296. It wasn't its fault.maruel@chromium.org2008-12-191-0/+1
| | | | | | Review URL: http://codereview.chromium.org/15603 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7307 0039d316-1c4b-4281-b951-d872f2087c98
* Dummy checkin to force a build. NO CODE CHANGE.maruel@chromium.org2008-12-191-1/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7306 0039d316-1c4b-4281-b951-d872f2087c98
* Add Terminate() to the Process object, have RenderProcessHost use this to ↵brettw@google.com2008-11-141-9/+9
| | | | | | | | | | avoid some more Windows specific code. Move Process and SharedMemory into the base namespace (most changes). Review URL: http://codereview.chromium.org/10895 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5446 0039d316-1c4b-4281-b951-d872f2087c98
* * Copy webkit_glue font functions into ChromiumBridge.erikkay@google.com2008-11-131-46/+0
| | | | | | | | | * removed a few unneeded headers from MIMETypeRegistry * removed all uses of IMLangFontLang2 Review URL: http://codereview.chromium.org/10661 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5369 0039d316-1c4b-4281-b951-d872f2087c98
* Hackish changes to make gears work in the renderer with the sandbox.mpcomplete@google.com2008-10-081-0/+10
| | | | | | Review URL: http://codereview.chromium.org/6434 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3032 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Trim the dependencies of the plugin_dll and renderer_dll projects. ↵maruel@google.com2008-08-021-4/+0
| | | | | | | | Browser_dll will follow. At this point, plugin.dll and renderer.dll are roughly 35% smaller than browser.dll and chrome.dll BUG=1211534 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@290 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-261-0/+273
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98