summaryrefslogtreecommitdiffstats
path: root/skia
Commit message (Collapse)AuthorAgeFilesLines
* Roll skia 746 -> 752vandebo@chromium.org2011-02-021-1/+1
| | | | | | | | | BUG=NONE TEST=NONE Review URL: http://codereview.chromium.org/6334042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73477 0039d316-1c4b-4281-b951-d872f2087c98
* add GrGLConfig_chrome.h to the gypreed@google.com2011-02-021-0/+1
| | | | | | Review URL: http://codereview.chromium.org/6258018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73463 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete files from 'sources'. This causes needless work on ↵jeanluc@chromium.org2011-01-311-5/+4
| | | | | | | | | | | incremental builds in VS2010. BUG=71130 TEST=Check that Chrome builds. Review URL: http://codereview.chromium.org/6386019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73190 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 73121 - Remove obsolete files from 'sources'. This causes needless ↵nsylvain@chromium.org2011-01-311-4/+5
| | | | | | | | | | | | | | | | | | work on incremental builds in VS2010. This is breaking clobber builds with this error : e:\b\build\slave\google-chrome-rel-win\build\src\chrome_frame\iids.cc(6) : fatal error C1083: Cannot open include file: 'chrome_tab.h': No such file or directory BUG=71130 TEST=Check that Chrome builds. Review URL: http://codereview.chromium.org/6307018 TBR=jeanluc@chromium.org Review URL: http://codereview.chromium.org/6347032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73124 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete files from 'sources'. This causes needless work on ↵jeanluc@chromium.org2011-01-301-5/+4
| | | | | | | | | | | incremental builds in VS2010. BUG=71130 TEST=Check that Chrome builds. Review URL: http://codereview.chromium.org/6307018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73121 0039d316-1c4b-4281-b951-d872f2087c98
* Integration of most changes from the GoogleTV project around the ↵brettw@chromium.org2011-01-308-63/+1152
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | convolver/scaler. This contains the following improvements: - Adding a few extra convolution filters on top of the existing LANCZOS3 (used internally in Chrome), and BOX (used in unit tests): - LANCZOS2: a variation of LANCZOS3 except that the windowed function is limited to the [-2:2] range. - HAMMING1: this uses a Hamming window using the [-1:-1] range. If we define the zoom down factor to z, and w the size of the window, the actual cost of each filter (CPU wise) is proportional to (w * 2 * z + 1). So, if we look at what happens when you zoom down by a factor of 4 (as often found when creating thumbnails), the cost would be 25 for LANCZOS3, 17 for LANCZOS2, and 9 for HAMMING. As a result, HAMMING1 can end up be roughly three times as fast as the typical LANCZOS3. In terms of visual quality, HAMMING1 will be obviously worse than filters that have a larger window. The motivation of this change is that not all processors are equally equipped, and while LANCZOS3 does provide good quality, it will be completely inadequate in speed on slower processors (as found on Google TV), and it would be worth trading some visual quality for speed. Because the definitions of what is acceptable from one platform to another will differ, this change adds generic enums describing various trade offs between quality and speed. And depending on the platform, these would then be mapped to different filters. This change does not contain the other changes made to the all the call sites to transform LANCZOS3 to the appropriate enum. Another CL will have to be checked in for the policy definition. - Improvements in speed by around 10% (the actual speed up depends on the parameters of the scale (scale ratios, sizes of images), as well as the actual processor on which this is run on. The 10% was measured on scale down of 1920x1080 images to 1920/4x1080/4 using the LANCZOS3 filter on a 32bit Atom based using the image_operations_bench. Actual numbers for a 64bit processor are discussed below. This optimization attempts to basically eliminate all zeroes on each side of the filter_size, since it is very likely that the calculated window will go one fraction of a pixel outside of the window where the function is actuall not zero. In many cases, this means it gets rid the convolution by one point. So, using the math above, (w * 2 * z + 1) will have 1 subtracted. The code though is generic and will get rid of more points if possible. - To measure speed, a small utility image_operations_bench was added. Its purpose is to simply measure speed of the actual speed of the convolution without any regards to the actual data. Run with --help for a list of options. The actual measured number is in MB/s (source MB + dest MB / time). The following numbers were found on a 64 bit Release build on a z600: | zero optimization | Filter | no | yes | Hamming1 | 459 | 495 | Lanczos2 | 276 | 294 | Lanczos3 | 202 | 207 | The command line was: for i in HAMMING1 LANCZOS2 LANCZOS3 ; do echo $i; out/Release/image_operations_bench -source 1920x1080 -destination 480x270 -m $i -iter 50 ; done The actual improvements for the zero optimization mentioned above are much more prevalent on a 32bit Atom. - Commented that there is half-pixel error inside the code in image_operations. Because this would effectively changes the results of many scales that are used in win_layout tests, this would effectively break them. As a result, the change here only adds comments about what needs to be changed, but does not fix the issue itself. A subsequent change will remove the comments and enable the fix, and also adds the corrected reference images used for the test. See bug 69999: http://code.google.com/p/chromium/issues/detail?id=69999 - Enhanced the convolver to support arbitrary strides, instead of the hard coded 4 * width. This value is correct on most platforms, but is not on GoogleTV since buffers allocated need to be 32 pixel multiples to exploit HW capabilities. - Added numerous unit tests to cover the new filters as well as adding other ones that are more rigourous than the existing ones. Such a test is the reason, we have found the half pixel error mentioned above. TEST=This was tested against the existing unit tests, and the added unit tests on a 64 bit Linux platform. The tests were then ran under valgrind to check for possible memory leaks/ and errors. The tests do come out clean (except the preexisting file descriptor 'leaks' coming from other tests that are linked with test_shell_tests Actual credit to most of the actual changes go to various contributors of the Google TV team. Note that there are two types of optimizations that are possible beyond these changes that are not done here: 1/ Use the fact that the filter coefficients will be periodic to reduce the cost of calculating the coefficients (though typically in the noise), but rather when the convolution is done to decrease cache misses on the coefficients. Experiments showed that on an Atom, this can yield 5 % improvement. 2/ This code is the prime target for the use of SIMD instructions. BUG=47447, 62820, 69999 Patch by evannier@google.com Original review http://codereview.chromium.org/5575010/ git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73110 0039d316-1c4b-4281-b951-d872f2087c98
* Roll Skia Deps: 716 -> 741vandebo@chromium.org2011-01-291-0/+7
| | | | | | | | | | | | BUG=none TEST=none First Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=72978 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=72990 Review URL: http://codereview.chromium.org/6279014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73059 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 72978 - Roll Skia Deps: 716 -> 740vandebo@chromium.org2011-01-281-6/+0
| | | | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/6279014 TBR=vandebo@chromium.org Review URL: http://codereview.chromium.org/6258024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72990 0039d316-1c4b-4281-b951-d872f2087c98
* Roll Skia Deps: 716 -> 740vandebo@chromium.org2011-01-281-0/+6
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/6279014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72978 0039d316-1c4b-4281-b951-d872f2087c98
* export skia defines to its clients, so they see the same conditional codereed@google.com2011-01-211-0/+5
| | | | | | | | | | | | and headers -- in particular we need to export the reference to the chrome specific glconfig file (GrGLConfig_chrome.h) BUG=none TEST=none Review URL: http://codereview.chromium.org/6297012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72174 0039d316-1c4b-4281-b951-d872f2087c98
* Remove obsolete base/lock.h and fix up callers to use the new header file andbrettw@chromium.org2011-01-211-7/+7
| | | | | | | | | | | the base namespace. Fix several files including lock.h unnecessarily. BUG=none TEST=none Original review=http://codereview.chromium.org/6142009/ Patch by leviw@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72106 0039d316-1c4b-4281-b951-d872f2087c98
* Add gpu/ files from the public skia project into the chrome build. This is inthakis@chromium.org2011-01-211-1/+102
| | | | | | | | | | | | | | | | | preparation for experimenting with them to gpu-accelerate various aspects of chrome's drawing. In this initial patch, the files will be built, but not called. Now with dependency on gpu lib for sharedlib build on linux TEST=be sure that page rendering, and <canvas> rendering, look the same as before Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=71998 Review URL: http://codereview.chromium.org/6357006 Patch from Mike Reed <reed@google.com>. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72103 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Add gpu/ files from the public skia project into the chrome build."maruel@chromium.org2011-01-201-101/+1
| | | | | | | | | | | This reverts commit r71998. It was committed by error by the commit bot. BUG= TEST= Review URL: http://codereview.chromium.org/6351011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72000 0039d316-1c4b-4281-b951-d872f2087c98
* Add gpu/ files from the public skia project into the chrome build. This is inreed@google.com2011-01-201-1/+101
| | | | | | | | | | | | preparation for experimenting with them to gpu-accelerate various aspects of chrome's drawing. In this initial patch, the files will be built, but not called. TEST=be sure that page rendering, and <canvas> rendering, look the same as before Review URL: http://codereview.chromium.org/6357006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71998 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 71982 - [Committed on behalf of reed@google.com]senorblanco@google.com2011-01-201-101/+1
| | | | | | | | | | | | | | | | | | Add gpu/ files from the public skia project into the chrome build. This is in preparation for experimenting with them to gpu-accelerate various aspects of chrome's drawing. In this initial patch, the files will be built, but not called. BUG=none TEST=be sure that page rendering, and <canvas> rendering, look the same as before Review URL: http://codereview.chromium.org/6357006 TBR=senorblanco@chromium.org Review URL: http://codereview.chromium.org/6329014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71986 0039d316-1c4b-4281-b951-d872f2087c98
* [Committed on behalf of reed@google.com]senorblanco@chromium.org2011-01-201-1/+101
| | | | | | | | | | | | | | | Add gpu/ files from the public skia project into the chrome build. This is in preparation for experimenting with them to gpu-accelerate various aspects of chrome's drawing. In this initial patch, the files will be built, but not called. BUG=none TEST=be sure that page rendering, and <canvas> rendering, look the same as before Review URL: http://codereview.chromium.org/6357006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71982 0039d316-1c4b-4281-b951-d872f2087c98
* Add OVERRIDE in the same places the windows version of the file has them.thakis@chromium.org2011-01-181-22/+25
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/6292003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71669 0039d316-1c4b-4281-b951-d872f2087c98
* Roll skia r690:r699.thakis@chromium.org2011-01-171-0/+7
| | | | | | | | | | r692 fixes a valgrind error. r691 brings in optional gradient dithering code for 32bit pixels. Disable this in chrome for now. BUG=41756,69531,69452 TEST=none TBR=reed git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71607 0039d316-1c4b-4281-b951-d872f2087c98
* Add font-equivalent mapping for a few Chinese/Japanese fonts for CrOS.jshin@chromium.org2011-01-131-23/+74
| | | | | | | | | | | | | | | | | | | | | | The following aliases are added to be recognized in addition to what we have. The first four are applicable to Chrome on Linux and ChromeOS. The last two are for Chrome OS. IPAPMincho -> MS P Mincho IPAMincho -> MS Mincho IPAPGothic -> MS P Gothic IPAGothic -> MS Gothic Song ASC -> Simsun N Song ASC -> NSimsun BUG=65382,chromium-os:10182,chromium-os:8757 TEST=Install IPA fonts on Linux and make sure that Windows Japanese fonts are not installed on your machine. Also, add what's added in http://codereview.chromium.org/5695005/ to your copy of /etc/fonts/local.conf. And, load cjfontalias.html attached to http://crosbug.com/10182 to make sure that all three columns look identical (each rows should be different). Review URL: http://codereview.chromium.org/5578008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71295 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: Explicitly set the colorspace on SkBitmap -> CGImageRef conversions.thakis@chromium.org2011-01-122-3/+17
| | | | | | | | | | | | | The color space was hardcoded as "generic rgb" in skia. This is not always correct, also skia is changing this color space around a lot currently. To protect us from their unreliable default, hardcode "generic rgb" as default on our side for now, but make it possible for clients to provide their own color space. Use this to let tabpose and the favicon code pass in the device colorspace. BUG=24267,50307 TEST=Open tabpose. Delayed thumbnails should look like backing-store backed thumbnails. The colors of favicons should now match other browsers. Review URL: http://codereview.chromium.org/6117006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71208 0039d316-1c4b-4281-b951-d872f2087c98
* When printing a page containing alpha blending on a printer which doesn't ↵senorblanco@chromium.org2011-01-122-1/+8
| | | | | | | | | | | | | support alpha blending, post-process the metafile to replace the AlphaBlend calls with BitBlts from a software-composited rendering of the page so far. BUG=7434 TEST=see bug Review URL: http://codereview.chromium.org/5362002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71177 0039d316-1c4b-4281-b951-d872f2087c98
* roll skia 636:673thakis@chromium.org2011-01-0814-28/+57
| | | | | | | | | | | | | | | | | I need r666 (r667 and r668 are build fixes for r666. r673 fixes a regression that was introduced in r637 – found by the chromium trybots). Some code changes required due to r637, which changed the signature of a pure virtual method and the signatures of several non-virtual methods. I added OVERRIDEs on windows to let this be a compile error in the future. I also added SkBitmapCache.h/cpp to the gyp file which was added in r655. SkGradientShader depends on this. BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=70693 Review URL: http://codereview.chromium.org/6081006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70835 0039d316-1c4b-4281-b951-d872f2087c98
* Start sorting methods in class declarations.erg@google.com2011-01-074-54/+52
| | | | | | | | | | | | | | | | | | | | | | | | A lot of our headers are a mess and aren't organized. Impose the following order on files in the base/ directory: class Blah { each public/protected/private section: typedefs; enums; static constants; ctors; dtors; methods; overridden virtual methods; data members; }; BUG=68682 TEST=compiles Review URL: http://codereview.chromium.org/6081007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70749 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "roll skia 636:673"thakis@chromium.org2011-01-0714-57/+28
| | | | | | | | This reverts "roll skia 636:673", it broke webkit tests. I will re-checkin with suppressions later, and then update baselines after that. TBR=jar git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70700 0039d316-1c4b-4281-b951-d872f2087c98
* roll skia 636:673thakis@chromium.org2011-01-0714-28/+57
| | | | | | | | | | | | | | | I need r666 (r667 and r668 are build fixes for r666. r673 fixes a regression that was introduced in r637 – found by the chromium trybots). Some code changes required due to r637, which changed the signature of a pure virtual method and the signatures of several non-virtual methods. I added OVERRIDEs on windows to let this be a compile error in the future. I also added SkBitmapCache.h/cpp to the gyp file which was added in r655. SkGradientShader depends on this. BUG=none TEST=none Review URL: http://codereview.chromium.org/6081006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70693 0039d316-1c4b-4281-b951-d872f2087c98
* Wire up missing functionality in BitmapPlatformContext to allow the creation ↵brettw@chromium.org2011-01-065-26/+29
| | | | | | | | | | | | | of a skia::PlatformCanvas from a CGContextRef. TEST=test_shell_tests, try (mac,win,linux) Original review=http://codereview.chromium.org/6064007/ Patch by sjl@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70596 0039d316-1c4b-4281-b951-d872f2087c98
* harfbuzz: remove extra settings export now that WebKit is fixedevan@chromium.org2011-01-051-6/+0
| | | | | | | | | | | | | WebKit was relying on Skia to export Harfbuzz include paths. Now that WebKit is fixed to explicitly depend on Harfbuzz, we can remove the Skia export. BUG=68551 TEST=still compiles Review URL: http://codereview.chromium.org/6063008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70536 0039d316-1c4b-4281-b951-d872f2087c98
* harfbuzz: merge harfbuzz and harfbuzz_interface librariesevan@chromium.org2011-01-041-2/+3
| | | | | | | | | | | | Though we build two libraries here, we always use them together, and it simplifies the gyp files to have one. BUG=68551 TEST=compiles Review URL: http://codereview.chromium.org/5986015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70448 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/mac_util.h to base/mac and use the base::mac namespace.brettw@chromium.org2011-01-011-2/+2
| | | | | | | | | | | Fix up callers to use the new location & namespace. Remove includes from  files where it wasn't necessary. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6046009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70359 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the 'using' declaration of StringAppendV.tfarina@chromium.org2010-12-231-3/+3
| | | | | | | | | BUG=None TEST=trybots Review URL: http://codereview.chromium.org/5993005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70012 0039d316-1c4b-4281-b951-d872f2087c98
* Move unix domain socket support out of base and into chrome common. This is notbrettw@chromium.org2010-12-225-182/+13
| | | | | | | | | | used outside of Chrome. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/5981006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69970 0039d316-1c4b-4281-b951-d872f2087c98
* Flush the cairo surface before we try to write to it.vandebo@chromium.org2010-12-151-3/+6
| | | | | | | | | | | Newer versions of Cairo assert if the surface isn't flushed before it is marked dirty but this should be done anyway to ensure correct layering of draw operations. BUG=65692 TEST=No crash on Maverick (Ubuntu 10.10) Review URL: http://codereview.chromium.org/5737004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69334 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-141-4/+7
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69107 0039d316-1c4b-4281-b951-d872f2087c98
* Even more virtual method deinlining.erg@google.com2010-12-132-5/+15
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5741001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69041 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 68932 - Make members of Singleton<T> private and only visible to the ↵satish@chromium.org2010-12-111-7/+4
| | | | | | | | | | | | | | | | | | singleton type. This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 TBR=satish@chromium.org Review URL: http://codereview.chromium.org/5721005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68936 0039d316-1c4b-4281-b951-d872f2087c98
* Make members of Singleton<T> private and only visible to the singleton type. ↵satish@chromium.org2010-12-111-4/+7
| | | | | | | | | | | | | | | This enforces that the Singleton<T> pattern can only be used within classes which want singleton-ness. As part of this CL I have also fixed up files which got missed in my previous CLs to use a GetInstance() method and use Singleton<T> from the source file. There are a small number of places where I have also switched to LazyInstance as that was more appropriate for types used in a single source file. BUG=65298 TEST=all existing tests should continue to pass. Review URL: http://codereview.chromium.org/5682008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68932 0039d316-1c4b-4281-b951-d872f2087c98
* Start deinlining non-empty virtual methods. (This will be automatically checkederg@google.com2010-12-092-4/+10
| | | | | | | | | | | for in the future.) BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5574006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68746 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of std::wstring version of HasSwitch.tfarina@chromium.org2010-12-081-1/+1
| | | | | | | | | BUG=24672 TEST=trybots Review URL: http://codereview.chromium.org/5649003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68650 0039d316-1c4b-4281-b951-d872f2087c98
* Roll Skia to r624.vandebo@chromium.org2010-11-171-0/+2
| | | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/4842001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66494 0039d316-1c4b-4281-b951-d872f2087c98
* Fix clang build by moving ToLowerASCII into base namespace.tfarina@chromium.org2010-11-031-2/+2
| | | | | | | | | BUG=None TEST=trybots Review URL: http://codereview.chromium.org/4371001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64879 0039d316-1c4b-4281-b951-d872f2087c98
* Roll Skia deps to r621.vandebo@chromium.org2010-10-2718-50/+50
| | | | | | | | | | | | Move device capabilities from device factories to the device class itself. (Skia r618) Cleanup: remove the Sk prefix from our device factories and inherit from SkDeviceFactory instead of SkRasterDeviceFactory (no real change). BUG=None TEST=None Review URL: http://codereview.chromium.org/4143002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64086 0039d316-1c4b-4281-b951-d872f2087c98
* Create gfx::ScopedImage. This wraps a gfx::NativeImage and hides the underlyingrsesek@chromium.org2010-10-211-2/+2
| | | | | | | | | | | memory management for each platform under a consistent interface. BUG=none TEST=Compile and gfx_unittests Review URL: http://codereview.chromium.org/3841002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63359 0039d316-1c4b-4281-b951-d872f2087c98
* Move scoped_cftyperef from base to base/mac, use the new namespace, and name itbrettw@chromium.org2010-10-171-3/+3
| | | | | | | | | | properly (scoped_cftyperef -> ScopedCFTypeRef). TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3855001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62887 0039d316-1c4b-4281-b951-d872f2087c98
* Update use of SkCanvas and SkDevice to match change in Skia:vandebo@chromium.org2010-10-1520-139/+182
| | | | | | | | | | | Refactor SkCanvas so that backends don't need to override it - instead take a device factory class. see: http://codereview.appspot.com/2103045/ BUG=New Skia devices required a corresponding canvas TEST=None Review URL: http://codereview.chromium.org/3590011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62813 0039d316-1c4b-4281-b951-d872f2087c98
* Move Stats, histograms, and field trial into a metrics subdirectory of base andbrettw@chromium.org2010-10-141-1/+1
| | | | | | | | | 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
* Enhance the post-mortem information provided by ↵brettw@chromium.org2010-10-081-7/+30
| | | | | | | | | | | | | | | CrashForBitmapAllocationFailure. Turn off optimizations to allow a correct display of the point of failure, and store the results of the WinAPI functions in local variables for an easier post-mortem inspection. BUG=42679 TEST=none Original review=http://codereview.chromium.org/3400006 Patch by Cosmin Truta git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61953 0039d316-1c4b-4281-b951-d872f2087c98
* clang/mac: Fix most problems in unittest targets in webkit.gypthakis@chromium.org2010-10-031-0/+2
| | | | | | | | | | | | This does to WebPoint/gfx::Point what we did to WebString/string16 last friday and fixes a bunch of other small issues. Also fix two tiny issues in the base unit tests target. BUG=None TEST=None TBR=hans git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61343 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Move ctors/dtors into implementation files. Adds ctors/dtors to ↵erg@google.com2010-09-302-15/+19
| | | | | | | | | | | | | | non-POD structs. Cuts ~2MB off our .a files (Debug, Linux). Also added the "virtual" keyword on a whole bunch of virtual dtors that were missing it. BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3522004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61100 0039d316-1c4b-4281-b951-d872f2087c98
* FBTF: Moves code to the headers.erg@google.com2010-09-282-2/+9
| | | | | | | | | | | | | 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
* Fix nitspiman@chromium.org2010-09-271-2/+2
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/3381027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60715 0039d316-1c4b-4281-b951-d872f2087c98