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

Side by Side Diff: third_party/WebKit/Source/core/editing/VisiblePosition.h

Issue 2341053002: Mark the createVisiblePosition overloads as deprecated (Closed)
Patch Set: minor revision Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2004, 2008 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 // |def DOWNSTREAM |VisiblePosition| 64 // |def DOWNSTREAM |VisiblePosition|
65 // 65 //
66 // NOTE: UPSTREAM affinity will be used only if pos is at end of a wrapped line, 66 // NOTE: UPSTREAM affinity will be used only if pos is at end of a wrapped line,
67 // otherwise it will be converted to DOWNSTREAM. 67 // otherwise it will be converted to DOWNSTREAM.
68 template <typename Strategy> 68 template <typename Strategy>
69 class CORE_TEMPLATE_CLASS_EXPORT VisiblePositionTemplate final { 69 class CORE_TEMPLATE_CLASS_EXPORT VisiblePositionTemplate final {
70 DISALLOW_NEW(); 70 DISALLOW_NEW();
71 public: 71 public:
72 VisiblePositionTemplate(); 72 VisiblePositionTemplate();
73 73
74 // Node: Other than |createVisiblePosition()|, we should not use 74 // Node: Other than |createVisiblePosition()| and
75 // |create()|. 75 // |createVisiblePositionDeprecated()|, we should not use |create()|.
76 static VisiblePositionTemplate create(const PositionWithAffinityTemplate<Str ategy>&); 76 static VisiblePositionTemplate create(const PositionWithAffinityTemplate<Str ategy>&);
77 77
78 // Intentionally delete |operator==()| and |operator!=()| for reducing 78 // Intentionally delete |operator==()| and |operator!=()| for reducing
79 // compilation error message. 79 // compilation error message.
80 // TODO(yosin) We'll have |equals()| when we have use cases of checking 80 // TODO(yosin) We'll have |equals()| when we have use cases of checking
81 // equality of both position and affinity. 81 // equality of both position and affinity.
82 bool operator==(const VisiblePositionTemplate&) const = delete; 82 bool operator==(const VisiblePositionTemplate&) const = delete;
83 bool operator!=(const VisiblePositionTemplate&) const = delete; 83 bool operator!=(const VisiblePositionTemplate&) const = delete;
84 84
85 bool isNull() const { return m_positionWithAffinity.isNull(); } 85 bool isNull() const { return m_positionWithAffinity.isNull(); }
(...skipping 26 matching lines...) Expand all
112 112
113 PositionWithAffinityTemplate<Strategy> m_positionWithAffinity; 113 PositionWithAffinityTemplate<Strategy> m_positionWithAffinity;
114 }; 114 };
115 115
116 extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<Editin gStrategy>; 116 extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<Editin gStrategy>;
117 extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<Editin gInFlatTreeStrategy>; 117 extern template class CORE_EXTERN_TEMPLATE_EXPORT VisiblePositionTemplate<Editin gInFlatTreeStrategy>;
118 118
119 using VisiblePosition = VisiblePositionTemplate<EditingStrategy>; 119 using VisiblePosition = VisiblePositionTemplate<EditingStrategy>;
120 using VisiblePositionInFlatTree = VisiblePositionTemplate<EditingInFlatTreeStrat egy>; 120 using VisiblePositionInFlatTree = VisiblePositionTemplate<EditingInFlatTreeStrat egy>;
121 121
122 // |createVisiblePositionDeprecated| updates layout before creating the
123 // VisiblePosition, which messes up the rendering pipeline. The callers should
124 // ensure clean layout by themselves and call |createVisiblePosition| instead.
125 CORE_EXPORT VisiblePosition createVisiblePositionDeprecated(const Position&, Tex tAffinity = VP_DEFAULT_AFFINITY);
126 CORE_EXPORT VisiblePosition createVisiblePositionDeprecated(const PositionWithAf finity&);
127 CORE_EXPORT VisiblePositionInFlatTree createVisiblePositionDeprecated(const Posi tionInFlatTree&, TextAffinity = VP_DEFAULT_AFFINITY);
128 CORE_EXPORT VisiblePositionInFlatTree createVisiblePositionDeprecated(const Posi tionInFlatTreeWithAffinity&);
129
122 CORE_EXPORT VisiblePosition createVisiblePosition(const Position&, TextAffinity = VP_DEFAULT_AFFINITY); 130 CORE_EXPORT VisiblePosition createVisiblePosition(const Position&, TextAffinity = VP_DEFAULT_AFFINITY);
123 CORE_EXPORT VisiblePosition createVisiblePosition(const PositionWithAffinity&); 131 CORE_EXPORT VisiblePosition createVisiblePosition(const PositionWithAffinity&);
124 CORE_EXPORT VisiblePositionInFlatTree createVisiblePosition(const PositionInFlat Tree&, TextAffinity = VP_DEFAULT_AFFINITY); 132 CORE_EXPORT VisiblePositionInFlatTree createVisiblePosition(const PositionInFlat Tree&, TextAffinity = VP_DEFAULT_AFFINITY);
125 CORE_EXPORT VisiblePositionInFlatTree createVisiblePosition(const PositionInFlat TreeWithAffinity&); 133 CORE_EXPORT VisiblePositionInFlatTree createVisiblePosition(const PositionInFlat TreeWithAffinity&);
126 134
127 CORE_EXPORT std::ostream& operator<<(std::ostream&, const VisiblePosition&); 135 CORE_EXPORT std::ostream& operator<<(std::ostream&, const VisiblePosition&);
128 CORE_EXPORT std::ostream& operator<<(std::ostream&, const VisiblePositionInFlatT ree&); 136 CORE_EXPORT std::ostream& operator<<(std::ostream&, const VisiblePositionInFlatT ree&);
129 137
130 } // namespace blink 138 } // namespace blink
131 139
132 #ifndef NDEBUG 140 #ifndef NDEBUG
133 // Outside the WebCore namespace for ease of invocation from gdb. 141 // Outside the WebCore namespace for ease of invocation from gdb.
134 void showTree(const blink::VisiblePosition*); 142 void showTree(const blink::VisiblePosition*);
135 void showTree(const blink::VisiblePosition&); 143 void showTree(const blink::VisiblePosition&);
136 #endif 144 #endif
137 145
138 #endif // VisiblePosition_h 146 #endif // VisiblePosition_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698