aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Make use of new SkLights classGravatar robertphillips2016-05-31
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2026763002 Review-Url: https://codereview.chromium.org/2026763002
* SkTypeface::MakeFromName to take SkFontStyle.Gravatar mboc2016-05-31
| | | | | | | | | | | | | SkTypeface::MakeFromName currently takes SkTypeface::Style, which is quite limited. This starts the transition to this function taking SkFontStyle instead. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1818043002 TBR=reed He said it sounded like a good idea. Review-Url: https://codereview.chromium.org/1818043002
* SkXPS: clean up SkConstexprMathGravatar halcanary2016-05-31
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2000853003 Review-Url: https://codereview.chromium.org/2000853003
* SkEncodedInfo: simplifyGravatar halcanary2016-05-31
| | | | | | | | No public API change. TBR=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2025713003 Review-Url: https://codereview.chromium.org/2025713003
* Fix bug where SkPath will convert an arc to an oval and change the starting ↵Gravatar bsalomon2016-05-31
| | | | | | | | | point. Adds unit tests to test the behavior of addArc to oval conversions. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2017743002 Review-Url: https://codereview.chromium.org/2017743002
* Use special case for 0x00 and 0xFF alpha to go faster.Gravatar herb2016-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Base Exp Ratio Name 3916010 3077544 0.785888 top25desk_amazon_com.skp_1 3462512 2776580 0.801898 top25desk_google_com_calendar_.skp_1 3446330 3134187 0.909427 top25desk_ebay_com.skp_1 590474 546375 0.925316 top25desk_techcrunch_com.skp_1 3804991 3544162 0.931451 top25desk_google_com__hl_en_q_b.skp_1 996037 939960 0.9437 top25desk_blogger.skp_1 973264 922677 0.948023 top25desk_wikipedia__1_tab_.skp_1 4514050 4295660 0.95162 top25desk_docs___1_open_documen.skp_1 4255383 4110057 0.965849 top25desk_linkedin.skp_1 8408717 8191843 0.974208 top25desk_booking_com.skp_1 2878529 2806501 0.974977 top25desk_plus_google_com_11003.skp_1 11509894 11254486 0.97781 top25desk_pinterest.skp_1 9132514 9010635 0.986654 top25desk_weather_com.skp_1 6504720 6419592 0.986913 top25desk_sports_yahoo_com_.skp_1 9136774 9033870 0.988737 top25desk_answers_yahoo_com.skp_1 4836199 4799784 0.99247 top25desk_news_yahoo_com.skp_1 1393650 1384065 0.993122 top25desk_games_yahoo_com.skp_1 6779678 6735278 0.993451 top25desk_youtube_com.skp_1 10926943 10882308 0.995915 top25desk_espn.skp_1 4259514 4245489 0.996707 top25desk_facebook.skp_1 10955293 10947657 0.999303 top25desk_google_com_search_q_c.skp_1 9153575 9207386 1.00588 top25desk_twitter.skp_1 3865942 3906345 1.01045 top25desk_wordpress.skp_1 4180009 4305530 1.03003 top25desk_mail_google_com_mail_.skp_1 BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2020463003 Review-Url: https://codereview.chromium.org/2020463003
* Add mip support to *DeferredTextureImageData functions.Gravatar cblume2016-05-31
| | | | | | | | | | | | | | | As a first step, I want to add the ability to store multiple mip levels in the opaque object. I will follow this with using SkMipMap to generate and store the mip levels and generating the texture from those stored mip levels. R=bsalomon@chromium.org CC=ericrk@chromium.org BUG=578304 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2023573002 Review-Url: https://codereview.chromium.org/2023573002
* Filter out degenerate contours in GrConvexPolyEffectGravatar lsalzman2016-05-31
| | | | | | | | | | | | | | | | | | | | As noticed in a downstream Firefox bug report https://bugzilla.mozilla.org/show_bug.cgi?id=1255062 If a path such as (moveTo, moveTo, lineTo, lineTo, close) is supplied, and if the non-degenerate contour is convex, the convexity test will pass, and GrConvexPolyEffect will be used. However, the path's raw points are used to build the edge list, which does not filter out degenerate contours. This may cause the polygon to fail to draw. This patch ensures that the degenerate contours are filtered out by using an iterator as the path convexity test does. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018613003 Review-Url: https://codereview.chromium.org/2018613003
* Fix integer overflow in SkColorSpaceGravatar msarett2016-05-31
| | | | | | | BUG=skia:5361 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2020303002 Review-Url: https://codereview.chromium.org/2020303002
* Remove unused SkPictureGpuAnalyzer::analyze()Gravatar fmalita2016-05-31
| | | | | | | | | | After https://crrev.com/c64bd21780da13051846ae45b54a1e6c6bf6ac52, Chromium no longer uses analyze(). R=mtklein@google.com,reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2014983002 Review-Url: https://codereview.chromium.org/2014983002
* Make SkPngCodec decode progressively.Gravatar scroggo2016-05-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a step towards using SkCodec in Chromium, where progressive decoding is necessary. Switch from using png_read_row (which expects all the data to be available) to png_process_data, which uses callbacks when rows are available. Create a new API for SkCodec, which supports progressive decoding and scanline decoding. Future changes will switch the other clients off of startScanlineDecode and get/skip-Scanlines to the new API. Remove SkCodec::kNone_ScanlineOrder, which was only used for interlaced PNG images. In the new API, interlaced PNG fits kTopDown. Also remove updateCurrScanline(), which was only used by the old implementation for interlaced PNG. DMSrcSink: - In CodecSrc::kScanline_Mode, use the new method for scanline decoding for the supported formats (just PNG and PNG-in-ICO for now). fuzz.cpp: - Remove reference to kNone_ScanlineOrder SkCodec: - Add new APIs: - startIncrementalDecode - incrementalDecode - Remove kNone_SkScanlineOrder and updateCurrScanline() SkPngCodec: - Implement new APIs - Switch from sk_read_fn/png_read_row etc to png_process_data - Expand AutoCleanPng's role to decode the header and create the SkPngCodec - Make the interlaced PNG decoder report how many lines were initialized during an incomplete decode - Make initializeSwizzler return a bool instead of an SkCodec::Result (It only returned kSuccess or kInvalidInput anyway) SkIcoCodec: - Implement the new APIs; supported for PNG in ICO SkSampledCodec: - Call the new method for decoding scanlines, and fall back to the old method if the new version is unimplemented - Remove references to kNone_SkScanlineOrder tests/CodecPartial: - Add a test which decodes part of an image, then finishes the decode, and compares it to the straightforward method tests/CodecTest: - Add a test which decodes all scanlines using the new method - Repurpose the Codec_stripes test to decode using the new method in sections rather than all at once - In the method check(), add a parameter for whether the image supports the new method of scanline decoding, and be explicit about whether an image supports incomplete - Test incomplete PNG decodes. We should have been doing it anyway for non-interlaced (except for an image that is too small - one row), but the new method supports interlaced incomplete as well - Make test_invalid_parameters test the new method - Add a test to ensure that it's safe to fall back to scanline decoding without rewinding BUG=skia:4211 The new version was generally faster than the old version (but not significantly so). Some raw performance differences can be found at https://docs.google.com/a/google.com/spreadsheets/d/1Gis3aRCEa72qBNDRMgGDg3jD-pMgO-FXldlNF9ejo4o/ Design doc can be found at https://docs.google.com/a/google.com/document/d/11Mn8-ePDKwVEMCjs3nWwSjxcSpJ_Cu8DF57KNtUmgLM/ GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997703003 Review-Url: https://codereview.chromium.org/1997703003
* Fix incorrect sampler locations when using CHROMIUM_bind_uniform_locationGravatar kkinnunen2016-05-30
| | | | | | | | | | Fix incorrect sampler locations when using CHROMIUM_bind_uniform_location. The extension is not used at the moment, though. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2023783002 Review-Url: https://codereview.chromium.org/2023783002
* Change parameters to GrPipelineBuilder's ctorGravatar robertphillips2016-05-28
| | | | | | | | | | This is just plumbing prep to remove the GrRenderTarget from the GrPipelineBuilder. Split out of: https://codereview.chromium.org/1988923002/ (Declassify GrClipMaskManager and Remove GrRenderTarget and GrDrawTarget from GrPipelineBuilder) GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2015333002 Review-Url: https://codereview.chromium.org/2015333002
* Rewrite assignment operator on SkBitmap, fix asanGravatar msarett2016-05-27
| | | | | | | | TBR=mtklein@google.com BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2020683002 Review-Url: https://codereview.chromium.org/2020683002
* Clean up SkFloatBitsGravatar mtklein2016-05-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - remove dead code - rewrite float -> int converters The strategy for the new converters is: - convert input to double - floor/ceil/round in double space - pin that double to [SK_MinS32, SK_MaxS32] - truncate that double to int32_t This simpler strategy does not work: - floor/ceil/round in float space - pin that float to [SK_MinS32, SK_MaxS32] - truncate that float to int32_t SK_MinS32 and SK_MaxS32 are not representable as floats: they round to the nearest float, ±2^31, which makes the pin insufficient for floats near SK_MinS32 (-2^31+1) or SK_MaxS32 (+2^31-1). float only has 24 bits of precision, and we need 31. double can represent all integers up to 50-something bits. An alternative is to pin in float to ±2147483520, the last exactly representable float before SK_MaxS32 (127 too small). Our tests test that we round as floor(x+0.5), which can return different numbers than round(x) for negative x. So this CL explicitly uses floor(x+0.5). I've updated the tests with ±inf and ±NaN, and tried to make them a little clearer, especially using SK_MinS32 instead of -SK_MaxS32. I have not timed anything here. I have never seen any of these methods in a profile. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012333003 Review-Url: https://codereview.chromium.org/2012333003
* Make SkPath::isOval() and SkPath::isRRect return the orientation and ↵Gravatar bsalomon2016-05-27
| | | | | | | | | | | starting index. These are tracked in SkPathRef. Unit tests are updated to test that the returned values are correct. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012233002 Review-Url: https://codereview.chromium.org/2012233002
* Add SkColorSpace to SkImageInfoGravatar msarett2016-05-27
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=2000713003 Review-Url: https://codereview.chromium.org/2000713003
* pin before calling acosGravatar caryclark2016-05-27
| | | | | | | | | | | | Adobe reports some user crashes in acos(). While the cause is unknown, it's safe and may help stability to pin the input in case the arguments drifted slightly outside [-1, 1]. R=reed@google.com BUG=skia:5222 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2006653006 Review-Url: https://codereview.chromium.org/2006653006
* Silence ASAN int32 overflow warningGravatar fmalita2016-05-26
| | | | | | | | | | | It's fine to overflow SK_MaxS32 by one, the subsequent cast ensures correct clamping. But we need to cast earlier in order to make ASAN happy. TBR=mtklein@google.com,reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2013243002 Review-Url: https://codereview.chromium.org/2013243002
* add more SK_WARN_UNUSED_RESULT attributes to functions that ignore ↵Gravatar reed2016-05-26
| | | | | | | | | | | out-params if they fail BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012943003 TBR= Review-Url: https://codereview.chromium.org/2012943003
* Fix int32 overflow in LinearGradientContext::shade4_dx_clampGravatar fmalita2016-05-26
| | | | | | | | | | | | | | The unconditional increment in shade4_dx_clamp can overflow int32 => n == SK_MinS32 => count ~= SK_MinS32 => we skip the main shader loop 'cause count < 0 R=reed@google.com,mtklein@google.com BUG=chromium:599458 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2010843002 Review-Url: https://codereview.chromium.org/2010843002
* Srcover for sprite blitters.Gravatar herb2016-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order for this code to run, the gDefaultProfileIsSRGB flag needs to be true. min base min exp percent name 5601856 4689911 0.837207 top25desk_espn.skp_1 3491515 3202806 0.917311 top25desk_facebook.skp_1 5110247 4865740 0.952154 top25desk_weather_com.skp_1 605445 585520 0.96709 top25desk_techcrunch_com.skp_1 1007151 986193 0.979191 top25desk_wikipedia__1_tab_.skp_1 5951286 5889979 0.989699 top25desk_sports_yahoo_com_.skp_1 2825583 2804853 0.992663 top25desk_plus_google_com_11003.skp_1 8839265 8823249 0.998188 top25desk_twitter.skp_1 4169125 4168882 0.999942 top25desk_docs___1_open_documen.skp_1 6615327 6620663 1.00081 top25desk_youtube_com.skp_1 4613903 4647583 1.0073 top25desk_wordpress.skp_1 2532280 2554154 1.00864 top25desk_ebay_com.skp_1 4015689 4063584 1.01193 top25desk_google_com__hl_en_q_b.skp_1 9427478 9579203 1.01609 top25desk_answers_yahoo_com.skp_1 7403901 7542770 1.01876 top25desk_booking_com.skp_1 12249953 12528353 1.02273 top25desk_google_com_search_q_c.skp_1 1078648 1111050 1.03004 top25desk_games_yahoo_com.skp_1 7232627 7481555 1.03442 top25desk_pinterest.skp_1 2996819 3112091 1.03846 top25desk_google_com_calendar_.skp_1 2181531 2271677 1.04132 top25desk_amazon_com.skp_1 925245 987545 1.06733 top25desk_blogger.skp_1 4143359 4442607 1.07222 top25desk_linkedin.skp_1 4370962 4744580 1.08548 top25desk_news_yahoo_com.skp_1 4284025 4735094 1.10529 top25desk_mail_google_com_mail_.skp_1 [mtklein] We measured the noise here to be [-5%, +8%], so most of these changes fall within the noise. We manually confirmed the two above that noise window (yahoo and mail) are also noise... srcover_srgb_srgb() did not figure prominently in their profiles. The espn and facebook improvements look real. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996683003 Review-Url: https://codereview.chromium.org/1996683003
* fix security bugGravatar caryclark2016-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fix is a tradeoff. It changes intersection to treat a case where one coincident run is intersected at one point and the other edge is not as continuing to be a span. The old code tried to treat this as a single point. The old code is probably right, but this change alone made the data structures inconsistent. Later, extending the coincident runs would fail by incorrectly discarding the single point intersection. As a result, this fixes the security test and one other, but makes a different test fail. Isolating the failure uncovered a reduced case that fails with and without the change, so there are more serious problems here. Those problems are addressed in a separate CL. Many of the test edits below remove ill-thought out debugging messaging that fire off global state, which isn't usable in a multi-threaded test environment. In the end, with this fix, all existing tests (modulo one new failure and one new non-failure) pass in debug and in the extended release test suites. TBR=reed@google.com BUG=614248 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018513003 Review-Url: https://codereview.chromium.org/2018513003
* SkPDF/SkColorSpace: use writeToICCGravatar halcanary2016-05-26
| | | | | | | . GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2012133003 Review-Url: https://codereview.chromium.org/2012133003
* Complex clipPath accountingGravatar fmalita2016-05-25
| | | | | | | | | | | Add a clipPath heuristic to SkPathCounter, and extend SkPictureGpuAnalyzer to support external clipPath() op accounting. BUG=skia:5347 R=reed@google.com,mtklein@google.com,senorblanco@chromium.org,bsalomon@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2000423005 Review-Url: https://codereview.chromium.org/2000423005
* Assign sRGB color space to unmarked jpegs and pngsGravatar msarett2016-05-25
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2009813003 Review-Url: https://codereview.chromium.org/2009813003
* Write ICC profiles from SkColorSpace objectGravatar msarett2016-05-25
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2001203003 Review-Url: https://codereview.chromium.org/2001203003
* Don't store resources with a unique key in GrResourceCache's fScratchMapGravatar robertphillips2016-05-24
| | | | | | | | | | | The reasoning here is that resources with a unique key are never selected from fScratchMap and just clog up the search for an available resource. This knocks a 200x loop over the SVGbouncingrects case from 264ms down to 164ms. BUG=603969 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2008083002 Review-Url: https://codereview.chromium.org/2008083002
* SkColorSpace tweaksGravatar msarett2016-05-24
| | | | | | | | | | | ***Move includes to the correct file ***Add "const" ***Use std::move for more efficient refs and unrefs BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2005263002 Review-Url: https://codereview.chromium.org/2005263002
* Use nullptr instead of 0 in call to FontConfig.Gravatar bungeman2016-05-24
| | | | Review-Url: https://codereview.chromium.org/2000253005
* pthread_once -> SkOnceGravatar mtklein2016-05-24
| | | | | | | | one fewer sync primitive... GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2003163004 Review-Url: https://codereview.chromium.org/2003163004
* Remove sRGB overrides on GrTextureParams. Use GrPaint flags instead.Gravatar brianosman2016-05-24
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2002253002 Review-Url: https://codereview.chromium.org/2002253002
* I have found a more efficient way of detecting 1 and 0 alpha in SSE2. In ↵Gravatar herb2016-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | addition, I found a stall on an execution unit for the lea instruction and rearranged to code to avoid that. Before 1,362.01 LinearSrcOvericonstrip.pngVSkOptsSSE41 2,132.54 LinearSrcOvericonstrip.pngVSkOptsDefault 1,717.77 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore 3,525.14 LinearSrcOvericonstrip.pngVSkOptsTrivial 11,181.78 LinearSrcOvericonstrip.pngVSkOptsBruteForce 644.77 LinearSrcOvermandrill_512.pngVSkOptsSSE41 682.51 LinearSrcOvermandrill_512.pngVSkOptsDefault 1,169.65 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore 2,486.45 LinearSrcOvermandrill_512.pngVSkOptsTrivial 11,635.94 LinearSrcOvermandrill_512.pngVSkOptsBruteForce 217.76 LinearSrcOverplane.pngVSkOptsSSE41 437.09 LinearSrcOverplane.pngVSkOptsDefault 275.91 LinearSrcOverplane.pngVSkOptsNonSimdCore 481.70 LinearSrcOverplane.pngVSkOptsTrivial 1,504.66 LinearSrcOverplane.pngVSkOptsBruteForce 323.90 LinearSrcOverbaby_tux.pngVSkOptsSSE41 497.49 LinearSrcOverbaby_tux.pngVSkOptsDefault 456.08 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore 786.46 LinearSrcOverbaby_tux.pngVSkOptsTrivial 2,554.65 LinearSrcOverbaby_tux.pngVSkOptsBruteForce 484.83 LinearSrcOveryellow_rose.pngVSkOptsSSE41 821.86 LinearSrcOveryellow_rose.pngVSkOptsDefault 655.37 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore 1,323.80 LinearSrcOveryellow_rose.pngVSkOptsTrivial 5,802.61 LinearSrcOveryellow_rose.pngVSkOptsBruteForce After changes to sse2 and sse4.1 1,343.12 LinearSrcOvericonstrip.pngVSkOptsSSE41 1,441.17 LinearSrcOvericonstrip.pngVSkOptsDefault 1,679.97 LinearSrcOvericonstrip.pngVSkOptsNonSimdCore 3,481.05 LinearSrcOvericonstrip.pngVSkOptsTrivial 10,979.99 LinearSrcOvericonstrip.pngVSkOptsBruteForce 574.17 LinearSrcOvermandrill_512.pngVSkOptsSSE41 641.40 LinearSrcOvermandrill_512.pngVSkOptsDefault 1,169.44 LinearSrcOvermandrill_512.pngVSkOptsNonSimdCore 2,359.84 LinearSrcOvermandrill_512.pngVSkOptsTrivial 12,106.02 LinearSrcOvermandrill_512.pngVSkOptsBruteForce 209.95 LinearSrcOverplane.pngVSkOptsSSE41 249.12 LinearSrcOverplane.pngVSkOptsDefault 270.36 LinearSrcOverplane.pngVSkOptsNonSimdCore 466.30 LinearSrcOverplane.pngVSkOptsTrivial 1,431.14 LinearSrcOverplane.pngVSkOptsBruteForce 309.70 LinearSrcOverbaby_tux.pngVSkOptsSSE41 354.86 LinearSrcOverbaby_tux.pngVSkOptsDefault 442.69 LinearSrcOverbaby_tux.pngVSkOptsNonSimdCore 764.12 LinearSrcOverbaby_tux.pngVSkOptsTrivial 2,756.16 LinearSrcOverbaby_tux.pngVSkOptsBruteForce 457.70 LinearSrcOveryellow_rose.pngVSkOptsSSE41 500.50 LinearSrcOveryellow_rose.pngVSkOptsDefault 677.84 LinearSrcOveryellow_rose.pngVSkOptsNonSimdCore 1,301.50 LinearSrcOveryellow_rose.pngVSkOptsTrivial 5,786.40 LinearSrcOveryellow_rose.pngVSkOptsBruteForce BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1998373002 CQ_EXTRA_TRYBOTS=client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Review-Url: https://codereview.chromium.org/1998373002
* Add Xlib support to viewerGravatar jvanverth2016-05-23
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=1999213002 Review-Url: https://codereview.chromium.org/1999213002
* Enable stencil wrap ops on vulkanGravatar egdaniel2016-05-23
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2002213002 Review-Url: https://codereview.chromium.org/2002213002
* Test color correction in DMGravatar msarett2016-05-23
| | | | | | | | | | | | | | | | | | | | | This will allow me to test and visualize some assumptions on parsing and applying color profiles. Also, it should help me find and fix bugs. This is certainly not an optimized implementation, and, as far as I know, it doesn't take any shortcuts to improve performance. We'll probably want to do both of these once we know where it fits in the pipeline. Right now this test is only run on an arbitrary set of ~100 images from the top 10k skps. I'll continue to add more "interesting" images and probably tweak the code as necessary. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1995233003 Review-Url: https://codereview.chromium.org/1995233003
* Enable tri-linear and NPOT-tiling support in VulkanGravatar brianosman2016-05-23
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2004123002 Review-Url: https://codereview.chromium.org/2004123002
* Make SkColorSpace a public APIGravatar msarett2016-05-23
| | | | | | | | | I've trimmed uniqueID for now, and added some comments. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996973002 Review-Url: https://codereview.chromium.org/1996973002
* Pretend that Adreno4xx doesn't have sRGB write control.Gravatar brianosman2016-05-23
| | | | | | | BUG=skia:5329 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1998953003 Review-Url: https://codereview.chromium.org/1998953003
* Finish supporting decoding opaque to non-opaqueGravatar scroggo2016-05-20
| | | | | | | | | | | | | | | | | When decoding to 565 or Gray, allow the client to incorrectly ask for premul. When checking whether it's possible to decode to 565, return whether the source is opaque. In DM, allow decoding to 565 or Gray, even if the client also asked for premul. This fixes a bug introduced in crrev.com/1999593003 when we stopped ever requesting Opaque, resulting in us not testing 565 or Gray. BUG=skia:4616 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=1996993003 Review-Url: https://codereview.chromium.org/1996993003
* When building circle blur profile evaluate kernel vertically once per columnGravatar bsalomon2016-05-20
| | | | | | | BUG=skia:5224 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1991413002 Review-Url: https://codereview.chromium.org/1991413002
* Correct gesture scale and translationGravatar liyuqian2016-05-20
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996613002 Review-Url: https://codereview.chromium.org/1996613002
* Fix leak in SkImage_Gpu::onMakeSubset().Gravatar senorblanco2016-05-20
| | | | | | | BUG=skia:5327 GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2003573002 Review-Url: https://codereview.chromium.org/2003573002
* GrSWMaskHelper and GrSoftwarePathRenderer only need the textureProvider (not ↵Gravatar robertphillips2016-05-20
| | | | | | | | | | GrContext) This is split out of: https://codereview.chromium.org/1988923002/ (Declassify GrClipMaskManager and Remove GrRenderTarget and GrDrawTarget from GrPipelineBuilder) BUG=skia: Review-Url: https://codereview.chromium.org/1993403002
* Add OpenGL context to Viewer.Gravatar jvanverth2016-05-20
| | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1978573003 Committed: https://skia.googlesource.com/skia/+/56a11e4d6f3d436a3c2497c9c9e71a117d78a93f Review-Url: https://codereview.chromium.org/1978573003
* Make GrAtlasTextBlob::run own effects it points to.Gravatar bsalomon2016-05-19
| | | | | | | | | | BUG=chromium:608566 Currently the run has bare pointers and the effects can be destroyed while a run is pointing at them. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1993213003 Review-Url: https://codereview.chromium.org/1993213003
* Make circle blur profile computation separableGravatar bsalomon2016-05-19
| | | | | | | BUG=skia:5224 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1996653002 Review-Url: https://codereview.chromium.org/1996653002
* Image filters: implement SkImage::makeWithFilter().Gravatar senorblanco2016-05-19
| | | | | | | | | | This API provides a way to directly filter a subregion of an SkImage (usually texture-backed), and returns an SkImage which may include extra padding, along with a size to indicate the active region. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1964043002 Review-Url: https://codereview.chromium.org/1964043002
* Make an embeddable container to hold linear pipelines.Gravatar herb2016-05-19
| | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1998793002 Review-Url: https://codereview.chromium.org/1998793002
* Retract GrRenderTarget from GLProgramsTestGravatar robertphillips2016-05-19
| | | | | | | | Split out of https://codereview.chromium.org/1988923002/ (Declassify GrClipMaskManager and Remove GrRenderTarget and GrDrawTarget from GrPipelineBuilder) GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1997773002 Review-Url: https://codereview.chromium.org/1997773002