summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host
Commit message (Collapse)AuthorAgeFilesLines
* Basic wiring to enable downloads for CF's host browser network stack. A ↵tommi@chromium.org2009-11-072-2/+7
| | | | | | | | notable change here is that url automation job id's no longer exist and instead a request id is used. There's a 1 to 1 relation between a job and a request so this is more convenient. Review URL: http://codereview.chromium.org/355036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31363 0039d316-1c4b-4281-b951-d872f2087c98
* Ninth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-071-4/+4
| | | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/372013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31357 0039d316-1c4b-4281-b951-d872f2087c98
* Change application cache cmd line enabling to use the new ↵jennb@chromium.org2009-11-071-0/+1
| | | | | | | | | | | RuntimeEnabledFeatures code. TEST=none BUG=none Review URL: http://codereview.chromium.org/377002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31349 0039d316-1c4b-4281-b951-d872f2087c98
* Prevents an old RenderViewHost from preempting a cross-site navigation once ↵creis@chromium.org2009-11-072-17/+62
| | | | | | | | | | | | | | the unload request has been made. This fixes a bug where competing navigations could either cause the tab to close unexpectedly or all future cross-site navigations (and possibly tab close attempts) to fail. BUG=23942 BUG=26839 TEST=TabContentsTest.CrossSiteCantPreemptAfterUnload Review URL: http://codereview.chromium.org/372014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31344 0039d316-1c4b-4281-b951-d872f2087c98
* Eighth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-0715-15/+48
| | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/378004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31339 0039d316-1c4b-4281-b951-d872f2087c98
* Make sure to fire menu items only once per key. Also, crash less.thakis@chromium.org2009-11-061-1/+6
| | | | | | | | | | | Followup to http://codereview.chromium.org/293019 . BUG=none TEST=Open 2 tabs, go to first tab, go to google.com, make sure that web has focus, hit cmd-w. Chrome shouldn't crash. Review URL: http://codereview.chromium.org/372034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31320 0039d316-1c4b-4281-b951-d872f2087c98
* Send keypress() events for ctrl-key and cmd-key in addition to keydown().thakis@chromium.org2009-11-062-1/+27
| | | | | | | | | | | | | The ctrl-key behavior matches what Safari does: We first send a keydown for ctrl-key, and only if the key is not an emacs shortcut, we send a keypress. The cmd-key behavior is slightly different from Safari: Safari triggers menu items after the keypress command has not been swallowed by javascript. We trigger menu items after keydown. That means that if the user hits cmd-key, we send a keydown and only send a keypress if the shortcut doesn't trigger a menu item. Safari always sends both keydown and keypress. BUG=25249 TEST=Go to http://unixpapa.com/js/testkey.html . Hit ctrl-a, only a keydown should be generated. Hit ctrl-s, both keydown and keypress should be generated. Hit cmd-a, only a keydown should be generated. Hit cmd-shift-a, both keypress and keydown should be generated. Also, ctrl-1 now makes something a heading in google docs. Cmd-s and Cmd-f should still work in docs. Review URL: http://codereview.chromium.org/293019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31287 0039d316-1c4b-4281-b951-d872f2087c98
* Use GetSwitchValueASCII.tony@chromium.org2009-11-061-4/+4
| | | | | | | | | | | | BUG=24672 TEST=None Original patch by Thiago Farina <thiago.farina@gmail.com> at http://codereview.chromium.org/296004 Review URL: http://codereview.chromium.org/373013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31269 0039d316-1c4b-4281-b951-d872f2087c98
* Turn LocalStorage on by default.jorlow@chromium.org2009-11-061-4/+2
| | | | | | | | | TEST=none BUG=4360 Review URL: http://codereview.chromium.org/366032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31256 0039d316-1c4b-4281-b951-d872f2087c98
* Correctly route the notifications permission-request-complete callback to ↵johnnyg@chromium.org2009-11-061-1/+2
| | | | | | | | | | | the process/route which generated it. It might not be the same tab that's showing the infobar, particularly if it comes from an extension. BUG=26859 TEST=request notifications permission from an extension and allow it. Review URL: http://codereview.chromium.org/378005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31239 0039d316-1c4b-4281-b951-d872f2087c98
* Move the spellchecker to the renderer.estade@chromium.org2009-11-062-0/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The motivation is that this removes the sync IPC on every call to the spellchecker. Also, currently we spellcheck in the IO thread, which frequently needs to go to disk (in particular, the entire spellcheck dictionary starts paged out), so this will block just the single renderer when that happens, rather than the whole IO thread. This breaks the SpellChecker class into two new classes. 1) On the browser side, we have SpellCheckHost. This class handles browser-wide tasks, such as keeping the custom words list in sync with the on-disk custom words dictionary, downloading missing dictionaries, etc. On Posix, it also opens the bdic file since the renderer isn't allowed to open files. SpellCheckHost is created and destroyed on the UI thread. It is initialized on the file thread. 2) On the renderer side, SpellChecker2. This class will one day be renamed SpellChecker. It handles actual checking of the words, memory maps the dictionary file, loads hunspell, etc. There is one SpellChecker2 per RenderThread (hence one per render process). My intention is for this patch to move Linux to this new approach, and follow up with ports for Windows (which will involve passing a dictionary file name rather than a file descriptor through to the renderer) and Mac (which will involve adding sync ViewHost IPC callsfor when the platform spellchecker is enabled). Note that anyone using the platform spellchecker rather than Hunspell will get no benefit out of this refactor. There should be no loss of functionality for Linux (or any other platform) in this patch. The following should all still work: - dictionary is loaded lazily - hunspell is initialized lazily, per renderer - language changes work. - Dynamic downloading of new dictionaries - auto spell correct works (as well as toggling it). - disabling spellcheck works. - custom words work (including adding in one renderer and immediately having it take effect in other renderers, for certain values of "immediate") TODO: - move spellchecker unit tests to test SpellCheck2 - add sync IPC for platform spellchecker; port to Mac - add dictionary location fallback; port to Windows - remove SpellChecker classes from browser/ BUG=25677 Review URL: http://codereview.chromium.org/357003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31199 0039d316-1c4b-4281-b951-d872f2087c98
* Do not send input menu toggle events to the web.thakis@chromium.org2009-11-061-4/+46
| | | | | | | | | | | | | This changes us back from the sendEvent:-based approach to the performKeyEquivalent:-based one. The main problem with the pKE: approach was that ctrl-tab toggled the view loop. However, I found an SPI in WebKit's source that enables us to work around that. I tested lots of stuff, but there are of course chances that this regresses something. The only sane way to write unit tests for all that keyhandling crap however is to sendEvent: keys to NSApp and have a complete browser with renderers running, and browser tests don't work on OS X yet :-/ BUG=26115 TEST=Open SysPrefs->Keyboard and configure cmd-space to switch input languages. Go to a page that blocks js events (e.g. http://unixpapa.com/js/testkey.html , check the two left checkboxes), cmd-space should still switch input languages. ) All the cases listed at the end of http://sites.google.com/a/chromium.org/dev/developers/os-x-keyboard-handling . Review URL: http://codereview.chromium.org/363024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31197 0039d316-1c4b-4281-b951-d872f2087c98
* Don't leak orphan renderer processes. Don't leak RenderWidgetHosts associatedmark@chromium.org2009-11-061-0/+13
| | | | | | | | | | | with pop-up menus. BUG=26311, 26876 TEST=Open a tab with a pop-up menu, use the pop-up menu, and then close all windows. There should be no renderer processes running. Review URL: http://codereview.chromium.org/374006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31195 0039d316-1c4b-4281-b951-d872f2087c98
* Fourth patch in making destructors of refcounted objects private.jam@chromium.org2009-11-051-5/+6
| | | | | | | BUG=26749 Review URL: http://codereview.chromium.org/360043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31167 0039d316-1c4b-4281-b951-d872f2087c98
* Added support for --enable-shared-workersatwilson@chromium.org2009-11-051-0/+1
| | | | | | | | | | | Added a --enable-shared-workers flag, and return false from SharedWorkerRepository::isAvailable() if it is not set. BUG=26233 TEST=None (unit tests do not run yet) Review URL: http://codereview.chromium.org/372004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31162 0039d316-1c4b-4281-b951-d872f2087c98
* Tell the RWH about the intial window size for drop down menus.tony@chromium.org2009-11-051-2/+4
| | | | | | | | | | | | | | This fixes a bug where all drop down menus were blank (we never told the renderer our size). This was regressed in r31031 when I removed the size allocate handler. BUG=26759 Review URL: http://codereview.chromium.org/361034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31127 0039d316-1c4b-4281-b951-d872f2087c98
* Added beginnings of browser-process support for shared workers.atwilson@chromium.org2009-11-052-10/+13
| | | | | | | | | | | | | Refactored WebWorkerClientProxy into two classes - WebWorkerDispatcher which dispatches incoming IPCs for the worker, and WebWorkerClientProxy, which handles outgoing API calls from WebWorkerImpl. This allows WebWorkerClientProxy to be reused by WebSharedWorkerDispatcher. BUG=26233 TEST=none (will enable layout tests when basic functionality available) Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=31077 Review URL: http://codereview.chromium.org/351004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31096 0039d316-1c4b-4281-b951-d872f2087c98
* Highlight node with mouse over it while selecting element to inspectapavlov@chromium.org2009-11-052-25/+1
| | | | | | | | | BUG=20969 TEST=none Review URL: http://codereview.chromium.org/348056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31087 0039d316-1c4b-4281-b951-d872f2087c98
* Enable WebSockets by defaultukai@chromium.org2009-11-051-1/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/360007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31083 0039d316-1c4b-4281-b951-d872f2087c98
* Switch over to the new way of enabling/disabling session/local storage. jorlow@chromium.org2009-11-051-1/+5
| | | | | | | | BUG=none TEST=|'localStorage' in window| should only be true iff --enable-local-storage is specified Review URL: http://codereview.chromium.org/335034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31082 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Added beginnings of browser-process support for shared workers."atwilson@chromium.org2009-11-052-13/+10
| | | | | | This reverts commit 31077. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31080 0039d316-1c4b-4281-b951-d872f2087c98
* Added beginnings of browser-process support for shared workers.atwilson@chromium.org2009-11-052-10/+13
| | | | | | | | | | | Refactored WebWorkerClientProxy into two classes - WebWorkerDispatcher which dispatches incoming IPCs for the worker, and WebWorkerClientProxy, which handles outgoing API calls from WebWorkerImpl. This allows WebWorkerClientProxy to be reused by WebSharedWorkerDispatcher. BUG=26233 TEST=none (will enable layout tests when basic functionality available) Review URL: http://codereview.chromium.org/351004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31077 0039d316-1c4b-4281-b951-d872f2087c98
* Only send renderer resize messages for RWHV sizing caused bytony@chromium.org2009-11-041-12/+5
| | | | | | | | | | | | | | | | TCV's size allocate message. This avoids a spurious size-allocate being sent to the renderers when creating a new tab. The extra size-allocate is called by the build-in GtkFixed's size allocate method. Another way to think of this is that we only size our RWH directly and decouple it's sizing from the GTK+ widget's sizing. BUG=26495 Review URL: http://codereview.chromium.org/363012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31031 0039d316-1c4b-4281-b951-d872f2087c98
* SetVolume and GetVolume take one volume instead of separate left and right ↵fbarchard@chromium.org2009-11-043-21/+19
| | | | | | | | | | | volumes. BUG=26660 TEST=no visible difference. Make sure volume still works. Code size should go down marginally. Review URL: http://codereview.chromium.org/357004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31018 0039d316-1c4b-4281-b951-d872f2087c98
* Continue to remove CHROME_FRAME_BUILD define from code that goes into ↵robertshield@chromium.org2009-11-041-0/+3
| | | | | | | | | | | | | | | | | | | | | chrome.dll. This reworks the browser distribution code to use the ChromeFrameBrowserDistribution iff --chrome-frame is present on the command line. Also, * At startup, chrome.exe now uses the BrowserDistribution code to determine where the Chromium version key resides (instead of hard coding it). * The installer now propagates the presence of --verbose-logging to uninstalls. * The chrome_launcher now allows the --chrome-frame switch through to chrome. * The installer now accepts a --chrome-frame switch. * Remove almost all occurences of the CHROME_FRAME_BUILD define from the installer. BUG=26012, 26603 TEST=Chrome Frame still builds and runs correctly. Chrome Frame builds built without 'branding'='Chrome' now install correctly. Review URL: http://codereview.chromium.org/345021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31015 0039d316-1c4b-4281-b951-d872f2087c98
* Implement cancel() API on a Notification object so that script can cancel or ↵johnnyg@chromium.org2009-11-042-0/+10
| | | | | | | | | | | tear down a toast. BUG=26360 TEST=cancel a notification Review URL: http://codereview.chromium.org/363003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31004 0039d316-1c4b-4281-b951-d872f2087c98
* Implement websocket throttling.ukai@chromium.org2009-11-041-0/+2
| | | | | | | | | | | | | | | | Implement the client-side requirements in the spec. 4.1 Handshake 1. If the user agent already has a Web Socket connection to the remote host (IP address) identified by /host/, even if known by another name, wait until that connection has been established or for that connection to have failed. BUG=none TEST=net_unittests passes Review URL: http://codereview.chromium.org/342052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30949 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for getting the real process id from within the suid sandbox. ↵thestig@chromium.org2009-11-042-17/+80
| | | | | | | | | | | | | | | | | | The browser processes gets the real process ids, so they look correct in the task manager. When it asks the zygote to reap a process, we use the process ids internal to the sandbox. While we are at it, reap the sandbox process after it clones the zygote and figure out zygote's actual process id. Save the actual process id rather than that of the sandbox. Original review: http://codereview.chromium.org/262020 This is try 2 - initialize the sandbox host and zygote for InProcessBrowserTest. TBR=agl BUG=20012, 20714, 23072 TEST=Process IDs for renderers should be correct in the task manager and you should be able to use the end process button to kill them. Review URL: http://codereview.chromium.org/361002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30948 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 30938 - Add support for getting the real process id from within the ↵thestig@chromium.org2009-11-042-80/+17
| | | | | | | | | | | | | suid sandbox. The browser processes gets the real process ids, so they look correct in the task manager. When it asks the zygote to reap a process, we use the process ids internal to the sandbox. While we are at it, reap the sandbox process after it clones the zygote and figure out zygote's actual process id. Save the actual process id rather than that of the sandbox. BUG=20012,20714,23072 TEST=Process IDs for renderers should be correct in the task manager and you should be able to use the end process button to kill them. Review URL: http://codereview.chromium.org/262020 Review URL: http://codereview.chromium.org/359001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30939 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for getting the real process id from within the suid sandbox. ↵thestig@chromium.org2009-11-042-17/+80
| | | | | | | | | | | | The browser processes gets the real process ids, so they look correct in the task manager. When it asks the zygote to reap a process, we use the process ids internal to the sandbox. While we are at it, reap the sandbox process after it clones the zygote and figure out zygote's actual process id. Save the actual process id rather than that of the sandbox. BUG=20012,20714,23072 TEST=Process IDs for renderers should be correct in the task manager and you should be able to use the end process button to kill them. Review URL: http://codereview.chromium.org/262020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30938 0039d316-1c4b-4281-b951-d872f2087c98
* Fix valgrind error in SocketStreamDispatcherHostukai@chromium.org2009-11-041-1/+1
| | | | | | | | | BUG=26324 TEST=none Review URL: http://codereview.chromium.org/342113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30936 0039d316-1c4b-4281-b951-d872f2087c98
* Add first class support for user scripts.aa@chromium.org2009-11-041-0/+5
| | | | | | | | | | | | Original review: http://codereview.chromium.org/340057 TBR=mpcomplete@chromium.org BUG=22103 TEST=Install a user script (such as from userscripts.org). You should get the extension install UI and the script should show up in the extension management UI. It should also work, though some scripts use Firefox-specific APIs and those won't work in Chromium. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30925 0039d316-1c4b-4281-b951-d872f2087c98
* Changes session restore to use a normal load rather than preferringsky@chromium.org2009-11-031-1/+1
| | | | | | | | | | | | the cache. We need to do this else we don't honor page expiration and end up showing stale data for some sites. BUG=21195 TEST=make sure session restore works. Review URL: http://codereview.chromium.org/341043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30892 0039d316-1c4b-4281-b951-d872f2087c98
* Use ChromeThread::DeleteOnIOThread in a few places where an object must be ↵jam@chromium.org2009-11-035-45/+28
| | | | | | | | | deleted on a certain thread. BUG=25354 Review URL: http://codereview.chromium.org/342090 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30882 0039d316-1c4b-4281-b951-d872f2087c98
* Last patch in removing MessageLoop* caching.jam@chromium.org2009-11-037-87/+57
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/353015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30881 0039d316-1c4b-4281-b951-d872f2087c98
* Add the plumbing and test code for plugins opening files from the sandbox. Thisbrettw@chromium.org2009-11-032-2/+23
| | | | | | | | | | | | | does not implement the actual opening of the files (currently the chain ends in resource_message_filter.cc), I will do that separately with some additional security review. This current patch just gets the synchronous request to the browser and returns a NULL result. TEST=none BUG=none Review URL: http://codereview.chromium.org/340050 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30819 0039d316-1c4b-4281-b951-d872f2087c98
* Fifth patch in getting rid of caching MessageLoop pointers.jam@chromium.org2009-11-031-3/+3
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/345037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30790 0039d316-1c4b-4281-b951-d872f2087c98
* Re-landing of r30726, which was reverted as a possible cause of chromeos ↵estade@chromium.org2009-11-021-1/+17
| | | | | | | | | | | | | | | | | | | buildbot failures Handle GTK enter and leave notification events and pass them to WebKit as mouse move events. This prevents an HTML widget from staying in the mouseover state when the cursor leaves the window. Add a new ui test that checks the specific case that was broken by warping the mouse pointer inside and outside the content area. BUG=24660 TEST=ui_tests patch by Dominic Mazzoni <dmazzoni [at] google> original review: http://codereview.chromium.org/274010/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30771 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a memory bug in the new ResizeThenCrash test.creis@chromium.org2009-11-021-2/+3
| | | | | | | | | | | | (Related to http://codereview.chromium.org/348025) BUG=25097 TEST=RenderWidgetHostTest.ResizeThenCrash Review URL: http://codereview.chromium.org/353008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30753 0039d316-1c4b-4281-b951-d872f2087c98
* Fourth patch in getting rid of caching MessageLoop pointers.jam@chromium.org2009-11-023-25/+35
| | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/348037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30751 0039d316-1c4b-4281-b951-d872f2087c98
* Sixth patch in getting rid of caching MessageLoop pointers.jam@chromium.org2009-11-024-46/+42
| | | | | | | | BUG=25354 Review URL: http://codereview.chromium.org/354002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30737 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Handle GTK enter and leave notification events and pass them to ↵rafaelw@chromium.org2009-11-021-17/+1
| | | | | | | | | | | | WebKit as " This reverts http://src.chromium.org/viewvc/chrome?view=rev&revision=30726 TBR=estade Review URL: http://codereview.chromium.org/343080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30731 0039d316-1c4b-4281-b951-d872f2087c98
* Handle GTK enter and leave notification events and pass them to WebKit as estade@chromium.org2009-11-021-1/+17
| | | | | | | | | | | | | | | | | mouse move events. This prevents an HTML widget from staying in the mouseover state when the cursor leaves the window. Add a new ui test that checks the specific case that was broken by warping the mouse pointer inside and outside the content area. BUG=24660 TEST=ui_tests patch by Dominic Mazzoni <dmazzoni [at] google> original review: http://codereview.chromium.org/274010/show Review URL: http://codereview.chromium.org/354010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30726 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes reloading after a background tab crashes.creis@chromium.org2009-11-023-1/+34
| | | | | | | | | | | Needed to clear RenderWidgetHost::in_flight_size_ if the renderer crashed. BUG=25097 TEST=RenderWidgetHostTest.ResizeThenCrash Review URL: http://codereview.chromium.org/348025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30722 0039d316-1c4b-4281-b951-d872f2087c98
* DevTools: support cross-navigation instrumentation.pfeldman@chromium.org2009-11-022-0/+11
| | | | | | Review URL: http://codereview.chromium.org/343075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30713 0039d316-1c4b-4281-b951-d872f2087c98
* Add the ability for objects which derive from RefCountedThreadSafe to ↵jam@chromium.org2009-11-025-274/+37
| | | | | | | | | | | | specify a destructor trait. This allows browser objects to specify which thread they're terminated on. The benefit is we avoid the need to do manual ref counting when an object posts tasks to itself on different threads, if an object must be destructed on a specific thread. This patch adds initial support and only shows one example with ResourceMessageFilter. I will do the rest in a follow-up patch to keep things small. BUG=25354 TEST=added unit tests Review URL: http://codereview.chromium.org/338065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30688 0039d316-1c4b-4281-b951-d872f2087c98
* Third patch in getting rid of caching MessageLoop pointers and always using ↵jam@chromium.org2009-11-0210-86/+83
| | | | | | | | | | ChromeThread instead. BUG=25354 Review URL: http://codereview.chromium.org/342068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30687 0039d316-1c4b-4281-b951-d872f2087c98
* DeferredAutoreleasePool didn't work on Snow Leopard.mark@chromium.org2009-10-311-5/+15
| | | | | | | | | | | | | | | | | | | This is a backout of r30647, but also resurrects the change from http://codereview.chromium.org/341022 to work around the crash that r30647 solved much more elegantly. We can't really leave things broken on 10.6, though. I killed most of a perfectly good Friday evening trying to figure out how to salvage r30647, but the DeferredAutoreleasePool approach seems doomed without making private calls. This makes me really sad. BUG=25857, 26399, 26402 TEST=Does it launch on Snow Leopard now? Does it crash when you close windows? Review URL: http://codereview.chromium.org/339095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30668 0039d316-1c4b-4281-b951-d872f2087c98
* Change notification cmd line enabling to use the new RuntimeEnabledFeatures ↵johnnyg@chromium.org2009-10-311-0/+1
| | | | | | | | | | | code. BUG=25318 TEST=none Review URL: http://codereview.chromium.org/339093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30660 0039d316-1c4b-4281-b951-d872f2087c98
* Cleans up our autorelease handling so that we don't create a layered dmaclach@chromium.org2009-10-301-6/+1
| | | | | | | | | | | | | | | | | autorelease pool in our run loop source if there is one already on the stack above us. This allows Cocoa to clean up all the objects at the same time as it expects to do. There may be more "interesting" code that can be removed now that this is in. Initially we were going to implement it by checking the nesting levels of the runloops, but it turns out by the time sendEvent is called at the upper level we are already out of the "CFRunloopRun" call so our nesting count isn't a valid indicator of our state. TEST=1) See bug 25857. 2) Start up. Open 3+ windows. Quit. BUG=25857 Review URL: http://codereview.chromium.org/343024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30647 0039d316-1c4b-4281-b951-d872f2087c98