summaryrefslogtreecommitdiffstats
path: root/base/base.gypi
Commit message (Collapse)AuthorAgeFilesLines
* implement openssl symmetric keyjoth@chromium.org2010-11-121-1/+5
| | | | | | | | | | | | | add AES derived key test Also includes some build fixes. BUG=None TEST=./out/Debug/base_unittests --gtest_filter=SymmetricKey* Review URL: http://codereview.chromium.org/4691003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65936 0039d316-1c4b-4281-b951-d872f2087c98
* Include the Version class in the 64 bit version of base. This is needed so ↵robertshield@chromium.org2010-11-101-2/+2
| | | | | | | | | | | | that it can be used from client_utils.cc which is included in both the chrome target and the chrome_nacl_win64 target. BUG=61609 TEST=None Review URL: http://codereview.chromium.org/4676002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65674 0039d316-1c4b-4281-b951-d872f2087c98
* Implement a new process type for running PPAPI plugins. The process itself isbrettw@chromium.org2010-11-101-0/+2
| | | | | | | | | | | | | | | quite simple and just sets up the PPAPI dispatcher and loads the library. There is a new command line switch --ppapi-out-of-process which runs PPAPI plugins out of process using the new code path. There is some logic in RenderView and PepperPluginModule for setting up this connection, but it should be straightforward. TEST=none BUG=none Review URL: http://codereview.chromium.org/3915002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65614 0039d316-1c4b-4281-b951-d872f2087c98
* Erase base/move. The pattern we use is pass by const ref and this is ↵brettw@chromium.org2010-11-081-1/+0
| | | | | | | | | | confusing people. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/4682003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65444 0039d316-1c4b-4281-b951-d872f2087c98
* Move Windows-specific Event Tracing for Windows implementation to base/win. siggi@chromium.org2010-11-061-5/+5
| | | | | | | | | | | fix users of same. BUG=none TEST=unittests Review URL: http://codereview.chromium.org/4517004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65310 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Use Linux WorkerPool code.shess@chromium.org2010-11-051-0/+7
| | | | | | | | | | | | | | | | | Adapts things to use the Linux WorkerPool code by default, with --disable-linux-workerpool to switch back to the old version. The old implementation uses NSOperationQueue, which is implemented in terms of pthread workqueues. These are implicated by the stack traces from the recent unit test flakiness. This change attempts to influence that flakiness. BUG=20471, 60426 TEST=Tree green. Review URL: http://codereview.chromium.org/4595001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65273 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on file access checks on Win.jam@chromium.org2010-11-041-2/+2
| | | | | | | | | BUG=60211 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=64960 Review URL: http://codereview.chromium.org/4222005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65075 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 64960 - Turn on file access checks on Win.rafaelw@chromium.org2010-11-031-2/+2
| | | | | | | | | | BUG=60211 Review URL: http://codereview.chromium.org/4222005 TBR=jam@chromium.org Review URL: http://codereview.chromium.org/4431001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64974 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on file access checks on Win.jam@chromium.org2010-11-031-2/+2
| | | | | | | BUG=60211 Review URL: http://codereview.chromium.org/4222005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64960 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: Remove base/gtk_util.h by moving its methods tojhawkins@chromium.org2010-10-291-2/+0
| | | | | | | | | | | gfx/gtk_util.h BUG=none TEST=none Review URL: http://codereview.chromium.org/4150006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64348 0039d316-1c4b-4281-b951-d872f2087c98
* Add histogram to track number of .nexe launches, normalized against opening ↵mmortensen@google.com2010-10-281-0/+2
| | | | | | | | | | | | new tabs. BUG=914 (http://code.google.com/p/nativeclient/issues/detail?id=914) TEST=none Relied on trybots and manually checking "about:histograms" Review URL: http://codereview.chromium.org/4065005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64261 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up a bad file path, and remove a deleted file.dmaclach@chromium.org2010-10-271-2/+1
| | | | | | | | | TEST=BUILD BUG=NONE Review URL: http://codereview.chromium.org/3961006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64143 0039d316-1c4b-4281-b951-d872f2087c98
* touchui: Directly process key and mouse events.rjkroege@google.com2010-10-261-0/+1
| | | | | | | | | | | | | | | | Capture the keyboard and mouse events directly from X, create a corresponding views::Event out of it, and send it to the associated RootView. Includes Chad's (wyck) function FindRootViewForGdkEvent (from #3704005) slightly modified (called FindRootViewForGdkWindow). BUG=None TEST=Click/Keypress events in a webpage should work correctly. Review URL: http://codereview.chromium.org/3801011 Patch from Sadrul Chowdhury <sadrul@chromium.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63916 0039d316-1c4b-4281-b951-d872f2087c98
* Move debug-related stuff from base to the base/debug directory and use thebrettw@chromium.org2010-10-261-8/+14
| | | | | | | | | | | | | | | | base::debug namespace. This splits apart debug_util into base/debugger and base/stack_trace There are still two functions in debug_util that I'm not sure what to do with. Since this uses the base::debug namespace, I removed the functions in debugger.h from the static class and just made them free functions in the namespace. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3945002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63859 0039d316-1c4b-4281-b951-d872f2087c98
* Add a message pump for touchui=1rjkroege@google.com2010-10-221-0/+7
| | | | | | | | | | | | | | | | | | | | | | | The message pump reads events directly from X. For most events, it passes them on to GDK for normal processing. It consumes some events (e.g. keypress events) to demonstrate how it's intended to work. This, of course, makes chrome mostly unusable since you can only use the mouse to do things. But this is a small first step towards capturing events through MPX (e.g. touch etc.) and processing them as chrome pleases. glib message pump: Slightly change architecture This changeset breaks down the glib message pump a little so that it can be easily subclassed. The next set of commits will introduce a subclass that still uses GTK and GDK widgets, but reads events directly from X instead of through GTK/GDK. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=63397 Review URL: http://codereview.chromium.org/3748002 Patch from Sadrul Chowdhury <sadrul@chromium.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63519 0039d316-1c4b-4281-b951-d872f2087c98
* Make USE_OPENSSL and USE_NSS mutually exclusivejoth@chromium.org2010-10-221-1/+49
| | | | | | | | | | | | | | | | | | - that is, defining use_openssl=1 will now remove all dependency on NSS. This does not impact any of the standard, non-openssl builds. Adds stub implementations of several files that need to be fully implemented in follow up patchs. Firefox import code will need some more substatial refactoring, as it makes little sense to be attempting a firefox import without NSS libraries to hand, however the UI etc has numerous assumption about the presence of this importer. BUG=None TEST=None Review URL: http://codereview.chromium.org/3855004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63506 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 63397 - Add a message pump for touchui=1rjkroege@google.com2010-10-211-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The message pump reads events directly from X. For most events, it passes them on to GDK for normal processing. It consumes some events (e.g. keypress events) to demonstrate how it's intended to work. This, of course, makes chrome mostly unusable since you can only use the mouse to do things. But this is a small first step towards capturing events through MPX (e.g. touch etc.) and processing them as chrome pleases. glib message pump: Slightly change architecture This changeset breaks down the glib message pump a little so that it can be easily subclassed. The next set of commits will introduce a subclass that still uses GTK and GDK widgets, but reads events directly from X instead of through GTK/GDK. Review URL: http://codereview.chromium.org/3748002 Patch from Sadrul Chowdhury <sadrul@chromium.org>. TBR=rjkroege@google.com Probably a dynamic link problem with -lX11. Review URL: http://codereview.chromium.org/4007004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63403 0039d316-1c4b-4281-b951-d872f2087c98
* Add a message pump for touchui=1rjkroege@google.com2010-10-211-0/+3
| | | | | | | | | | | | | | | | | | | | | The message pump reads events directly from X. For most events, it passes them on to GDK for normal processing. It consumes some events (e.g. keypress events) to demonstrate how it's intended to work. This, of course, makes chrome mostly unusable since you can only use the mouse to do things. But this is a small first step towards capturing events through MPX (e.g. touch etc.) and processing them as chrome pleases. glib message pump: Slightly change architecture This changeset breaks down the glib message pump a little so that it can be easily subclassed. The next set of commits will introduce a subclass that still uses GTK and GDK widgets, but reads events directly from X instead of through GTK/GDK. Review URL: http://codereview.chromium.org/3748002 Patch from Sadrul Chowdhury <sadrul@chromium.org>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63397 0039d316-1c4b-4281-b951-d872f2087c98
* base: add a thread-safety assertion checkerevan@chromium.org2010-10-191-0/+2
| | | | | | | | | | | | | | ThreadAssertions lets us assert that the current thread is allowed to make blocking calls. See the header for more background. This change implements ThreadAssertions but doesn't turn it on for any of Chrome. BUG=59575 Review URL: http://codereview.chromium.org/3824006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63091 0039d316-1c4b-4281-b951-d872f2087c98
* Drop allocator dependency from base library.willchan@chromium.org2010-10-191-8/+0
| | | | | | | | | | | | | | | This will fix libnpapi_test_plugin from loading TCMalloc. This undoes the bad dependency from base to allocator added in http://src.chromium.org/viewvc/chrome/trunk/src/base/base.gyp?revision=43477&view=markup, which was required to fix the linux shared build, due to http://src.chromium.org/viewvc/chrome?view=rev&revision=41218 which added the base/profiler.cc compile-time dependency on TCMalloc (rather than a link-time dependency injection, relying on something like weak symbols) The purify/quantify dependency is indeed compile-time, and is appropriately done in profiler.cc. But, to simply this change, I've killed profiler.cc and only used it in the profiler extension. We can add it back if needed, but it's only been used in that one place for a long time anyway. BUG=59317,40467 TEST=make -j15 npapi_test_plugin && nm out/Debug/libnpapi_test_plugin.so | grep TCMalloc. Should be empty. Review URL: http://codereview.chromium.org/3783009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63082 0039d316-1c4b-4281-b951-d872f2087c98
* Move scoped_nsdisable_screen_update from base to app/macbrettw@chromium.org2010-10-181-4/+3
| | | | | | | | | | | Move scoped_aedesc from base to base/mac Use namespace and proper Google-style class naming. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3828009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62904 0039d316-1c4b-4281-b951-d872f2087c98
* Move BaseDropTarget and BaseDragSource from base to app/win. Remove the ↵brettw@chromium.org2010-10-171-4/+0
| | | | | | | | | | "Base" class name prefix and put in the app::win namespace. TEST=none BUG=none Review URL: http://codereview.chromium.org/3822007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62900 0039d316-1c4b-4281-b951-d872f2087c98
* Move pe_image and registry from base to base/win and use the namespace. It ↵brettw@chromium.org2010-10-171-4/+4
| | | | | | | | | | | | removes windows_message_list which isn't used. This keeps a stub for registry in the old location until we can update that. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3836005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62888 0039d316-1c4b-4281-b951-d872f2087c98
* Move xdg_util into base/nix. I originally wanted to use base/linux, but youbrettw@chromium.org2010-10-161-6/+4
| | | | | | | | | | | | | | | | can't have a namespace called "linux" because it's ifdefed by GCC to be a number. Same for "unix". "x11" was discarded because some future stuff in here will not be related to x11. This also renames base_paths_posix to base_paths_linux since this does not apply to mac, and normally posix applies to mac (this confused me when I had to edit it for the XDG stuff). TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3778007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62848 0039d316-1c4b-4281-b951-d872f2087c98
* Move the windows-specific scoped_* stuff from base to base/win and in the ↵brettw@chromium.org2010-10-161-10/+13
| | | | | | | | | | | | | | | | base::win namespace. This keeps old headers that forward to the new versions and have using declarations that allow the existing code to compile. I fixed all the callers in base to use the new ones, and also the other files I happened to touch. This splits out the stuff from scoped_handle into a few separate files. I just deleted ScopedFindFile since it was only used in one place and it wasn't even really helping there. I removed StackBstr which was a #define and used the "regular" ScopedBstr in the 7 places that used it. This is an optimization to avoid an extra allocation, but none of the callers are remotely performance critical. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3781009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62843 0039d316-1c4b-4281-b951-d872f2087c98
* Move windows version-related stuff out of base/win_util and into ↵brettw@chromium.org2010-10-151-13/+19
| | | | | | | | | | | | | | base/win/windows_version. Many files now only need to include this instead of all of win_util. Remove a bunch of unused code from base/win_util. There was a surprising amount. Replace the AppUserModel property key with the one from the SDK now that we use the Win7 SDK. Move GetLogonSessionOnlyDACL from win_util to ipc since it's only used in that one place. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3823002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62694 0039d316-1c4b-4281-b951-d872f2087c98
* Move iat_patch from base to app/win. Remove the functions from the header sincebrettw@chromium.org2010-10-141-3/+0
| | | | | | | | | | | | they aren't used, and just make them local to the .cc file. Rename the .cc file to iat_patch_function to match the class definition. Put it in the app::win namespace to match the directories. Update callers. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3743006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62678 0039d316-1c4b-4281-b951-d872f2087c98
* Move Stats, histograms, and field trial into a metrics subdirectory of base andbrettw@chromium.org2010-10-141-8/+8
| | | | | | | | | put them in the base namespace. TEST=it compiles BUG=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62510 0039d316-1c4b-4281-b951-d872f2087c98
* Fix forgotten wmi line in base.gypibrettw@chromium.org2010-10-101-3/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62124 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented VLOG() et al.akalin@chromium.org2010-09-291-0/+2
| | | | | | | | | | | | | | Implemented VLOG(), VLOG_IF(), VLOG_IS_ON(). Added --v and --vmodule switches. Changed some spammy sync-related logs to use VLOG. BUG=56965 TEST=New unittests Review URL: http://codereview.chromium.org/3448028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60976 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Moves code to the headers.erg@google.com2010-09-281-0/+2
| | | | | | | | | | | | | One of the big things is starting to move/declare ctors/dtors that derive from RefCounted<> to/in the implementation file. (Saves 4 megabytes from libglue.a alone. 1 meg off libbrowser.a. Hundred of kilobyte savings in a large number of .a files; only libmedia.a grew and it's only 100k.) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3452030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60863 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Move virtual methods to implementation files.erg@google.com2010-09-231-0/+1
| | | | | | | | | | | Remove logging.h and other headers where possible. BUG=none TEST=none Review URL: http://codereview.chromium.org/3461019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60369 0039d316-1c4b-4281-b951-d872f2087c98
* Re-lands 58186:bryeung@chromium.org2010-09-031-11/+0
| | | | | | | | | | | | | | | | | | | | Original message: """ Move the keyboard files from base/ to app/. Also moves the associated classes/enums from base:: to app::. TEST=try bots compile BUG=NONE Review URL: http://codereview.chromium.org/3165064 """ TBR=phajdan.jr@chromium.org Review URL: http://codereview.chromium.org/3354005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58438 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 58186 - Move the keyboard files from base/ to app/.phajdan.jr@chromium.org2010-09-011-0/+11
| | | | | | | | | | | | | Also moves the associated classes/enums from base:: to app::. TEST=try bots compile BUG=NONE Review URL: http://codereview.chromium.org/3165064 TBR=bryeung@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58215 0039d316-1c4b-4281-b951-d872f2087c98
* Move the keyboard files from base/ to app/.bryeung@chromium.org2010-09-011-11/+0
| | | | | | | | | | | Also moves the associated classes/enums from base:: to app::. TEST=try bots compile BUG=NONE Review URL: http://codereview.chromium.org/3165064 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58186 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Switch to DWARF for official builds. Good riddence.thestig@chromium.org2010-08-261-5/+0
| | | | | | | | BUG=20737 TEST=none Review URL: http://codereview.chromium.org/2892001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57553 0039d316-1c4b-4281-b951-d872f2087c98
* Move task_queue.* to base because it makes more sense there.levin@chromium.org2010-08-261-0/+2
| | | | | | | | | TEST=base_test --gtest_filter=TaskQueue*.* (added in this patch). BUG=38475 Review URL: http://codereview.chromium.org/3205004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57479 0039d316-1c4b-4281-b951-d872f2087c98
* Sometimes you want to enforce that some but not all of your methods are ↵levin@chromium.org2010-08-241-0/+2
| | | | | | | | | | | called on the same thread as the constructor. ThreadChecker allows you to do this. BUG=38475 TEST=base_unittests --gtest_filter=NonThreadSafeTest.* and base_unittests --gtest_filter=ThreadChecker.* Review URL: http://codereview.chromium.org/3148032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57140 0039d316-1c4b-4281-b951-d872f2087c98
* Moving file_system_proxy to base/ and changing it to work with ↵dumi@chromium.org2010-08-201-0/+2
| | | | | | | | | | | MessageLoopProxies instead of ChromeThreads. BUG=none TEST=none Review URL: http://codereview.chromium.org/3131026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56923 0039d316-1c4b-4281-b951-d872f2087c98
* Lands http://codereview.chromium.org/3153008 for bryeung:sky@chromium.org2010-08-201-0/+2
| | | | | | | | | | | | | | | | Synthetic KeyEvent delivery, part I. This delivers synthetic key events to the views hierarchy. This currently does nothing, as nothing is listening for the event in TOUCH_UI (or elsewhere). That part will come later. BUG=none TEST=unit test for key identifier conversion + manual for extension api Review URL: http://codereview.chromium.org/3130029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56886 0039d316-1c4b-4281-b951-d872f2087c98
* linux: add UMA stat for the file system where the prefs are storedevan@chromium.org2010-08-201-0/+1
| | | | | | | | | | | | | I'd like to see how common it is to use a network file system for your home directory. This would help evaluate how important it is to support these users. See also: http://groups.google.com/a/chromium.org/group/chromium-dev/browse_thread/thread/b43d2905f079fa1c Review URL: http://codereview.chromium.org/3187011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56786 0039d316-1c4b-4281-b951-d872f2087c98
* Remove all wstrings from the IPC logging subsystem.erg@google.com2010-08-181-6/+6
| | | | | | | | | | | | | | | | Changes all IPC Log methods from wstring to string. All static logging debug data changed from wchar[] to char[]. Various string conversion/numeric headers no longer need to be included in ipc_message_utils.h and have been removed (and added in all implementation files that require them). BUG=none TEST=none Review URL: http://codereview.chromium.org/3159013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56563 0039d316-1c4b-4281-b951-d872f2087c98
* Move StringPrintf into its own file and use the base namespace. Currently ↵brettw@chromium.org2010-08-171-0/+2
| | | | | | | | | | | | | | this has using directives for the functions so I don't have to change all files to use the namespace. No code changes to logic. TEST=it compiles + the included unit tests BUG=none Review URL: http://codereview.chromium.org/3181016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56299 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Use an AppleEvent to tell the Finder to open downloaded items, rather ↵rsesek@chromium.org2010-08-131-0/+6
| | | | | | | | | | | | than NSWorkspace. BUG=32921,50263 TEST=Force a PDF to download. Quit Preview, if open. Open the downloaded PDF from the download shelf. Preview opens and becomes frontmost. TEST=Download a file of a type that you do not have an application with which to open it. Open it from the download shelf. Finder bounces for your attention to choose an application to open it. Review URL: http://codereview.chromium.org/3151011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56026 0039d316-1c4b-4281-b951-d872f2087c98
* base: Rename EnvVarGetter to Environment.tfarina@chromium.org2010-08-031-2/+2
| | | | | | | | | | | | | | | Now EnvVarGetter do much more than getting environment variables. Per suggestion from Pawel in http://codereview.chromium.org/3043018/. BUG=None TEST=trybots Signed-off-by: Thiago Farina <tfarina@chromium.org> Review URL: http://codereview.chromium.org/3052034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54696 0039d316-1c4b-4281-b951-d872f2087c98
* Asynchronously open the temp file used for Pepper StreamToFile, and delete thedarin@chromium.org2010-07-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | temp file once we are done with it. We observe ResourceHandle::OnRequestClosed as a signal of when we should delete the temp file. This corresponds to the WebURLLoader being closed (or canceled). This patch also includes some helpers: base/scoped_callback_factory.h This class makes it easy to allocate Callbacks that hold a weak reference back to the owning class. It works just like ScopedRunnableMethodFactory but for Callbacks instead of RunnableMethods. base/platform_file.h Added a PassPlatformFile class that is useful for cases where a callback may decide not to take ownership of a PlatformFile (as can happen when using ScopedCallbackFactory). chrome/file_system_proxy.{h,cc} This class provides static methods for executing file system commands on the FILE thread. It routes callbacks back to the originating thread to deliver results (file handles, etc.). Note: this file declares a few functions that are not yet used. I anticipate that we'll make use of these and add more functions here to support the Pepper and OWP FileSystem APIs. chrome/chrome_thread_relay.{h,cc} This class is a helper class for proxying calls over to a background ChromeThread and then returning results to the originating ChromeThread. R=brettw BUG=49789 TEST=(more to be added in third_party/ppapi/tests) Review URL: http://codereview.chromium.org/2878062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54402 0039d316-1c4b-4281-b951-d872f2087c98
* Move the number conversions from string_util to a new file.brettw@chromium.org2010-07-301-0/+2
| | | | | | | | | | | | | Use the base namespace in the new file. Update callers. I removed all wstring variants and also the string->number ones that ignore the return value. That encourages people to write code and forget about error handling. TEST=included unit tests BUG=none Review URL: http://codereview.chromium.org/3056029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54355 0039d316-1c4b-4281-b951-d872f2087c98
* Speculative fix for crash in DOMUIThumbnailSource.erg@google.com2010-07-281-0/+1
| | | | | | | | | | | | | | | | | | | | DOMUIThumbnailSource objects are deleted on the IO thread, while they are used on the UI thread. The DataSource documentation says that they should not live on the IO thread, but for almost all DataSources, the only reference held is the one by ChromeURLDataManager, which lives on the IO thread. Since I had a racy stack where the object was being used on the UI thread while its destructor was running on the IO thread, forcing destruction on the UI thread should fix the crash. Pretty much everything but changing the templated base class of DataSource to always DeleteOnUIThread is my usual cleanup. BUG=34115 TEST=none Review URL: http://codereview.chromium.org/3061009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53873 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac]Port browser_keyevents_browsertest.cc and browser_focus_uitest.cc to Mac.suzhe@chromium.org2010-07-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL includes: 1. Implementation of ui_test_utils_mac.mm 2. Fix for ui_controls_mac.mm 3. Port browser_keyevents_browsertest.cc to Mac and add some new tests for Mac. 4. Partially port browser_focus_uitest.cc to Mac, now can be compiled and run on Mac but some tests fail. 5. Add two functions into ui_test_utils.h: HideNativeWindow() and ShowAndFocusNativeWindow(). The latter one shows a window and grabs the input focus, which is useful for tests depending on fake keyboard/mouse events. Because browser_keyevents_browsertests.cc and browser_focus_uitest.cc belong to interactive_ui_tests, which is not available on Mac (see http://crbug.com/21276), in order to test them on Mac, you may want to move them into browser_tests locally. But it won't work on build and try bots, because these tests must be run with screen unlocked. This CL depends on CL: http://codereview.chromium.org/2973004 and http://codereview.chromium.org/2805075 BUG=22515 Keyboard handling needs unit tests BUG=48671 interactive_ui_test: BrowserKeyEventsTest.NormalKeyEvents is flaky BUG=48936 Browser window is opened inactivated when running an InProcessBrowserTest. TEST=none Review URL: http://codereview.chromium.org/2986004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53840 0039d316-1c4b-4281-b951-d872f2087c98
* Move implementation from header to source.erg@chromium.org2010-07-151-0/+2
| | | | | | | | | | | | | | | | | | | | This is an effort to speed up compile and link time, and also minimizing the size of the intermediary .o files on disk. For example, just moving the constructor/destructor from the classes in chrome/browser/pref_member.{cc,h} netted a 368k drop in total .o file size. In aggregate, this shrinks libbrowser.a by 10 megabytes, and a few odd megabytes on most other chrome .a files. A lot of this was done before I started harvesting what the most included symbols were across all of chrome's code. Most of them are in webkit, but there's plenty in base/ that are used everywhere to keep me busy for several patches to come. BUG=none TEST=none Review URL: http://codereview.chromium.org/3012001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52528 0039d316-1c4b-4281-b951-d872f2087c98