summaryrefslogtreecommitdiffstats
path: root/skia
Commit message (Collapse)AuthorAgeFilesLines
* Histogram the time we spend resampling images. We suspect this may be causingbrettw@chromium.org2009-05-201-0/+8
| | | | | | | performance problems, so it would be nice to see what average users are seeing. Review URL: http://codereview.chromium.org/113604 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16486 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Skia includes to use the whole path name.brettw@chromium.org2009-05-1926-57/+53
| | | | | | Review URL: http://codereview.chromium.org/115412 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16374 0039d316-1c4b-4281-b951-d872f2087c98
* Add some missing copyright headers.senorblanco@chromium.org2009-05-152-0/+8
| | | | | | | | R=brettw Review URL: http://codereview.chromium.org/115414 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16185 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the shared build on linux after the skia move.senorblanco@chromium.org2009-05-131-1/+0
| | | | | | | | | Committed on behalf of craig.schlenter@gmail.com. Original review URL=http://codereview.chromium.org/115303 Review URL: http://codereview.chromium.org/115310 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15979 0039d316-1c4b-4281-b951-d872f2087c98
* More green please: Vector canvas matrix test disable, mac fix, mark layoutsenorblanco@chromium.org2009-05-131-1/+1
| | | | | | | | | | tests failing. TBR=brettw Review URL: http://codereview.chromium.org/113342 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15952 0039d316-1c4b-4281-b951-d872f2087c98
* This CL updates chrome to the latest version of skia, retrieved via DEPS, andsenorblanco@chromium.org2009-05-13161-21079/+837
| | | | | | | | | | | | | | | | | | | | | | | | | | | placed in third_party. All relevant skia changes (for all 3 platforms) have been upstreamed. Most of this CL is mind-numbingly repetitive. Things of interest are: skia.gyp (now points at third_party versions), DEPS, and SkUserConfig.h. stdint.h: Skia now requires C99 integer types, which MSVC doesn't support natively. I have put typedefs in config/win/stdint.h. Note that the new version of skia appears to render rects whose coordinates are "backwards" (ie., x2 < x1 or y2 < y1), which were formerly culled. There were a couple obvious instances of this in the code which I fixed, but there may be more. There were ~35 layout test failures due to minor pixel differences which I rebaselined on Windows and Linux, and 8 genuine failures related to masks and stroked text, which I have put in text_expectations.txt and assigned to myself. (There was another change which broke ~1700 tests on each platform, but I put that change behind an #ifdef for now). R=brettw Review URL: http://codereview.chromium.org/65012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15949 0039d316-1c4b-4281-b951-d872f2087c98
* Remove executable bit from a bunch of files that shouldn't have it.evan@chromium.org2009-05-116-0/+0
| | | | | | | | | | (No code change.) git ls-tree -r HEAD | grep '^100755' | cut -f2 | egrep '\.(png|txt|mm|cc|h|checksum|asm|js|html|c|css|xml|grd|json)$' | xargs chmod a-x git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15809 0039d316-1c4b-4281-b951-d872f2087c98
* This is the first pass at themes.glen@chromium.org2009-05-096-48/+95
| | | | | | | | | | | | This CL is paired with http://codereview.chromium.org/67284 This CL (for commit purposes) includes http://codereview.chromium.org/67284 BUG=4463,11232,11233,11234,11235 Review URL: http://codereview.chromium.org/99030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15704 0039d316-1c4b-4281-b951-d872f2087c98
* Redo of http://codereview.chromium.org/100097 to make work on Linux and Mac.glen@chromium.org2009-05-066-5/+650
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15380 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes two Linux canvas related bugs.sky@chromium.org2009-05-041-7/+6
| | | | | | | | | | | | | | | . The platform paint was allocating at a size bigger than necessary. . ChromeCanvas::DrawStringInt was not taking into account the matrix on the canvas, which means the text could be drawn at the wrong location. BUG=none TEST=none Review URL: http://codereview.chromium.org/99279 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15205 0039d316-1c4b-4281-b951-d872f2087c98
* Integrate change of Skia upstream.deanm@chromium.org2009-04-309-40/+82
| | | | | | | | | | | | | | | | | This is a cherry-pick of the following change: http://code.google.com/p/skia/source/detail?r=159 We introduce this change for the 'lighter' composite operation. We need kAdd_Mode, which is introduced in this change for the operation. Patch by Shinichiro Hamaji. BUG=1619 Review URL: http://codereview.chromium.org/93093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14938 0039d316-1c4b-4281-b951-d872f2087c98
* A better fix for http://www.crbug.com/2044: crashsenorblanco@chromium.org2009-04-292-0/+17
| | | | | | | | | | | | | | | | | | | | | | on large <canvas> elements. We disable the __debugbreak only when skia tells us it is prepared to correctly handle a failed (NULL) malloc(). It does this by calling sk_malloc_flags() without SK_MALLOC_THROW. Note that, since the switch to tcmalloc, the new_handler was not getting called at all (since tcmalloc doesn't support it yet), so this crash is currently unreproducible in trunk. In order to test this change, I reverted the tcmalloc change in my client. This is not the case in the stable branch, since it doesn't use tcmalloc, so this change is still needed there. (It will also be needed in trunk again once mbelshe's re-implementation of the new_handler is in). BUG=http://www.crbug.com/2044 Review URL: http://codereview.chromium.org/100163 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14891 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 14712 on behalf of glen.hbono@chromium.org2009-04-286-649/+5
| | | | | | | TBR=glen Review URL: http://codereview.chromium.org/100097 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14713 0039d316-1c4b-4281-b951-d872f2087c98
* Add bitmap manipulation functions in advance of themes.glen@chromium.org2009-04-286-5/+649
| | | | | | | HSLToSkColor premultiplies its output, should this instead live in the ImageOperations bitmap munging code? Review URL: http://codereview.chromium.org/79082 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14712 0039d316-1c4b-4281-b951-d872f2087c98
* More linux ifdef tweaks. This reverts my earlier change (13503).sky@chromium.org2009-04-271-7/+0
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/100046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14628 0039d316-1c4b-4281-b951-d872f2087c98
* Fix compile error on gcc.brettw@chromium.org2009-04-241-2/+13
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14456 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a bug in the size computation for Skia masking.brettw@chromium.org2009-04-241-2/+14
| | | | | | BUG=10736 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14454 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the ChromeCanvasPaint Linux code.deanm@chromium.org2009-04-231-1/+6
| | | | | | | | | | | | | My previous checkin was wrong, because the backing bitmap was just the damaged rect, not the entire window. Since the translation will be ignored for the cairo surface, allocate from the origin to the edge of the damage rect. Patch from Vincent Zanotti. Review URL: http://codereview.chromium.org/62149 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14296 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: Apply upstream patch:agl@chromium.org2009-04-221-5/+4
| | | | | | | | | | Applying this patch locally to check that it doesn't break any layout tests etc: http://codereview.appspot.com/41081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14250 0039d316-1c4b-4281-b951-d872f2087c98
* Build on Linux with shared libraries (significant chunks courtesy craigsch):sgk@google.com2009-04-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Set $RPATH to $LIB_DIR in the SCons configuration. * Add missing dependencies: * net/net.gyp:net => testing/gtest.gyp:gtest * third_party/libxml/libxml.gyp:xmlcatalog => third_party/icu38/icu38.gyp:icuuc * chrome/chrome.gyp:perf_tests => renderer => views => webkit/webkit.gyp:glue * Add files: * third_party/WebKit/WebCore/loader/icon/IconRecord.cpp * third_party/WebKit/WebCore/page/Coordinates.cpp * skia/sgl/SkUnPreMultiply.cpp * Exclude on Linux: * chrome/views/controls/scroll_view.cc * chrome/views/focus/external_focus_tracker.cc * media/filter/ffmpeg_demuxer.{cc,h} * Remove files: * third_party/WebKit/WebCore/Configurations/Version.xcconfig * Sort the chrome.gyp:views linux exclusion list. * DEPS roll for $SHLINKFLAGS settings in gyp. Review URL: http://codereview.chromium.org/88058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14166 0039d316-1c4b-4281-b951-d872f2087c98
* Fix my attempt to disable part of unit test for Mac.dglazkov@chromium.org2009-04-171-1/+1
| | | | | | | | TBR=awalker Review URL: http://codereview.chromium.org/77033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13940 0039d316-1c4b-4281-b951-d872f2087c98
* Disable Path-clipping test for Mac to fix the build.dglazkov@chromium.org2009-04-171-0/+4
| | | | | | | | TBR=awalker BUG=9904 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13939 0039d316-1c4b-4281-b951-d872f2087c98
* Make non-rectangular clip region apply in the correct location.dglazkov@chromium.org2009-04-173-16/+75
| | | | | | | | | BUG=9904 R=brettw Review URL: http://codereview.chromium.org/75020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13934 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the failure to fail in PlatformCanvasWin ctorcpu@google.com2009-04-161-7/+21
| | | | | | | | | | | | | | | For a renderer CrashForBitmapAllocationFailure does not crash in any of the 4 CHECKS(), it crashes calling GetProcessMemoryInfo() - Because GetProcessMemoryInfo() tries to load PSAPI.dll and the sandbox blocks it. - Now it gives a better dump by disabling the iniling of the function - Adds a check for the shared memory, which I suspect is the real cause for some of the crashes BUG=10585 Review URL: http://codereview.chromium.org/75027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13872 0039d316-1c4b-4281-b951-d872f2087c98
* Linux/Skia: remove VDMX and Harfbuzzagl@chromium.org2009-04-158-388/+2
| | | | | | | | | | | | | | | | In order to unfork our Skia, VDMX parsing has been moved into WebKit in r42548. The Harfbuzz stuff should have been functional, but noone on the WebKit side wants to review a bidi patch so that side never actually landed. At this point it's probably better to remove the current Harfbuzz support in Skia with a view to jumping straight to the version agreed with Mike Reed at some point in the future. http://codereview.chromium.org/75011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13795 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Move VDMX parsing into WebKit.agl@chromium.org2009-04-151-1/+1
| | | | | | | | This is the Chromium side of: https://bugs.webkit.org/show_bug.cgi?id=25116 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13781 0039d316-1c4b-4281-b951-d872f2087c98
* Adds some ifdefs so that test_shell can be compiled on linuxsky@chromium.org2009-04-101-0/+7
| | | | | | | | | | | | | without GTK. I had to recreate this patch as my workspace for various resonds. UGH! BUG=none TEST=none Review URL: http://codereview.chromium.org/67024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13503 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: Fix skia compile error with newer gcc versions.agl@chromium.org2009-04-091-0/+2
| | | | | | | | | http://codereview.chromium.org/63048 (by Craig Schlenter) git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13428 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: Merge upstream's r149.agl@chromium.org2009-04-083-3/+230
| | | | | | | | | | | This brings in support for reading TrueType tables via Skia. This should allow us to move some of our metrics changes into our WebKit port and out of Skia. http://codereview.chromium.org/63133 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13391 0039d316-1c4b-4281-b951-d872f2087c98
* Basic underpinnings of the gyp equivalent of the Linux SHARED=1 build:sgk@google.com2009-04-081-1/+1
| | | | | | | | | parameterize the 'type' setting of the various library targets, with a default of 'static_library'. (Hat tip to Craig Schlenter.) Review URL: http://codereview.chromium.org/62127 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13345 0039d316-1c4b-4281-b951-d872f2087c98
* A few small improvements to ChromeCanvasPaint.deanm@chromium.org2009-04-081-13/+7
| | | | | | | | | | | | | - Don't triple buffer, we are already effectively double buffering by drawing onto a ChromeCanvas (bitmap), and then blitting. We don't need the extra GDK double buffering. - Don't translate the origin, and just blit the dirty rectangle. Review URL: http://codereview.chromium.org/63057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13344 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: layout test fixagl@chromium.org2009-04-081-1/+5
| | | | | | | | | | | I need another round trip land a patch in WebKit to fix it correctly, but noones's around now and I probably won't get a chance before the merge tomorrow morning TBR=evanm git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13327 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: remove fHeight (retry)agl@chromium.org2009-04-082-11/+7
| | | | | | | | | | | | Skia was previously calculating the leading value incorrectly, leading us to add fHeight to get the height of a line of text. Now that Skia is calculating fLeading correctly, we can remove fHeight. http://codereview.chromium.org/62123 https://bugs.webkit.org/show_bug.cgi?id=25083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13316 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Skia: remove fHeight"agl@chromium.org2009-04-072-7/+11
| | | | | | | | This reverts r13300 and r13299. Something clearly went wrong with the layout tests that I didn't notice. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13301 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: remove fHeightagl@chromium.org2009-04-072-11/+7
| | | | | | | | | | | | Skia was previously calculating the leading value incorrectly, leading us to add fHeight to get the height of a line of text. Now that Skia is calculating fLeading correctly, we can remove fHeight. http://codereview.chromium.org/62123 https://bugs.webkit.org/show_bug.cgi?id=25083 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13299 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: break XRange into XMax and XMinagl@chromium.org2009-04-072-7/+8
| | | | | | | | | | | | | This is one of Mike Reed's requests for upstreaming this work since he has a use for the XMin value. (also pulls in the WebKit side of this change) http://codereview.chromium.org/62118 https://bugs.webkit.org/show_bug.cgi?id=25081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13295 0039d316-1c4b-4281-b951-d872f2087c98
* Make the define of SKIA_HARFBUZZ and the link against harfbuzz.asgk@google.com2009-04-071-0/+9
| | | | | | | part of the {direct,export}_dependent_settings in skia. Review URL: http://codereview.chromium.org/63067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13268 0039d316-1c4b-4281-b951-d872f2087c98
* Add Harfbuzz to third_party and Skia support for such.agl@chromium.org2009-04-077-0/+122
| | | | | | | | | | | | | | Harfbuzz is an open source library which is a unification of the Qt and Pango shaping engines. We'll be using it on Chromium Linux to perform complex text shaping. Additionally, we add support for Harfbuzz into Skia, guarded by SKIA_HARFBUZZ. http://codereview.chromium.org/63035/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13214 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: support 1bpp bitmap fonts.agl@chromium.org2009-04-061-10/+34
| | | | | | | | | | | Our Kanji fonts have 1bpp bitmaps rather than outlines and, currently, we assume that all bitmaps from Freetype are 8-bit grayscale. This leads to some glyphs being 8x too thin. http://codereview.chromium.org/63017/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13209 0039d316-1c4b-4281-b951-d872f2087c98
* Fix linking with gold by cleaning up lib dependencies.tc@google.com2009-04-021-1/+3
| | | | | | | | | | | | | | | - Remove pangoft2, we don't use it anywhere. - Add gdk, fontconfig and freetype2 as dependencies of skia. Gdk is used in platform_canvas_linux. - X11, Xrender and Xext are used by the IPC system, so everything that depends on common, needs to link in those libs. By moving the link_settings line into the libcommon.a target, all projects inherit these. Review URL: http://codereview.chromium.org/60070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13055 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the checked-in scons configuration files.sgk@google.com2009-04-012-539/+0
| | | | | | Review URL: http://codereview.chromium.org/53121 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12982 0039d316-1c4b-4281-b951-d872f2087c98
* Skia: bring us closer to upstream.agl@chromium.org2009-03-314-28/+76
| | | | | | | | | | | I want to bring us closer to upstream Skia. This patch consists of hunks pulled from code.google.com/p/skia. I'll also be pushing changes the other way. Review URL: http://codereview.chromium.org/57018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12873 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "..."agl@chromium.org2009-03-314-78/+29
| | | | | | | This reverts commit r12868. I used the wrong commit and messed up the message. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12870 0039d316-1c4b-4281-b951-d872f2087c98
* ...agl@chromium.org2009-03-314-29/+78
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12868 0039d316-1c4b-4281-b951-d872f2087c98
* In certain cases, the coordinates used for pattern rendering can gosenorblanco@chromium.org2009-03-301-2/+3
| | | | | | | | | | | | | | | | | | | | negative, eg., when a negative translation is applied in the shader matrix. This causes the rasterizer to blow up, since it accesses memory outside the pattern bitmap. Since the integer modulus operator for C++ has unspecified behaviour with negative arguments, its value may go negative. In this case, we must offset by the modulus to make it positive again. I decided to do this at a low level in skia, since it seems better to make skia robust than to pray that you get strictly non-negative translations. (There is a fix for this in src/skia/tile_patch.diff, but it's wrong.) This patch should be upstreamed to skia. Review URL: http://codereview.chromium.org/55044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12789 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: enable assertion in fontconfig code.agl@chromium.org2009-03-271-3/+1
| | | | | | | | | | | | This doesn't trigger locally for me. I think it's safe to enable. (Although the try servers are down for me, so I guess we'll find out.) BUG=6291 Review URL: http://codereview.chromium.org/55036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12718 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: change Skia's fontconfig code to cache SkTypeface objects.agl@chromium.org2009-03-271-7/+11
| | | | | | | | | | | | This was a mismatch between my understanding of that the FontHost was supposed to do and the reality. It caused a small memory leak. BUG=8789 Review URL: http://codereview.chromium.org/56017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12694 0039d316-1c4b-4281-b951-d872f2087c98
* Incorporate r134 from Skia. See http://crbugs.com/9005 for details.dglazkov@chromium.org2009-03-231-0/+24
| | | | | | | | R=brettw Review URL: http://codereview.chromium.org/52019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12294 0039d316-1c4b-4281-b951-d872f2087c98
* Update the gyp Linux build:sgk@google.com2009-03-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | * Add Linux settings to target_defaults in common.gypi so gyp-generated SConscript files no longer depend on build/SConscript.main or the Hammer infrastructure. * Copy the FilterOut() function from Hammer to the chromium_builders.py Tool module. * Add a ChromiumLoadableModule() builder to chromium_builders.py. * Add dependencies on the 'views' library to the chrome link (target 'app'). * Add missing views/*/*_unittest.cc modules to the 'unit_tests' target. Exclude all but the one that builds on Linux from the non-Windows builds. * Crib a list of chrome/views files to exclude from the Linux build from the old SCons configuration. * Add a new build/linux/system.gyp file with new 'settings' targets to encapsulate the pkg-config checks for gtk+-2.0, nss and pangoft2. * Add depenedencies in the other targets on the new gtk, nss and pangoft2 'settings' targets from build/linux/system.gyp. * Add a pkg_config_wrapper.py script that keeps gyp happy by simply exiting 0 if the package isn't found. * DEPS roll for latest gyp changes to support the above. Review URL: http://codereview.chromium.org/42340 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12228 0039d316-1c4b-4281-b951-d872f2087c98
* Now have a TextButton rendering (sort of; doesn't respond to mouse events soerg@google.com2009-03-191-0/+4
| | | | | | | | | | | I don't know if it'll draw the border correctly). Now with fixes to compile under Windows. Review URL: http://codereview.chromium.org/42427 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12172 0039d316-1c4b-4281-b951-d872f2087c98