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

Issue 2772423002: Add EditingMarkerList in preparation for DocumentMarkerController refactor (Closed)

Created:
3 years, 9 months ago by rlanday
Modified:
3 years, 8 months ago
Reviewers:
*yosin_UTC9, Xiaocheng
CC:
blink-reviews, chromium-reviews
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

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

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 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+155 lines, -0 lines) Patch
M third_party/WebKit/Source/core/editing/BUILD.gn View 1 2 3 4 5 6 7 8 9 2 chunks +3 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h View 1 2 3 4 5 6 7 8 9 1 chunk +50 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/editing/markers/EditingMarkerList.cpp View 1 2 3 4 5 6 1 chunk +42 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/editing/markers/EditingMarkerListTest.cpp View 1 chunk +60 lines, -0 lines 0 comments Download

Depends on Patchset:

Dependent Patchsets:

Messages

Total messages: 38 (32 generated)
rlanday
3 years, 9 months ago (2017-03-27 21:20:59 UTC) #4
Xiaocheng
lgtm with nits. https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h#newcode14 third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:14: class CORE_EXPORT EditingMarkerList : public DocumentMarkerList ...
3 years, 9 months ago (2017-03-27 22:46:22 UTC) #7
rlanday
https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h#newcode19 third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h:19: bool isEditingMarkerList() const final; On 2017/03/27 at 22:46:22, Xiaocheng ...
3 years, 9 months ago (2017-03-28 01:05:07 UTC) #8
yosin_UTC9
On 2017/03/28 at 01:05:07, rlanday wrote: > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h > File third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h (right): > > https://codereview.chromium.org/2772423002/diff/20001/third_party/WebKit/Source/core/editing/markers/EditingMarkerList.h#newcode19 ...
3 years, 8 months ago (2017-03-29 01:55:57 UTC) #15
yosin_UTC9
On 2017/03/29 at 01:55:57, yosin_UTC9 wrote: > On 2017/03/28 at 01:05:07, rlanday wrote: > > ...
3 years, 8 months ago (2017-03-29 03:14:52 UTC) #18
yosin_UTC9
3 years, 8 months ago (2017-03-29 07:43:15 UTC) #19
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++?

Powered by Google App Engine
This is Rietveld 408576698