|
|
DescriptionAdd EditingMarkerList
Spliting off from https://codereview.chromium.org/2773883003 (add
CompositionMarkerList) since that CL is getting fairly large. This CL depends on
https://codereview.chromium.org/2773343003 (Add DocumentMarkerList)
The only new behavior here (vs. what's already in DocumentMarkerList) is that EditingMarkerList keeps track of if it's currently sorted or not based on what order markers were inserted, so I've added tests for that in EditingMarkerListTest.cpp.
BUG=707867
Patch Set 1 #Patch Set 2 : Rebase #
Total comments: 3
Patch Set 3 : Add comment on EditingMarkerList #Patch Set 4 : Rebase #Patch Set 5 : Rebase #Patch Set 6 : Rebase #Patch Set 7 : Update DCHECK to match SpellCheckMarkerList #Patch Set 8 : Rebase #Patch Set 9 : Rebase #Patch Set 10 : Remove explicit #
Depends on Patchset: Dependent Patchsets: Messages
Total messages: 38 (32 generated)
The CQ bit was checked by rlanday@chromium.org to run a CQ dry run
rlanday@chromium.org changed reviewers: + xiaochengh@chromium.org, yosin@chromium.org
rlanday@chromium.org changed required reviewers: + yosin@chromium.org
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Description was changed from ========== Add EditingMarkerList Spliting off from https://codereview.chromium.org/2773883003 (add CompositionMarkerList) since that CL is getting fairly large ========== to ========== Add EditingMarkerList Spliting off from https://codereview.chromium.org/2773883003 (add CompositionMarkerList) since that CL is getting fairly large. This CL depends on https://codereview.chromium.org/2773343003 (Add DocumentMarkerList) The only new behavior here (vs. what's already in DocumentMarkerList) is that EditingMarkerList keeps track of if it's currently sorted or not based on what order markers were inserted, so I've added tests for that in EditingMarkerListTest.cpp. ==========
lgtm with nits. https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:14: class CORE_EXPORT EditingMarkerList : public DocumentMarkerList { It's better to also document its behavior in the code, not just in the patch description. https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:19: bool isEditingMarkerList() const final; Please move all overridden functions to private.
https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:19: bool isEditingMarkerList() const final; On 2017/03/27 at 22:46:22, Xiaocheng wrote: > Please move all overridden functions to private. As we discussed offline, I'm going to leave these as-is since we sometimes need to access DocumentMarkerList through a pointer to a derived class (to call methods that only exist on the derived class)
The CQ bit was checked by rlanday@chromium.org 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 commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by rlanday@chromium.org 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...
On 2017/03/28 at 01:05:07, rlanday wrote: > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... > File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): > > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... > third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:19: bool isEditingMarkerList() const final; > On 2017/03/27 at 22:46:22, Xiaocheng wrote: > > Please move all overridden functions to private. > > As we discussed offline, I'm going to leave these as-is since we sometimes need to access DocumentMarkerList through a pointer to a derived class (to call methods that only exist on the derived class) (I discussed tkent@ about this topic) Google C++ code style doesn't mention about private-vs-public about implementation of interface. Then, the rule in inferred from existing code. Please move interface implementation member functions to private section as existing code. We want to align existing code not to make reader feel strange, e.g. reviewers say "please move them private section". For me, I switched to implementation-in-private since working from Chromium, I was implementation-in-public before Chromium. Please ask chromium-dev@/blink-dev@ about this to find out why chromium/blink use implementation-in-private. Thanks!
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_...) win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_...)
On 2017/03/29 at 01:55:57, yosin_UTC9 wrote: > On 2017/03/28 at 01:05:07, rlanday wrote: > > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... > > File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): > > > > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... > > third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:19: bool isEditingMarkerList() const final; > > On 2017/03/27 at 22:46:22, Xiaocheng wrote: > > > Please move all overridden functions to private. > > > > As we discussed offline, I'm going to leave these as-is since we sometimes need to access DocumentMarkerList through a pointer to a derived class (to call methods that only exist on the derived class) > > (I discussed tkent@ about this topic) > > Google C++ code style doesn't mention about private-vs-public about implementation of interface. > Then, the rule in inferred from existing code. > > Please move interface implementation member functions to private section as existing code. > We want to align existing code not to make reader feel strange, e.g. reviewers say "please move them private section". > > For me, I switched to implementation-in-private since working from Chromium, I was implementation-in-public before Chromium. > > Please ask chromium-dev@/blink-dev@ about this to find out why chromium/blink use implementation-in-private. > Thanks! I discussed with xiaochengh@ offline. I agree to go as-is. Let's wait chromium-dev@ discussion how people thinks. [1] https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/XdsXTHy9lis Overriding public virtual methods as private in C++?
lgtm Since reply [1] suggest impl-in-private or not is case-by-case. On 2017/03/29 at 03:14:52, yosin_UTC9 wrote: > On 2017/03/29 at 01:55:57, yosin_UTC9 wrote: > > On 2017/03/28 at 01:05:07, rlanday wrote: > > > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... > > > File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): > > > > > > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Sour... > > > third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:19: bool isEditingMarkerList() const final; > > > On 2017/03/27 at 22:46:22, Xiaocheng wrote: > > > > Please move all overridden functions to private. > > > > > > As we discussed offline, I'm going to leave these as-is since we sometimes need to access DocumentMarkerList through a pointer to a derived class (to call methods that only exist on the derived class) > > > > (I discussed tkent@ about this topic) > > > > Google C++ code style doesn't mention about private-vs-public about implementation of interface. > > Then, the rule in inferred from existing code. > > > > Please move interface implementation member functions to private section as existing code. > > We want to align existing code not to make reader feel strange, e.g. reviewers say "please move them private section". > > > > For me, I switched to implementation-in-private since working from Chromium, I was implementation-in-public before Chromium. > > > > Please ask chromium-dev@/blink-dev@ about this to find out why chromium/blink use implementation-in-private. > > Thanks! > > I discussed with xiaochengh@ offline. I agree to go as-is. > > Let's wait chromium-dev@ discussion how people thinks. > > [1] https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/XdsXTHy9lis Overriding public virtual methods as private in C++?
The CQ bit was checked by rlanday@chromium.org 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 commit-bot@chromium.org
Dry run: Try jobs failed on following builders: ios-simulator on master.tryserver.chromium.mac (JOB_TIMED_OUT, build hasn't started yet, builder probably lacks capacity)
The CQ bit was checked by rlanday@chromium.org 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 checked by rlanday@chromium.org 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 commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by rlanday@chromium.org 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 commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
The CQ bit was checked by rlanday@chromium.org 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 commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
Description was changed from ========== Add EditingMarkerList Spliting off from https://codereview.chromium.org/2773883003 (add CompositionMarkerList) since that CL is getting fairly large. This CL depends on https://codereview.chromium.org/2773343003 (Add DocumentMarkerList) The only new behavior here (vs. what's already in DocumentMarkerList) is that EditingMarkerList keeps track of if it's currently sorted or not based on what order markers were inserted, so I've added tests for that in EditingMarkerListTest.cpp. ========== to ========== Add EditingMarkerList Spliting off from https://codereview.chromium.org/2773883003 (add CompositionMarkerList) since that CL is getting fairly large. This CL depends on https://codereview.chromium.org/2773343003 (Add DocumentMarkerList) The only new behavior here (vs. what's already in DocumentMarkerList) is that EditingMarkerList keeps track of if it's currently sorted or not based on what order markers were inserted, so I've added tests for that in EditingMarkerListTest.cpp. BUG=707867 ========== |