Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(524)

Issue 1497873002: Make DisplayItemClient an interface (Closed)

Created:
5 years ago by Xianzhu
Modified:
5 years ago
Reviewers:
chrishtr, trchen, pdr., jbroman
CC:
blink-layers+watch_chromium.org, blink-reviews, blink-reviews-layout_chromium.org, blink-reviews-paint_chromium.org, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj, dcheng, dshwang, drott+blinkwatch_chromium.org, krit, eae+blinkwatch, f(malita), fs, gyuyoung2, jbroman, jchaffraix+rendering, Justin Novosad, kouhei+svg_chromium.org, leviw+renderwatch, pdr+svgwatchlist_chromium.org, pdr+graphicswatchlist_chromium.org, pdr+renderingwatchlist_chromium.org, rwlbuis, Stephen Chennney, slimming-paint-reviews_chromium.org, szager+layoutwatch_chromium.org, vmpstr+blinkwatch_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Make DisplayItemClient an interface Pros: - Avoid tricky DisplayItemClientWrapper; - We can cache some data in client instead of hashmaps in PaintController: * debugName; * invalidation flags; * paint invalidation rect. The HashMaps may be a reason of performance issues. - We can add other callbacks when needed. Cons: - Increase object size of some sub-classes by 1 pointer. However, based on haraken@'s presentation [1] on blinkon 5, "sizeof(Node) and sizeof(LayoutObject) don’t really matter". [1] https://docs.google.com/presentation/d/1_LRxXp30j60npShHSRVit0B5tLOS4TLiZ68gQ8nFLsM/edit#slide=id.g72a3d66d2_1_319 Committed: https://crrev.com/cfdee1dd1f08ba62ea739d7c2a45c09f5657c8a2 Cr-Commit-Position: refs/heads/master@{#363822}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : Rebase #

Patch Set 4 : Fix compile #

Total comments: 16

Patch Set 5 : #

Patch Set 6 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+184 lines, -248 lines) Patch
M third_party/WebKit/Source/core/frame/LocalFrame.h View 1 2 3 4 3 chunks +4 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/frame/LocalFrame.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBoxModelObject.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutObject.h View 1 2 3 4 5 2 chunks +2 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutObject.cpp View 1 2 3 4 5 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutScrollbarTheme.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutScrollbarTheme.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h View 1 2 3 4 5 3 chunks +3 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp View 1 2 3 4 5 5 chunks +9 lines, -9 lines 0 comments Download
M third_party/WebKit/Source/core/layout/line/InlineBox.h View 1 2 3 4 5 3 chunks +2 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/paint/CompositingRecorder.h View 1 chunk +4 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/paint/CompositingRecorder.cpp View 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/paint/FloatClipRecorder.h View 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/FloatClipRecorder.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/LayoutObjectDrawingRecorder.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/PaintControllerPaintTest.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayer.h View 1 2 2 chunks +2 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/paint/ScrollRecorder.h View 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/ScrollRecorder.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/Transform3DRecorder.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/Transform3DRecorder.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/TransformRecorder.h View 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/TransformRecorder.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/svg/graphics/SVGImage.h View 1 2 3 4 2 chunks +2 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/DragImage.h View 1 2 1 chunk +0 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.h View 1 2 3 4 1 chunk +1 line, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/exported/WebScrollbarThemeClientImpl.cpp View 1 2 1 chunk +0 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/GraphicsLayer.h View 1 2 3 4 5 3 chunks +3 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp View 1 2 3 4 5 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/ImageBuffer.h View 1 2 3 4 2 chunks +0 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/CachedDisplayItem.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipDisplayItem.h View 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipPathDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipPathRecorder.h View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipPathRecorder.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipRecorder.h View 1 2 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ClipRecorder.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/CompositingDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DisplayItem.h View 1 2 8 chunks +11 lines, -11 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DisplayItem.cpp View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h View 1 2 3 4 1 chunk +8 lines, -39 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DrawingDisplayItem.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.h View 1 2 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp View 3 chunks +4 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/FixedPositionContainerDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/FixedPositionDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/FloatClipDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintArtifactToSkCanvasTest.cpp View 1 chunk +2 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintController.h View 1 2 3 7 chunks +15 lines, -14 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintController.cpp View 1 2 7 chunks +22 lines, -22 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintControllerTest.cpp View 4 chunks +11 lines, -12 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ScrollDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/ScrollDisplayItem.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/SubsequenceDisplayItem.h View 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/SubsequenceRecorder.h View 1 2 1 chunk +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/SubsequenceRecorder.cpp View 3 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/Transform3DDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/TransformDisplayItem.h View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/Scrollbar.h View 1 2 3 4 1 chunk +1 line, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollbarTheme.h View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollbarTheme.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/scroll/ScrollbarThemeClient.h View 1 2 2 chunks +1 line, -4 lines 0 comments Download
M third_party/WebKit/Source/web/PageOverlay.h View 2 chunks +2 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/web/WebFontImpl.h View 2 chunks +2 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/web/WebLocalFrameImpl.cpp View 1 2 2 chunks +2 lines, -4 lines 0 comments Download

Messages

Total messages: 34 (13 generated)
Xianzhu
This is just tentative. I would like to know you opinions.
5 years ago (2015-12-04 00:29:54 UTC) #2
pdr.
On 2015/12/04 at 00:29:54, wangxianzhu wrote: > This is just tentative. I would like to ...
5 years ago (2015-12-04 21:12:28 UTC) #3
Xianzhu
On 2015/12/04 21:12:28, pdr wrote: > On 2015/12/04 at 00:29:54, wangxianzhu wrote: > > This ...
5 years ago (2015-12-04 22:12:12 UTC) #4
Xianzhu
Cluster telemetry runs show no difference: https://doc-1j88k-8ing-s-googleusercontent.commondatastorage.googleapis.com/gs/eh5qje51j2kok5cc5vut1r5not5tvh3a/dcq177608jp3dok9vatf05nhbtp99s90/1449342000000/cluster-telemetry/06858439313024208527/ChFjbHVzdGVyLXRlbGVtZXRyeRJDdGFza3MvY2hyb21pdW1fcGVyZl9ydW5zL3dhbmd4aWFuemh1LTIwMTUxMjA1MTMwODAwL2h0bWwvaW5kZXguaHRtbA?a=AGjQbs6Xes-LZGxhxkGe6nSw6E2hxCdlG8Y9d388C61V00kkZAdrldE7ybuyqbwwblgPOYKO9-hrqugnxbw_PLfoim1babriNjhFVDMqJtIFo_d8DW_aF8z-yH91KvroYlQyvoz8TgjfM7mX0TUQFiUiNjB3XyqJ1R3KyIStubqQZh3L7Q1tjfUk0EfrwqoQmPhGGqYc46hKy801EdAu8v8_tVvq0p5VPd9dZgDmbuGbOIFzWRhsNmZS-eNGR8lSKc7uTEGFxS1bK4L7Dy5HB4aWrVrzgdtzafMqOs8nVw-Iob_s4gwLQOEcod2w1eeeD_EBJBZq-_OzIykpTQFJfPPmtJfBMaTj6nSny0K6hE9cXbpLNS9Ge5TfNJmVT-6V_WWkgII1Rv0W1TPYcd6b-WBFybuOHgkUn_UE20EPyNm1ZW1gKkNPE147EWVUEKYzPisrgas-FCTboGsyiWJNkH5GZksZnGgdRdQFGNSSbwckz9BzqClv-nY6PraxQwkKiaVwkoex-S3rHqQs-txhKk6auPw-PxsAjUQp7gDN9flnsf2ZJhba8ttsW92RZhbzRwquHcoaBOKWasV28Hi_EI5KvyWC2hz36QKkjJHzHKem9K_t7kKqtos5xPOhrYfZqchlnM7bLMOkWpIQUi1JXyruR-2NYI7tW2Hypb52Jv7v0Kg8AtEn05AJEcQPmA44K1Hph6hVR4sGDS0yXbUkAIkB7seUJuvuRc0ggWg76qMKMMFhgP1e4ezpxjA9zUwK4dnbszdbGbt0&nonce=0ei33b4cqdnvq&user=06858439313024208527&hash=nu5ldth50qi6143qdtu63ta009trruo4 https://doc-1j5na-8ing-s-googleusercontent.commondatastorage.googleapis.com/gs/eh5qje51j2kok5cc5vut1r5not5tvh3a/pmvh8k7em82cu1kju2gsponkk5jajc2s/1449342000000/cluster-telemetry/06858439313024208527/ChFjbHVzdGVyLXRlbGVtZXRyeRJDdGFza3MvY2hyb21pdW1fcGVyZl9ydW5zL3dhbmd4aWFuemh1LTIwMTUxMjA0MjIwNTEyL2h0bWwvaW5kZXguaHRtbA?a=AGjQbs5ENDDsL47g9Hx2lUxytIpasy9EF-Mv3q1mSTJ2krecRY9T8bN3TofsYqdXcx067u1P7HcWkmbi60svczI01Xlm6NGicRIw1O9WR8jbn0wRLYYmLzDqdDsLYeYCqnnu0cK47SkFu7bnTg1EOyMDX-RtwGikvDjwCqLgeBN_lNYYFoN371Fk7cZW31zJ1J85fL_SPDHuiyjJajxzHQNRBamtdehRxxZv0MmODlaBrTg519CnfiS3dXmSdKnSpAH6aw7U21EaAL1MofGtTXluDXZzzV6ARDc52qsjMiLBXgILnc0rm_JiZ4kSUk3Bfll6e_ZCjnLib6-xNuCs9FD0OcCaSxlIrJwLx-6A35nn95Cx1NuL2cYjrdNqMVMa791Cd3ih7EhmqeE45Fv5scDSoTXF470m9CKXpwcdHztwFBbkXSeJLSHVH9OT5_rjcHUrsTrBD7TGXfZXAJIAw7WRnT9QJ1Dt28gLjsCgWBn7SaoD1p2reQZPEvBvh4CYWqdbZnI7azZvJBU38pRYQq_gs0XsNI7TsjpIq3ZlqGA11MsyR94q1Kb0897jx4vv6zbEmrpY429xMu-zOTBtxqxDpTuJyEeC8_7n8GFF2Wm0Yctqm8zbkFMlXU84Igdm3xSBe2mlWFsxVRF5g47_BFcqTJ-G5IW71P0gKvsWleIjaB932lFy5hiVYgL34h-qrkM3jJ8EYyAI4SPA65VLzGiwafbVJH_aGu9FZkU3npL6cB7C3frGrkUcRzEoAuEhxO4zKmg-vGmT
5 years ago (2015-12-05 20:43:58 UTC) #5
Xianzhu
On 2015/12/05 20:43:58, Xianzhu wrote: > Cluster telemetry runs show no difference: > s/no difference/no ...
5 years ago (2015-12-05 20:45:06 UTC) #6
pdr.
That's good that cluster telemetry showed no regressions. Can you share the shorter link from ...
5 years ago (2015-12-05 21:39:19 UTC) #8
Xianzhu
On 2015/12/05 21:39:19, pdr wrote: > That's good that cluster telemetry showed no regressions. Can ...
5 years ago (2015-12-06 20:43:43 UTC) #9
pdr.
On 2015/12/06 at 20:43:43, wangxianzhu wrote: > On 2015/12/05 21:39:19, pdr wrote: > > That's ...
5 years ago (2015-12-06 21:24:27 UTC) #10
Xianzhu
https://codereview.chromium.org/1497873002/diff/60001/third_party/WebKit/Source/core/frame/LocalFrame.h File third_party/WebKit/Source/core/frame/LocalFrame.h (right): https://codereview.chromium.org/1497873002/diff/60001/third_party/WebKit/Source/core/frame/LocalFrame.h#newcode183 third_party/WebKit/Source/core/frame/LocalFrame.h:183: String debugName() const override { return "LocalFrame"; } On ...
5 years ago (2015-12-07 17:14:01 UTC) #11
chrishtr
lgtm
5 years ago (2015-12-07 22:55:31 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1497873002/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1497873002/80001
5 years ago (2015-12-08 18:57:53 UTC) #14
commit-bot: I haz the power
Try jobs failed on following builders: ios_dbg_simulator_ninja on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios_dbg_simulator_ninja/builds/104734) mac_chromium_compile_dbg_ng on tryserver.chromium.mac (JOB_FAILED, ...
5 years ago (2015-12-08 19:01:25 UTC) #16
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1497873002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1497873002/100001
5 years ago (2015-12-08 19:14:37 UTC) #19
commit-bot: I haz the power
Try jobs failed on following builders: android_chromium_gn_compile_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/android_chromium_gn_compile_rel/builds/167974) linux_chromium_chromeos_compile_dbg_ng on tryserver.chromium.linux (JOB_FAILED, ...
5 years ago (2015-12-08 19:30:16 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1497873002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1497873002/100001
5 years ago (2015-12-08 19:33:37 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/107080) linux_chromium_rel_ng on tryserver.chromium.linux (JOB_FAILED, ...
5 years ago (2015-12-08 20:30:12 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1497873002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1497873002/100001
5 years ago (2015-12-08 20:34:46 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/152566)
5 years ago (2015-12-08 21:41:42 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1497873002/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1497873002/100001
5 years ago (2015-12-08 21:57:53 UTC) #31
commit-bot: I haz the power
Committed patchset #6 (id:100001)
5 years ago (2015-12-08 23:23:31 UTC) #32
commit-bot: I haz the power
5 years ago (2015-12-08 23:25:04 UTC) #34
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/cfdee1dd1f08ba62ea739d7c2a45c09f5657c8a2
Cr-Commit-Position: refs/heads/master@{#363822}

Powered by Google App Engine
This is Rietveld 408576698