- 07 Aug, 2017 40 commits
-
-
Daniel Murphy authored
Bug: 741920 Change-Id: Ibb4dcb1694845946ecb03de09dc07ed3e74a0dce Reviewed-on: https://chromium-review.googlesource.com/598689 Commit-Queue: Daniel Murphy <dmurph@chromium.org> Reviewed-by:
Ned Nguyen <nednguyen@google.com> Cr-Commit-Position: refs/heads/master@{#492430}
-
Sky Malice authored
Adding both detection/interaction event features for translate use case to ensure we get good test coverage. While in there, removing SyncUserEvents feature as it is now FEATURE_ENABLED_BY_DEFAULT. Bug: 728491 Change-Id: I6c6330f12aa54be29687bcf2ffde73c8add26eb0 Reviewed-on: https://chromium-review.googlesource.com/594934 Commit-Queue: Sky Malice <skym@chromium.org> Reviewed-by:
Steven Holte <holte@chromium.org> Cr-Commit-Position: refs/heads/master@{#492429}
-
Doug Turner authored
Due to file separator differences, the PRESUMIT.py would never run on windows. This CL simply converts windows path seperators to unix style ones. Bug: 750406 Change-Id: I9523387a350abe70d68918398c65e989055cf27c Reviewed-on: https://chromium-review.googlesource.com/599121Reviewed-by:
Lei Zhang <thestig@chromium.org> Commit-Queue: Doug Turner <dougt@chromium.org> Cr-Commit-Position: refs/heads/master@{#492428}
-
Evan Stade authored
waiting for response. When the "waiting for response" flag changes due to a title being set, the tab should be updated accordingly. Bug: 752266 Change-Id: I4ba618ef94283436f1443f8f951f5a296b474826 Reviewed-on: https://chromium-review.googlesource.com/601249Reviewed-by:
Scott Violet <sky@chromium.org> Reviewed-by:
Charlie Reis <creis@chromium.org> Commit-Queue: Evan Stade <estade@chromium.org> Cr-Commit-Position: refs/heads/master@{#492427}
-
Stephen Chenney authored
Reland to try to figure out why Win 10 failed. Apparently the new baseline was missed. TBR=fmalita@chromium.org BUG=745776 Change-Id: I84bfeb44624dd6be9622dc8c87847943bd747b65 Reviewed-on: https://chromium-review.googlesource.com/603949 Commit-Queue: Stephen Chenney <schenney@chromium.org> Reviewed-by:
Florin Malita <fmalita@chromium.org> Reviewed-by:
Stephen Chenney <schenney@chromium.org> Cr-Commit-Position: refs/heads/master@{#492426}
-
skia-deps-roller@chromium.org authored
https://skia.googlesource.com/skia.git/+log/35ee0e09b496..0f5505bfa2c5 $ git log 35ee0e09b..0f5505bfa --date=short --no-merges --format='%ad %ae %s' 2017-08-07 rmistry Add failing SKP from new SKP repository to the ImgDecode blacklist 2017-08-07 egdaniel Remove blacklist of win nvidia vulkan skimage test 2017-08-07 skia-deps-roller Roll skia/third_party/externals/angle2/ 188fd5f6f..3c76d59f1 (1 commit) 2017-08-07 reed add 'R' to toggle rasterpipeline in sampleapp 2017-08-07 hcm fix Vulkan doc typo 2017-08-07 fmalita Avoid int overflow in LinearGradientContext::shade4_dx_clamp 2017-08-07 csmartdalton CCPR: Process quadratic flat edges without soft msaa 2017-08-03 liyuqian Add AAA and DAA toggles to viewer 2017-08-04 liyuqian Remove SK_NO_ANALYTIC_AA 2017-08-04 liyuqian Flush threaded device when reaching max queue size 2017-08-07 reed remove unused shadeSpanAlpha -- handled by rasterpipeline 2017-08-05 benjaminwagner Upgrade Valgrind to 3.13.0. 2017-08-04 robertphillips Remove SkLightingShader and associated classes Created with: roll-dep src/third_party/skia Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, see: http://www.chromium.org/developers/tree-sheriffs/sheriff-details-chromium#TOC-Failures-due-to-DEPS-rolls CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel TBR=bungeman@chromium.org Change-Id: Ibea34d6d936e5a7c7dbf8dc30de47d376234fe5b Reviewed-on: https://chromium-review.googlesource.com/603875Reviewed-by:
Skia Deps Roller <skia-deps-roller@chromium.org> Commit-Queue: Skia Deps Roller <skia-deps-roller@chromium.org> Cr-Commit-Position: refs/heads/master@{#492425}
-
Bence Béky authored
Yet another step towards disconnecting SpdyFramerDecoderAdapter from SpdyFramer. This CL lands server change 163754923 by dahollings. BUG=488484 Change-Id: I70b5d58a5bc3ce1eecb06935a5e026c22ece4f15 Reviewed-on: https://chromium-review.googlesource.com/603950 Commit-Queue: Helen Li <xunjieli@chromium.org> Reviewed-by:
Helen Li <xunjieli@chromium.org> Cr-Commit-Position: refs/heads/master@{#492424}
-
Devdeep Ray authored
This refactor moves the relevant parameters and functions for the experiment into a single class to make it more readable. Bug: 737614 Change-Id: I37448b703533550941b458d5058d43bc9b56835d Reviewed-on: https://chromium-review.googlesource.com/599228 Commit-Queue: Devdeep Ray <devdeepray@chromium.org> Reviewed-by:
Ben Greenstein <bengr@chromium.org> Reviewed-by:
Matt Menke <mmenke@chromium.org> Reviewed-by:
Tarun Bansal <tbansal@chromium.org> Cr-Commit-Position: refs/heads/master@{#492423}
-
Oystein Eftevaag authored
Int64 covers all known use-cases, and has less potential security/performance implications. Bug: 748728 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation Change-Id: I61e43f4e10ab3cea8d1e0b3e6700bf0feaf60f19 Reviewed-on: https://chromium-review.googlesource.com/596270Reviewed-by:
Nasko Oskov <nasko@chromium.org> Reviewed-by:
Steven Holte <holte@chromium.org> Reviewed-by:
Erik Chen <erikchen@chromium.org> Reviewed-by:
Zhen Wang <zhenw@chromium.org> Commit-Queue: Oystein Eftevaag <oysteine@chromium.org> Cr-Commit-Position: refs/heads/master@{#492422}
-
Will Chen authored
This finishes the core InspectorTest.* methods. The remaining functions from inspector-test are helper methods that exist in the inspected page, which are less straightforward to port. Bug: 667560 Change-Id: I29888a343ceaa36630dafb243cb8e41e4e900cc5 Reviewed-on: https://chromium-review.googlesource.com/600838Reviewed-by:
Andrey Kosyakov <caseq@chromium.org> Commit-Queue: Will Chen <chenwilliam@chromium.org> Cr-Commit-Position: refs/heads/master@{#492421}
-
Fan Yang authored
In QUIC, latch FLAGS_quic_buffered_data_threshold when QuicStream is created. Also add CanWriteNewData which returns true if buffered data size is below threshold. Merge internal change: 163872936 R=rch@chromium.org Bug: Change-Id: I3113c737c2e009d7929dc84f7c1de2c0bef49316 Reviewed-on: https://chromium-review.googlesource.com/604287Reviewed-by:
Ryan Hamilton <rch@chromium.org> Commit-Queue: Fan Yang <fayang@chromium.org> Cr-Commit-Position: refs/heads/master@{#492420}
-
Erik Luo authored
Before, evaluated command and result console messages had their timestamps overwritten to appear next to each other. This led to misleading times that were incorrect, making commands seem to execute immediately. This CL preserves their original timestamp for display, and introduces logical timestamps for sorting purposes. Now, commands and results have more useful times, even though their timestamps come from frontend, not backend. BUG=737463 Change-Id: I8c6221bbf61919a3a8d9d96f011fb25850a6a98a Reviewed-on: https://chromium-review.googlesource.com/590502 Commit-Queue: Erik Luo <luoe@chromium.org> Reviewed-by:
Andrey Lushnikov <lushnikov@chromium.org> Cr-Commit-Position: refs/heads/master@{#492419}
-
John Budorick authored
net_test_support_apk needs cert files on the device in order to support HTTPS in EmbeddedTestServer. This change should ensure that such runtime dependencies of support APKs get pushed to the device when necessary. Change-Id: I40f38540a0d3490a451a9697e250d7935484e50d Reviewed-on: https://chromium-review.googlesource.com/602691Reviewed-by:
Emily Stark <estark@chromium.org> Commit-Queue: John Budorick <jbudorick@chromium.org> Cr-Commit-Position: refs/heads/master@{#492418}
-
Lei Zhang authored
Change-Id: I15596eff88e41ab35ebdfe9fd55ece4b0f78297e Reviewed-on: https://chromium-review.googlesource.com/604487Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Lei Zhang <thestig@chromium.org> Cr-Commit-Position: refs/heads/master@{#492417}
-
Andrey Kosyakov authored
When navigating a frame that has DevTools attached, set X-DevTools-Emulate-Network-Conditions-Client-Id in NavigationRequest so that network conditions are applied when browser-initiated navigation if performed. Also, merge this logic with applying User-Agent override for brevity. Bug: 749884 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_site_isolation Change-Id: I26332c621b00e1c2d9a1872b95cb55d63f8d82d1 Reviewed-on: https://chromium-review.googlesource.com/600816Reviewed-by:
Dmitry Gozman <dgozman@chromium.org> Commit-Queue: Andrey Kosyakov <caseq@chromium.org> Cr-Commit-Position: refs/heads/master@{#492416}
-
Yusuke Sato authored
* Do not create the throttle until OnArcInitialStart() is called. This allows the container to run the check-in code etc. in the foreground mode. * Remove the throttle when the instance is stopped or shut down. * Restart the container in the foreground mode after crash. This CL depends on crrev.com/488879. See CL:601768 for more details. BUG=b:64327302 TEST=try, manually tested the scenarios above Change-Id: I123dbd10c4018ece74b16ef45879dca4c709eeb9 Reviewed-on: https://chromium-review.googlesource.com/601613 Commit-Queue: Yusuke Sato <yusukes@chromium.org> Reviewed-by:
Hidehiko Abe <hidehiko@chromium.org> Cr-Commit-Position: refs/heads/master@{#492415}
-
Benjamin Pastene authored
Bug: 747472 Change-Id: Ieeb6d71453b0b9bd83b2b7be8b83641d61354dcf Reviewed-on: https://chromium-review.googlesource.com/595248 Commit-Queue: Benjamin Pastene <bpastene@chromium.org> Reviewed-by:
John Budorick <jbudorick@chromium.org> Reviewed-by:
Yoland Yan <yolandyan@chromium.org> Cr-Commit-Position: refs/heads/master@{#492414}
-
Tom Anderson authored
CL [1] removed usage of readdir_r(), but in doing so added a bug where errno should have been saved_errno. [1] https://chromium-review.googlesource.com/c/599120 BUG=751812 R=jsbell@chromium.org Change-Id: I5bdc554e62052d050be076bea3eddee9a6850212 Reviewed-on: https://chromium-review.googlesource.com/602697Reviewed-by:
Chris Mumford <cmumford@chromium.org> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> Cr-Commit-Position: refs/heads/master@{#492413}
-
Tarun Bansal authored
Bug: 455054 Change-Id: Ic7f381431bc7800b7ee7c1cd8dce16c296bacae5 Reviewed-on: https://chromium-review.googlesource.com/602904Reviewed-by:
Jesse Doherty <jwd@chromium.org> Commit-Queue: Tarun Bansal <tbansal@chromium.org> Cr-Commit-Position: refs/heads/master@{#492412}
-
Nico Weber authored
This points out a potential (but rare) problem with referencing static fields of a non-exported base, through the base's non-exported inline functions, or directly. The warning is subtle enough that people just suppressed it when they saw it, so it's not worth it. Bug: 752837 Change-Id: Ia9b8307f77e155416bdfdad28ff33df3081a434b Reviewed-on: https://chromium-review.googlesource.com/603773 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by:
Hans Wennborg <hans@chromium.org> Cr-Commit-Position: refs/heads/master@{#492411}
-
Florin Malita authored
Skia now supports conic gradient tiling (remapping the [0,1] color stop domain onto some arbitrary range): https://skia-review.googlesource.com/27704 With this mechanism, we no longer need to inject synthetic stops for repeating conic gradients - instead we can adjust the domain similarly to linear and radial gradients. Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ia2aca8b203d7c554eecbebb878a2e6ef252cd1bb Reviewed-on: https://chromium-review.googlesource.com/602638Reviewed-by:
enne <enne@chromium.org> Reviewed-by:
Mike Reed <reed@chromium.org> Reviewed-by:
Fredrik Söderquist <fs@opera.com> Commit-Queue: Florin Malita <fmalita@chromium.org> Cr-Commit-Position: refs/heads/master@{#492410}
-
Pavel Yatsuk authored
The test is flaky, but logs from latest repro are not available and I wasn't able to reproduce failure either locally or on trybot. Reenabling the test to get fresh repro. BUG=737862 R=pnoland@chromium.org Change-Id: Ic1cfc2890116c446629fe41f28359e4b4cc855c3 Reviewed-on: https://chromium-review.googlesource.com/604394Reviewed-by:
Patrick Noland <pnoland@chromium.org> Commit-Queue: Pavel Yatsuk <pavely@chromium.org> Cr-Commit-Position: refs/heads/master@{#492409}
-
Yuzhu Shen authored
external/wpt/content-security-policy/navigation/javascript-url-navigation-inherits-csp.html BUG=None TBR=jam@chromium.org Change-Id: I46598c9bcfa3e5c8a930800cf0f7cf184d1a8217 Reviewed-on: https://chromium-review.googlesource.com/604347Reviewed-by:
Yuzhu Shen <yzshen@chromium.org> Commit-Queue: Yuzhu Shen <yzshen@chromium.org> Cr-Commit-Position: refs/heads/master@{#492408}
-
Avi Drissman authored
If *any* WebContents in the opener chain of a popup attempts to bring itself forward in front of the popup, block that attempt to create a popunder. BUG=752824 Change-Id: I4178f3872eb7af2f10d993bc8b54485b340c8355 Reviewed-on: https://chromium-review.googlesource.com/603149 Commit-Queue: Avi Drissman <avi@chromium.org> Reviewed-by:
Nasko Oskov <nasko@chromium.org> Cr-Commit-Position: refs/heads/master@{#492407}
-
edchin authored
The destruction of tabs should differentiate between user initiated destruction vs. teardown due to shutdown of the app. When a user initiates closing a tab, saved snapshots should be cleaned up. However, when the application is shutdown, the teardown of the tab should not delete the snapshot file. This CL adds an -isShuttingDown flag to ApplicationContext. The flag is set during shutdown in MainController. The flag is used inside Tab's shutdown method to differentiate the two code paths. Bug: 737114 Change-Id: Ic06e0a8ccee17b242af83e4f391fae386c064a2b Reviewed-on: https://chromium-review.googlesource.com/597407 Commit-Queue: Ed Chin <edchin@chromium.org> Reviewed-by:
Rohit Rao (ping after 24h) <rohitrao@chromium.org> Cr-Commit-Position: refs/heads/master@{#492406}
-
Dave Schuyler authored
This CL adds the template replacements for $i18n in the options (old) certificate-manager page. Bug: 752683 Change-Id: I8790acf9b8e0f1ace1f22ecc7f1147d628a8078e Reviewed-on: https://chromium-review.googlesource.com/603069Reviewed-by:
Michael Giuffrida <michaelpg@chromium.org> Commit-Queue: Dave Schuyler <dschuyler@chromium.org> Cr-Commit-Position: refs/heads/master@{#492405}
-
Doug Turner authored
Due to file separator differences, the PRESUMIT.py would never run on windows. This CL simply converts windows path seperators to unix style ones. Bug: 750406 Change-Id: I232dfaa88a04430de935b23c5d115f97b2b5af3e Reviewed-on: https://chromium-review.googlesource.com/594911Reviewed-by:
Dominic Mazzoni <dmazzoni@chromium.org> Commit-Queue: Doug Turner <dougt@chromium.org> Cr-Commit-Position: refs/heads/master@{#492404}
-
Jeff Carpenter authored
Bug: 698294 Change-Id: I89ba0f102d25ef6b8b1e8d5bd5018b2dd6b73c8e Reviewed-on: https://chromium-review.googlesource.com/602740Reviewed-by:
Quinten Yearsley <qyearsley@chromium.org> Commit-Queue: Jeff Carpenter <jeffcarp@chromium.org> Cr-Commit-Position: refs/heads/master@{#492403}
-
proberge authored
I had left a TODO in https://codereview.chromium.org/2971823002/ to fix this. Turns out I needed to mock a tap on logsControl.$.control instead of just on logsControl. Bug: 736465 Change-Id: Ifdc0b45c48d90025951e6952ad7a16f14b1700d2 Reviewed-on: https://chromium-review.googlesource.com/603909 Commit-Queue: proberge <proberge@chromium.org> Reviewed-by:
Michael Giuffrida <michaelpg@chromium.org> Cr-Commit-Position: refs/heads/master@{#492402}
-
chrome://dino/Peter Boström authored
Currently the chrome://dino/ arcade mode upscales the game canvas using bilinear filtering (or some other "fancy" non-nearest-neighbour filter). This is fine and normally preferred for images, but our pixelated friend is way too old-school for that. As such we apply the CSS3 style "image-rendering: 'pixelated';" to match the era of the dinosaur game. This gives our retro friend a look more reminiscent of its past. See: https://drafts.csswg.org/css-images-3/#valdef-image-rendering-pixelated BUG=chromium:747332 R=edwardjung@chromium.org, mmenke@chromium.org Change-Id: I365642df3b420fac4e4b85aba6499b7358cdfbcd Reviewed-on: https://chromium-review.googlesource.com/592310 Commit-Queue: Peter Boström <pbos@chromium.org> Reviewed-by:
Edward Jung <edwardjung@chromium.org> Reviewed-by:
Matt Menke <mmenke@chromium.org> Cr-Commit-Position: refs/heads/master@{#492401}
-
David Reveman authored
Fix a two cases where non-MD user picker code is failing to set animatedImageElement src attribute. BUG=750545 TBR=stevenjb@chromium.org TEST=chrome://settings/people -> "Manage other people" and press Tab Change-Id: I362eacb81b77136c10cec96c10d2b61c0e30640a Reviewed-on: https://chromium-review.googlesource.com/604129Reviewed-by:
David Reveman <reveman@chromium.org> Commit-Queue: David Reveman <reveman@chromium.org> Cr-Commit-Position: refs/heads/master@{#492400}
-
Sky Malice authored
Anyone that accesses ProfileSyncServiceFactory needs to handle the case where the [Profile]SyncService* returned is null, and the UserEventServiceFactory did not. So updated to return a no-op version when this happens. Also refactored the user events logic to have a clear split where constant conditions are checked before instantiating the service, while dynamic conditions should be checked on a per-event basis. Updated service impl and bridge constructors to DCHECK their dependencies. Bug: 750295 Change-Id: I3a407b7c130413e55ab2e03f7c2ead888efbd490 Reviewed-on: https://chromium-review.googlesource.com/592348 Commit-Queue: Sky Malice <skym@chromium.org> Reviewed-by:
Patrick Noland <pnoland@chromium.org> Cr-Commit-Position: refs/heads/master@{#492399}
-
Daniel Cheng authored
Change-Id: I58ae63f7fec20ba42d8f9d3d90aa71c2f18c35b3 Reviewed-on: https://chromium-review.googlesource.com/604219Reviewed-by:
Jorge Lucangeli Obes <jorgelo@chromium.org> Reviewed-by:
Elijah Taylor <elijahtaylor@chromium.org> Cr-Commit-Position: refs/heads/master@{#492398}
-
Xi Cheng authored
edf4dde8ae10 linux: Add ExceptionSnapshotLinux 01110c0a3b35 win: Fix %u, %d, %x/DWORD printf mismatches Bug: 751171 Change-Id: I932d9b20b49b56a4aa672eda6cce23f74dad4694 Reviewed-on: https://chromium-review.googlesource.com/603748 Commit-Queue: Xi Cheng <chengx@chromium.org> Reviewed-by:
Mark Mentovai <mark@chromium.org> Cr-Commit-Position: refs/heads/master@{#492397}
-
Quinten Yearsley authored
Bug: 748623 Change-Id: I823b601637eea28e35bff22c1267ca589f27421d Reviewed-on: https://chromium-review.googlesource.com/604119Reviewed-by:
Dirk Pranke <dpranke@chromium.org> Reviewed-by:
Jeff Carpenter <jeffcarp@chromium.org> Commit-Queue: Quinten Yearsley <qyearsley@chromium.org> Cr-Commit-Position: refs/heads/master@{#492396}
-
Nick Ward authored
Bug: Change-Id: I773e1c9ccaf52f95adee68396e5234984af36c01 Reviewed-on: https://chromium-review.googlesource.com/601212 Commit-Queue: Nick Ward <npward@google.com> Reviewed-by:
John Budorick <jbudorick@chromium.org> Cr-Commit-Position: refs/heads/master@{#492395}
-
Quinten Yearsley authored
Bug: 752892 Change-Id: Iaf16f9e9a3a0fd751a96bf0203a360eb3f95c06c Reviewed-on: https://chromium-review.googlesource.com/604209Reviewed-by:
Jeff Carpenter <jeffcarp@chromium.org> Commit-Queue: Quinten Yearsley <qyearsley@chromium.org> Cr-Commit-Position: refs/heads/master@{#492394}
-
Mike Baxley authored
This is no longer used by any of our tests. Bug: 707009 Change-Id: Ifef26edad0ba451c7ffdd3f9e022371b145a4072 Reviewed-on: https://chromium-review.googlesource.com/602621Reviewed-by:
Yuke Liao <liaoyuke@chromium.org> Commit-Queue: Mike Baxley <baxley@chromium.org> Cr-Commit-Position: refs/heads/master@{#492393}
-
Francois Doray authored
This mirrors a TestBrowserThreadBundle change https://chromium-review.googlesource.com/c/591788 NOPRESUBMIT=true Bug: 708584 Change-Id: I05c64f9a0a9a2e78d630fb2b89a018bd732554c5 Reviewed-on: https://chromium-review.googlesource.com/601050 Commit-Queue: Francois Doray <fdoray@chromium.org> Reviewed-by:
Eugene But <eugenebut@chromium.org> Cr-Commit-Position: refs/heads/master@{#492392}
-
Eric Karl authored
This reverts commit e38bd1e3. Reason for revert: This CL is breaking GPU trybots. See crbug.com/753010 Win10 Release Quadro: https://build.chromium.org/p/chromium.gpu.fyi/builders/Win10%20Release%20%28NVIDIA%20Quadro%20P400%29 Win10 Release NVIDIA: https://build.chromium.org/p/chromium.gpu.fyi/builders/Win10%20Release%20%28NVIDIA%29 Win7 Release AMD: https://build.chromium.org/p/chromium.gpu.fyi/builders/Win7%20Release%20%28AMD%29 These bots went red/green/red with the previous land/revert/land of this CL. Original change's description: > Revert "Revert "Refactor CSSPropertyDescriptor structure, rename it to CSSPropertyAPI."" > > This reverts commit dfb913fe. > > Reason for revert: Actual breaking CL was https://chromium-review.googlesource.com/c/603029 > > Original change's description: > > Revert "Refactor CSSPropertyDescriptor structure, rename it to CSSPropertyAPI." > > > > This reverts commit cfd7e50f. > > > > Reason for revert: Does not compile. > > > > gen/blink/core/css/properties/CSSPropertyAPI.cpp:245:33: error: unused variable 'base_api' [-Werror,-Wunused-const-variable] > > static constexpr CSSPropertyAPI base_api; > > ^ > > https://build.chromium.org/p/chromium.gpu/builders/GPU%20Mac%20Builder/builds/98526 > > > > Original change's description: > > > Refactor CSSPropertyDescriptor structure, rename it to CSSPropertyAPI. > > > > > > Design doc (with benchmarks!): > > > https://docs.google.com/document/d/1uwS_TT8VBWSQNYMnOggwqcnv6YU85FIFvD_egxPSn6o/edit > > > > > > This CL changes the current "struct that contains > > > function-pointer-or-nulls" CSSPropertyDescriptor design to > > > instead use virtual function dispatch andstatic constexpr for > > > returning a pointer to a CSSPropertyAPI or subclass. > > > > > > > > > This makes the call sites cleaner, as since there cannot be null > > > function pointers any more, this allows us to write: > > > > > > CSSPropertyAPI::Get(property_id).ParseSingleValue(...); > > > > > > and avoid the if statement that we would require with the current > > > implementation: > > > > > > CSSPropertyDescriptor& d = CSSPropertyDescriptor::Get(property_id); > > > if (d.ParseSingleValue) > > > d.ParseSingleValue(...); > > > > > > My benchmarks (details in the linked doc) show no speed penalty for > > > doing this for getting an API, or for calling functions on it (in > > > fact, it's probably faster). Inspecting the assembly generated from > > > the benchmarks also shows that the use of constexpr correctly > > > causes the compiler to avoid allocating any memory for instances of > > > CSSPropertyAPI or subclasses, so function calls are still just > > > dereferencing straight into the vtable of the CSSPropertyAPI > > > subclass. > > > > > > > > > Notes: > > > - CSSPropertyAPI.h/.cpp and CSSPropertyAPICustom.cpp replace > > > CSSPropertyDescriptor. > > > - To avoid CSSPropertyAPICustom.cpp from getting too big, I created a > > > temporary "CSSPropertyAPICustomHelper" containing the not yet > > > ribbonized helper functions it requires. > > > > > > file moves undetected by gerrit: > > > - The generator css_property_apis.py was split into two files: > > > make_css_property_api.py, and make_css_property_api_headers.py. > > > - CSSPropertyAPIFiles.h.tmpl was renamed to CSSPropertyAPIHeaders.h.tmpl > > > > > > > > > Gist showing curated diff of generated files: > > > CSSPropertyAPI.cpp > > > CSSPropertyAPIAlignItems.h // A longhand API header > > > CSSPropertyDescriptor.cpp > > > CSSPropertyDescriptor.h > > > CSSShorthandPropertyAPIAnimation.h // A shorthand API header > > > https://gist.github.com/wilddamon/2261ef381b648f9fe3cf9ed8ac037cd3/revisions > > > > > > Gist showing diff between CSSPropertyAPI.cpp and the old > > > CSSPropertyDescriptor.cpp: > > > https://gist.github.com/wilddamon/ee1afa93637b85b4d1291b8a1d985b16/revisions > > > > > > Gist showing diff between CSSPropertyParser.cpp and > > > CSSPropertyAPICustomHelper.cpp: > > > https://gist.github.com/wilddamon/9e81c157f98ff1dbb68d43a79f89fe9c/revisions > > > > > > Gist showing diff between make_css_property_apis.py and > > > make_css_property_api.py: > > > https://gist.github.com/wilddamon/4d4ee2c2223c9b5ab7c857ab31aa68ec/revisions > > > > > > Gist showing diff between make_css_property_apis.py and > > > make_css_property_api_headers.py > > > https://gist.github.com/wilddamon/08443f2980054866ebeef972b00d1746/revisions > > > > > > Bug: 545324 > > > Change-Id: Ie5465c02faa010094f78821c024f87c231bd2264 > > > Reviewed-on: https://chromium-review.googlesource.com/589469 > > > Commit-Queue: meade_UTC10 <meade@chromium.org> > > > Reviewed-by: Renée Wright <rjwright@chromium.org> > > > Reviewed-by: Bugs Nash <bugsnash@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#492265} > > > > TBR=rjwright@chromium.org,meade@chromium.org,jiameng@chromium.org,bugsnash@chromium.org > > > > Change-Id: Iee795ea0afa4e45903c8485ed17bfb9b4a6432e5 > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Bug: 545324 > > Reviewed-on: https://chromium-review.googlesource.com/602430 > > Reviewed-by: vitaliii <vitaliii@chromium.org> > > Commit-Queue: vitaliii <vitaliii@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#492275} > > TBR=rjwright@chromium.org,meade@chromium.org,vitaliii@chromium.org,jiameng@chromium.org,bugsnash@chromium.org > > Change-Id: Ia06ce2272bd9fc43b49152018e1a1880c6b97e63 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: 545324 > Reviewed-on: https://chromium-review.googlesource.com/603010 > Reviewed-by: meade_UTC10 <meade@chromium.org> > Commit-Queue: meade_UTC10 <meade@chromium.org> > Cr-Commit-Position: refs/heads/master@{#492279} TBR=rjwright@chromium.org,meade@chromium.org,vitaliii@chromium.org,jiameng@chromium.org,bugsnash@chromium.org Change-Id: I90166bccf63b699a08733af9e492b422ee4d4616 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 545324 Reviewed-on: https://chromium-review.googlesource.com/604350 Commit-Queue: Eric Karl <ericrk@chromium.org> Reviewed-by:
Eric Karl <ericrk@chromium.org> Cr-Commit-Position: refs/heads/master@{#492391}
-