summaryrefslogtreecommitdiffstats
path: root/skia
Commit message (Collapse)AuthorAgeFilesLines
* 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
* patchthakis@chromium.org2010-06-161-0/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49982 0039d316-1c4b-4281-b951-d872f2087c98
* Map Liberation Sans Mono and Ascender Sans Mono to Courier New.jshin@chromium.org2010-06-161-4/+11
| | | | | | | | | | | | | | | | | | | They're metrically compatible with each other, but the former is sans serif (monospace) while ther latter is serif (monospace), which is why we didn't include this mapping in the two previous CLs (one by Evan and the other by me). However, on ChromeOS, we use 'Ascender Sans Mono' as a substitute for Courier New so that they have to be regarded as 'identical'. Without this change, a text node styled with 'Courier New' is not rendered with our replacement font while a text node styled with 'Courier New, momospace' or 'monospace' is rendered with our replacement font. BUG=cros:4006 TEST=See the bug. Review URL: http://codereview.chromium.org/2838003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49975 0039d316-1c4b-4281-b951-d872f2087c98
* Mac/clang: Uncontentious fixes.thakis@chromium.org2010-06-111-1/+1
| | | | | | | | | | | | | * Remove unused variables * Make types in h and cc files agree * Use subclasses if we call subclass methods * Fix one real bug (`if (a); a->foo()`) * Fix forward declarations to be correct * Don't mark some definitions with "extern" Review URL: http://codereview.chromium.org/2730015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49570 0039d316-1c4b-4281-b951-d872f2087c98
* Treat "Ascender Sans" and "Ascender Serif" as equivalent to jshin@chromium.org2010-06-071-4/+9
| | | | | | | | | | | | | | | | | | | | "Arial" and "Times New Roman" as Liberation Sans/Serif are. Ascender Sans/Serif are metrically compatible fonts with the Arial/Times New Roman. The names are tentative and will change when they're finally released. I didn't add 'MONOSPACE' to FontEquivClass enum for 'Courier New => Ascender Sans Mono'. We can do that when the font and its name are finalized. BUG=cros:3815 (http://crosbug.com/3815 ) TEST=Without Liberation/Arial/TNR on a machine but with Ascender Sans/Serif, go to a page specifying Arial and Times New Roman. Ascender Sans/Serif are used in their place and there is no noticeable layout issue. Review URL: http://codereview.chromium.org/2674004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49077 0039d316-1c4b-4281-b951-d872f2087c98
* chunk of straightforward ifdef/include changes for BSD portpvalchev@google.com2010-05-191-4/+4
| | | | | | | based on sprewell's patch Review URL: http://codereview.chromium.org/2069009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47687 0039d316-1c4b-4281-b951-d872f2087c98
* GYP changes for FreeBSD and OpenBSDpvalchev@google.com2010-05-141-1/+1
| | | | | | Review URL: http://codereview.chromium.org/1480002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47327 0039d316-1c4b-4281-b951-d872f2087c98
* NSSize is equivalent to CGSize in the 64-bit Mac environment.mark@chromium.org2010-05-141-0/+4
| | | | | | | | BUG=44215, 18323 TEST=none Review URL: http://codereview.chromium.org/2134003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47308 0039d316-1c4b-4281-b951-d872f2087c98