summaryrefslogtreecommitdiffstats
path: root/skia
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Remove mutex from skia's atomic operationspiman@chromium.org2010-09-242-2/+48
| | | | | | | | | BUG=none - high CPU usage of locks TEST=run chrome on Atom-based device, run perf, check that sk_atomic_inc/dec isn't hot Review URL: http://codereview.chromium.org/3441031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60543 0039d316-1c4b-4281-b951-d872f2087c98
* Remove use of Skia's safeUnref() in favor of SkSafeUnref(...)vandebo@chromium.org2010-09-242-4/+4
| | | | | | | | | | | safeUnref() technically has undefined behavior on a null pointer. TEST=green bots BUG=none Review URL: http://codereview.chromium.org/3475007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60483 0039d316-1c4b-4281-b951-d872f2087c98
* Roll skia to tip of tree 593 -> 599vandebo@chromium.org2010-09-221-0/+1
| | | | | | | | | | | Looks like ARM work and some refactoring. BUG=none TEST=none Review URL: http://codereview.chromium.org/3432012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60235 0039d316-1c4b-4281-b951-d872f2087c98
* Support for building Chrome using Clang.evan@chromium.org2010-09-181-0/+8
| | | | | | | | | | | | | | | | To build, set the clang=1 gyp_define. This patch is the culmination of many months of effort and many patches. It contains the minimal changes to Chrome that are Clang-specific. With this, I can build the "chrome" target. Once this patch is in, we can incrementally fix bits of Chrome and various tests and remove the Clang-specific workarounds. Review URL: http://codereview.chromium.org/522020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59882 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Try to fix Crash at gfx::CGImageToSkBitmap."dcheng@chromium.org2010-09-171-2/+0
| | | | | | | | | | | The review for the original patch is http://codereview.chromium.org/3352014; unfortunately, the original patch didn't address the root cause of the crash. Now that the WebKit fix is checked in, we no longer need this change. BUG=54880 TEST=none Review URL: http://codereview.chromium.org/3393004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59831 0039d316-1c4b-4281-b951-d872f2087c98
* Remove two spurious asserts.senorblanco@chromium.org2010-09-161-4/+0
| | | | | | | | | BUG=50362 TEST=see bug for test case Review URL: http://codereview.chromium.org/3390009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59663 0039d316-1c4b-4281-b951-d872f2087c98
* Try to fix Crash at gfx::CGImageToSkBitmap.jianli@chromium.org2010-09-091-0/+2
| | | | | | | | | | | The fix is to add the check for NULL context since skia::BitmapPlatformDevice::Create might return NULL. BUG=54880 TEST=none Review URL: http://codereview.chromium.org/3352014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58952 0039d316-1c4b-4281-b951-d872f2087c98
* Move BitmapPlatformDevice::makeOpaque into a shared filetony@chromium.org2010-09-027-124/+75
| | | | | | | | | | | so it's implemented on all platforms. This makes the method available on Linux+Mac, while removing BitmapPlatformDevice::processPixels from Mac (doesn't appear to be used anywhere). Review URL: http://codereview.chromium.org/3227007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58274 0039d316-1c4b-4281-b951-d872f2087c98
* Move BitmapPlatformDeviceData into its own header file.tony@chromium.org2010-08-315-175/+136
| | | | | | | | | I'm trying to share some common code between the platforms so I'm starting by merging into a common header file. Review URL: http://codereview.chromium.org/3212009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58034 0039d316-1c4b-4281-b951-d872f2087c98
* Bug=52092brettw@chromium.org2010-08-301-1/+14
| | | | | | | | | | | In the code above, we tell windows to create an HBITMAP that contains enough size for height*width * sizeof pixel . However, bitmap.getSize() can return a size greater than that. The underlying pixel array could represent a bitmap of greater width. An example of this occuring is in SkCanvas.extractSubset where we create a truncated bitmap that shares the same underlying pixel buffer. Since, we end up copying too much in memcpy there is a potential for this to crash. Cannot reproduce as easily with Chrome, since it depends on a particular device context for a bitmap to be truncated. Original review: http://codereview.chromium.org/3157011/show Patch by udam.saini@gmail.com git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57906 0039d316-1c4b-4281-b951-d872f2087c98
* Include ICU headers in a way that will also work with use_system_icu=1phajdan.jr@chromium.org2010-08-171-1/+1
| | | | | | | | | TEST=none BUG=28294 Review URL: http://codereview.chromium.org/3145014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56396 0039d316-1c4b-4281-b951-d872f2087c98
* Make SkFontHost_fontconfig support TTC font files.jshin@chromium.org2010-08-066-58/+119
| | | | | | | | | | | | | | In addition to this change, third_party/skia/src/port/SkFontHost_Freetype.cpp needs a couple of lines changed. The Skia part is at http://codereview.appspot.com/1847046/show BUG=50389 TEST=Install ttf-wqy-microhei package on Ubuntu and go to http://i18nl10n.com/chrome/ttc2.html. Latin letters in the 1st line should be monospaced while they're proportional in the second line. Review URL: http://codereview.chromium.org/2870073 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55262 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: Some clang appeasing.thakis@chromium.org2010-08-041-1/+1
| | | | | | | | BUG=TEST=none Review URL: http://codereview.chromium.org/3089004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54870 0039d316-1c4b-4281-b951-d872f2087c98
* Add #include utf_string_conversions.h to all files that use ASCIIToWide andbrettw@chromium.org2010-08-031-0/+1
| | | | | | | | | | | | | | | ASCIIToUTF16. I removed string_util includes from a few places where it obviously wasn't needed. In a separate pass, I'm going to remove ASCIITo* from string_util, then I'm going to do an even later pass to find the unnecessary string_util.h includes and remove them. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3058027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54746 0039d316-1c4b-4281-b951-d872f2087c98
* Add additional aliases (Arimo, Tinos and Cousine) for Arial, Times New Roman,jshin@chromium.org2010-08-021-0/+5
| | | | | | | | | | | | | | | | and Courier New. Arimo, Tinos and Cousine are the fonts to use on Chrome OS in place of the above three fonts. BUG=cros:5287 (http://crosbug.com/5287) TEST=Make sure that you don't have Arial, Times New Roman and Courier New. Change /etc/fonts/conf.d/30-metric-aliases to include the 3 fonts above as aliases to Arial,TNR and Courier New. Go to a page specifying Arial, TNR and Courier New and see if they're rendered with Arimo, Tinos, and Cousine, instead. Review URL: http://codereview.chromium.org/3089001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54578 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on SK_USE_FLOATBITS for Skia to force safe float-to-int conversions. ↵senorblanco@google.com2010-07-271-0/+7
| | | | | | | | | | | | | This is a temporary change until Skia supports saturating float->int conversions. [Landed on behalf of wjmaclean] TEST= existing layout tests BUG= WebKit 25645 (https://bugs.webkit.org/show_bug.cgi?id=25645) Review URL: http://codereview.chromium.org/3014039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53795 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-2627-0/+27
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Fix include guardthakis@chromium.org2010-07-261-2/+2
| | | | | | | | | | | BUG=50273 TEST=none TBR=erg Review URL: http://codereview.chromium.org/3043022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53713 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 53498 to see if it is causing filterRegions.svg to fail.brettw@chromium.org2010-07-232-14/+0
| | | | | | | TBR=ctruta Review URL: http://codereview.chromium.org/3046017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53506 0039d316-1c4b-4281-b951-d872f2087c98
* Work around Skia's inability to handle degenerate bitmaps. brettw@chromium.org2010-07-232-0/+14
| | | | | | | | | | | | | This workaround is split between Chromium and WebKit. The corresponding WebKit change is available at https://bugs.webkit.org/show_bug.cgi?id=41175 BUG=37986 TEST=LayoutTests/svg/filters/filter-empty-g.svg Patch by ctruta@chromium.org Original review http://codereview.chromium.org/2965004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53498 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: unit test for setting a clip rect with a scale transformthakis@chromium.org2010-07-191-0/+66
| | | | | | | | | BUG=none TEST=self Review URL: http://codereview.chromium.org/3030003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52906 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: Fix drawing when the device's transform has a scaling part.thakis@chromium.org2010-07-162-8/+11
| | | | | | | | | | | This currently never happens in practice, but I have a patch which uses the PaintAt IPC, which doesn't work without this fix. Without this, the clip rect is scaled down too, which means if I send a PaintAt IPC that draws the renderer at 800x600 into a 400x300 pixmap, the clip rect is 200x150, because render_view sets the scale t0 0.5 and the clip rect to 400x300. BUG=none TEST=Everything still paints correctly. Review URL: http://codereview.chromium.org/3033005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52712 0039d316-1c4b-4281-b951-d872f2087c98
* test_shell: fix for newer cairosevan@chromium.org2010-07-131-1/+5
| | | | | | | | | | | We need to call cairo_surface_mark_dirty to let Cairo know that we've twiddled the pixels without its knowledge. Without this, on current Cairo versions, test_shell's web widget shows up as a gray box. Review URL: http://codereview.chromium.org/2982002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52225 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Flush cairo surface at end of CanvasPaintLinux.estade@chromium.org2010-07-082-9/+3
| | | | | | | | | | | I also added some cairo_surface_flush calls for good measure, mostly to match the GIMP patch, but I don't really have any way of testing whether these are necessary. BUG=47064 TEST=manual (see bug) - throbber, download icons, etc. should be fixed Review URL: http://codereview.chromium.org/2802034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51871 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: Fix color space usage in SkiaUtilsMacTestthakis@chromium.org2010-07-071-7/+13
| | | | | | | | | BUG=47885 TEST=test passes on 10.6 Review URL: http://codereview.chromium.org/2873041 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51735 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for Skia data race. This may introduce some performance issues; will ↵senorblanco@google.com2010-06-221-5/+9
| | | | | | | | | | | watch perf bots carefully. BUG=46672 TEST=see perf bits Review URL: http://codereview.chromium.org/2876001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50510 0039d316-1c4b-4281-b951-d872f2087c98
* TTF: Re-disable crashing test.vandebo@chromium.org2010-06-181-1/+2
| | | | | | | | | | TBR=jhawkins TEST=none BUG=none Review URL: http://codereview.chromium.org/2841016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50283 0039d316-1c4b-4281-b951-d872f2087c98
* TTF: Reenable some disabled tests.vandebo@chromium.org2010-06-181-1/+1
| | | | | | | | | | | | | | | | (recommit changes that were reverted, minus troublesome one original CL: http://codereview.chromium.org/2819011 ) DevToolsSanityTest.TestConsoleLog seems to work ProxyResolverV8Test.FAILS_ReturnUnicode VectorCanvasTest.FAILS_Matrix TEST=none BUG=disabled tests Review URL: http://codereview.chromium.org/2870014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50279 0039d316-1c4b-4281-b951-d872f2087c98
* FAILS tests should not turn the bot red.vandebo@chromium.org2010-06-181-1/+1
| | | | | | | | | | | | | | | | | | | Revert 50258 - TTF: Reenable some disabled tests. DevToolsSanityTest.TestConsoleLog seems to work ProxyResolverV8Test.FAILS_ReturnUnicode DepTest.FAILS_TestDepDisable VectorCanvasTest.FAILS_Matrix TEST=none BUG=disabled tests Review URL: http://codereview.chromium.org/2819011 TBR=vandebo@chromium.org Review URL: http://codereview.chromium.org/2862016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50261 0039d316-1c4b-4281-b951-d872f2087c98
* TTF: Reenable some disabled tests.vandebo@chromium.org2010-06-181-1/+1
| | | | | | | | | | | | | | DevToolsSanityTest.TestConsoleLog seems to work ProxyResolverV8Test.FAILS_ReturnUnicode DepTest.FAILS_TestDepDisable VectorCanvasTest.FAILS_Matrix TEST=none BUG=disabled tests Review URL: http://codereview.chromium.org/2819011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50258 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 49982 - patchthakis@chromium.org2010-06-161-1/+0
| | | | | | | TBR=thakis@chromium.org Review URL: http://codereview.chromium.org/2825006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50002 0039d316-1c4b-4281-b951-d872f2087c98