|
|
Created:
4 years, 1 month ago by reed1 Modified:
4 years, 1 month ago CC:
chromium-reviews, krit, dshwang, drott+blinkwatch_chromium.org, Rik, blink-reviews-platform-graphics_chromium.org, ajuma+watch-canvas_chromium.org, blink-reviews-html_chromium.org, pdr+graphicswatchlist_chromium.org, jbroman, Justin Novosad, haraken, dglazkov+blink, fuzzing_chromium.org, f(malita), blink-reviews, danakj+watch_chromium.org, ajuma+watch_chromium.org, Stephen Chennney, rwlbuis Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
Descriptionremove legacy Skia flags
BUG=
TBR=asvitkine, dcheng
Committed: https://crrev.com/111c379025c22713d8e404c28a46e8cd06eca620
Cr-Commit-Position: refs/heads/master@{#429331}
Patch Set 1 #
Total comments: 1
Patch Set 2 : change getters to return a ref #
Total comments: 2
Patch Set 3 : rebase #Patch Set 4 : address nit #
Total comments: 1
Patch Set 5 : address nit #Patch Set 6 : remove additional xfermode flag #Messages
Total messages: 38 (22 generated)
The CQ bit was checked by reed@google.com to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
reed@google.com changed reviewers: + fmalita@chromium.org, senorblanco@chromium.org
lgtm
https://codereview.chromium.org/2472543002/diff/1/third_party/WebKit/Source/m... File third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h (right): https://codereview.chromium.org/2472543002/diff/1/third_party/WebKit/Source/m... third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h:458: compositePaint.setImageFilter(sk_ref_sp(filter)); Rather than doing an explicit ref here, I think we should be returning an sk_sp<SkImageFilter> from stateGetFilter() (and transitively, from CanvasRenderingContext*::getFilter()). Internally, they're just doing a get() on an sk_sp<> member variable anyway.
That is a much bigger change, as there are multiple subclasses that will need to be updated. I also see that loopers are handled similarly (ref'd only when needed, rather than every time a getter is called). Can such a change be separate from this one (which removes a deprecated calling pattern) or do they all need to happen as part of this CL?
On 2016/11/01 21:28:14, reed1 wrote: > That is a much bigger change, as there are multiple subclasses that will need to > be updated. I also see that loopers are handled similarly (ref'd only when > needed, rather than every time a getter is called). Can such a change be > separate from this one (which removes a deprecated calling pattern) or do they > all need to happen as part of this CL? If my search is correct, there are only 13 files with calls to sk_ref_sp() in WebKit. I'd really prefer to avoid adding more, since they're error-prone. I think we have adequate telemetry testing coverage in case this is a performance hotspot (which I doubt).
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_...)
I will make this change. However, I don't see sk_ref_sp as a bug. SkPaint's getter returns a bare pointer on purpose. Many callers don't want to pay for the overhead of a ref() call which happens each time we copy a sk_sp(), so I don't view this instances as a bug.
The CQ bit was checked by reed@google.com to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2472543002/diff/20001/third_party/WebKit/Sour... File third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h (right): https://codereview.chromium.org/2472543002/diff/20001/third_party/WebKit/Sour... third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h:458: compositePaint.setImageFilter(filter); nit: should be safe to std::move(filter) here.
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: Try jobs failed on following builders: mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by reed@google.com to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
https://codereview.chromium.org/2472543002/diff/20001/third_party/WebKit/Sour... File third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h (right): https://codereview.chromium.org/2472543002/diff/20001/third_party/WebKit/Sour... third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h:458: compositePaint.setImageFilter(filter); On 2016/11/02 14:24:50, f(malita) wrote: > nit: should be safe to std::move(filter) here. Done.
senorblanco@chromium.org changed reviewers: + junov@chromium.org
LGTM, but will leave for Justin.
LGTM with nit https://codereview.chromium.org/2472543002/diff/60001/third_party/WebKit/Sour... File third_party/WebKit/Source/platform/image-decoders/ImageDecoder.cpp (right): https://codereview.chromium.org/2472543002/diff/60001/third_party/WebKit/Sour... third_party/WebKit/Source/platform/image-decoders/ImageDecoder.cpp:379: setColorSpaceAndComputeTransform(colorSpace); Not new to this CL, but missing std::move here.
The CQ bit was checked by reed@google.com to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by reed@google.com
The CQ bit was checked by reed@google.com
The patchset sent to the CQ was uploaded after l-g-t-m from fmalita@chromium.org, senorblanco@chromium.org, junov@chromium.org Link to the patchset: https://codereview.chromium.org/2472543002/#ps80001 (title: "address nit")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...)
Description was changed from ========== remove legacy Skia flags BUG= ========== to ========== remove legacy Skia flags BUG= TBR=asvitkine, dcheng ==========
The CQ bit was checked by reed@google.com
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== remove legacy Skia flags BUG= TBR=asvitkine, dcheng ========== to ========== remove legacy Skia flags BUG= TBR=asvitkine, dcheng ==========
Message was sent while issue was closed.
Committed patchset #5 (id:80001)
Message was sent while issue was closed.
Description was changed from ========== remove legacy Skia flags BUG= TBR=asvitkine, dcheng ========== to ========== remove legacy Skia flags BUG= TBR=asvitkine, dcheng Committed: https://crrev.com/111c379025c22713d8e404c28a46e8cd06eca620 Cr-Commit-Position: refs/heads/master@{#429331} ==========
Message was sent while issue was closed.
Patchset 5 (id:??) landed as https://crrev.com/111c379025c22713d8e404c28a46e8cd06eca620 Cr-Commit-Position: refs/heads/master@{#429331} |