Re-architecture caret implementation |
||||||||
Issue descriptionFrameCaret and DragCaretController, should be renamed to DragCaret, are implemented with layer violation, both paint/ and layout/ code refer this and they use paint/ and layout/. We should split FrameCaret and DragCaret appropriately to avoid layer violation by defining proper API among them.
,
Jan 12 2017
,
Jan 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/05fd6942317394a4dbc4aae9fddc5511bb1fe00b commit 05fd6942317394a4dbc4aae9fddc5511bb1fe00b Author: yosin <yosin@chromium.org> Date: Thu Jan 12 11:25:46 2017 Get rid of CaretBase::m_caretLocalRect This patch gets rid of |CaretBase::m_caretLocalRect| to reduce number of states in |CaretBase| to simplify class hiarachity for improving code health. After this patch, |CaretBase| represents |DisplayItemClient| for caret. Following patch will rename |CaretBase| to |DisplayCaretItemClient| and |DragCaretController|, which should rename to |DragCaret| is derived from |DisplayCaretItemClient| and makes |DisplayCaretItemClient| had no public member except for destructor. This patch is a preparation of [1] [1] http://crrev.com/1958093002 On-demand visible selection canonicalizataion BUG=680384 TEST=n/a; no behavior changes Review-Url: https://codereview.chromium.org/2623053006 Cr-Commit-Position: refs/heads/master@{#443207} [modify] https://crrev.com/05fd6942317394a4dbc4aae9fddc5511bb1fe00b/third_party/WebKit/Source/core/editing/CaretBase.cpp [modify] https://crrev.com/05fd6942317394a4dbc4aae9fddc5511bb1fe00b/third_party/WebKit/Source/core/editing/CaretBase.h [modify] https://crrev.com/05fd6942317394a4dbc4aae9fddc5511bb1fe00b/third_party/WebKit/Source/core/editing/DragCaretController.cpp [modify] https://crrev.com/05fd6942317394a4dbc4aae9fddc5511bb1fe00b/third_party/WebKit/Source/core/editing/DragCaretController.h [modify] https://crrev.com/05fd6942317394a4dbc4aae9fddc5511bb1fe00b/third_party/WebKit/Source/core/editing/FrameCaret.cpp
,
Jan 16 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/716fc5a4985347e1b2148b481278d0d37d2bb3d3 commit 716fc5a4985347e1b2148b481278d0d37d2bb3d3 Author: yosin <yosin@chromium.org> Date: Mon Jan 16 09:22:16 2017 Make FrameCaret to contain CaretBase This patch makes |FrameCaret| to contain |CaretBase| rather than to be derived it as similar as |DragCaretController| for improving code health. This patch also makes |CaretBase| not to be a garbage collected object since it doesn't hold garbage collected objects since [1]. This is a follow-up patch of [2] and suggested by [3]. [1] http://crrev.com/2623053006 Get rid of CaretBase::m_caretLocalRect [2] http://crrev.com/2623053006 Get rid of CaretBase::m_caretLocalRect [3] http://crrev.com/2635433003 Make DragCaretController to be derived from CaretBase BUG=680384 TEST=n/a; no behavior changes Review-Url: https://codereview.chromium.org/2627423002 Cr-Commit-Position: refs/heads/master@{#443860} [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/CaretBase.cpp [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/CaretBase.h [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/DragCaretController.cpp [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/DragCaretController.h [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/FrameCaret.cpp [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/FrameCaret.h [modify] https://crrev.com/716fc5a4985347e1b2148b481278d0d37d2bb3d3/third_party/WebKit/Source/core/editing/FrameSelection.cpp
,
Jan 23 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b9cad72bb3e704665776d2a0b484beab55a50d39 commit b9cad72bb3e704665776d2a0b484beab55a50d39 Author: yosin <yosin@chromium.org> Date: Mon Jan 23 09:39:33 2017 Move CaretBase::invalidateCaretRect() to DragCaretController This patch moves |CaretBase::invalidateCaretRect()| to |DragCaretController| class since this member function is only called in |DragCaretController| to reduce public members from |CareBase| class for improving code health. BUG=680384 TEST=n/a; no behavior changes Review-Url: https://codereview.chromium.org/2650633002 Cr-Commit-Position: refs/heads/master@{#445344} [modify] https://crrev.com/b9cad72bb3e704665776d2a0b484beab55a50d39/third_party/WebKit/Source/core/editing/CaretBase.cpp [modify] https://crrev.com/b9cad72bb3e704665776d2a0b484beab55a50d39/third_party/WebKit/Source/core/editing/CaretBase.h [modify] https://crrev.com/b9cad72bb3e704665776d2a0b484beab55a50d39/third_party/WebKit/Source/core/editing/DragCaretController.cpp [modify] https://crrev.com/b9cad72bb3e704665776d2a0b484beab55a50d39/third_party/WebKit/Source/core/editing/DragCaretController.h
,
Jan 30 2017
,
Mar 25 2017
,
May 19 2017
,
May 19 2017
Keep "Available" until we remove VisiblePosition usage in FrameCaret and DragCaret
,
May 21 2018
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 28 2018
|
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by yosin@chromium.org
, Jan 12 2017