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

Unified Diff: Source/core/editing/VisiblePosition.h

Issue 1299873002: ALL-IN-ONE Introduce enum class TextAffinity (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: 2015-08-19T18:08:52 Created 5 years, 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/core/editing/TextAffinity.h ('k') | Source/core/editing/VisiblePosition.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/editing/VisiblePosition.h
diff --git a/Source/core/editing/VisiblePosition.h b/Source/core/editing/VisiblePosition.h
index 20172c7b503bd793ade28288e3409e0475e0d751..83080e46246d00187f4d747349777ba3d1d8283c 100644
--- a/Source/core/editing/VisiblePosition.h
+++ b/Source/core/editing/VisiblePosition.h
@@ -30,6 +30,7 @@
#include "core/editing/EditingBoundary.h"
#include "core/editing/EphemeralRange.h"
#include "core/editing/PositionWithAffinity.h"
+#include "core/editing/TextAffinity.h"
#include "platform/heap/Handle.h"
#include "platform/text/TextDirection.h"
@@ -39,14 +40,14 @@ namespace blink {
// the callers do not really care (they just want the
// deep position without regard to line position), and this
// is cheaper than UPSTREAM
-#define VP_DEFAULT_AFFINITY DOWNSTREAM
+#define VP_DEFAULT_AFFINITY TextAffinity::Downstream
// Callers who do not know where on the line the position is,
// but would like UPSTREAM if at a line break or DOWNSTREAM
// otherwise, need a clear way to specify that. The
// constructors auto-correct UPSTREAM to DOWNSTREAM if the
// position is not at a line break.
-#define VP_UPSTREAM_IF_POSSIBLE UPSTREAM
+#define VP_UPSTREAM_IF_POSSIBLE TextAffinity::Upstream
class InlineBox;
class Range;
@@ -73,8 +74,8 @@ class CORE_EXPORT VisiblePosition final {
DISALLOW_ALLOCATION();
public:
VisiblePosition() : m_affinity(VP_DEFAULT_AFFINITY) { }
- explicit VisiblePosition(const Position&, EAffinity = VP_DEFAULT_AFFINITY);
- explicit VisiblePosition(const PositionInComposedTree&, EAffinity = VP_DEFAULT_AFFINITY);
+ explicit VisiblePosition(const Position&, TextAffinity = VP_DEFAULT_AFFINITY);
+ explicit VisiblePosition(const PositionInComposedTree&, TextAffinity = VP_DEFAULT_AFFINITY);
explicit VisiblePosition(const PositionWithAffinity&);
// Intentionally delete |operator==()| and |operator!=()| for reducing
@@ -91,7 +92,7 @@ public:
Position deepEquivalent() const { return m_deepPosition; }
Position toParentAnchoredPosition() const { return deepEquivalent().parentAnchoredEquivalent(); }
PositionWithAffinity toPositionWithAffinity() const { return PositionWithAffinity(m_deepPosition, m_affinity); }
- EAffinity affinity() const { ASSERT(m_affinity == UPSTREAM || m_affinity == DOWNSTREAM); return m_affinity; }
+ TextAffinity affinity() const { return m_affinity; }
// next() and previous() will increment/decrement by a character cluster.
VisiblePosition next(EditingBoundaryCrossingRule = CanCrossEditingBoundary) const;
@@ -128,13 +129,13 @@ public:
private:
template<typename Strategy>
- void init(const PositionAlgorithm<Strategy>&, EAffinity);
+ void init(const PositionAlgorithm<Strategy>&, TextAffinity);
Position leftVisuallyDistinctCandidate() const;
Position rightVisuallyDistinctCandidate() const;
Position m_deepPosition;
- EAffinity m_affinity;
+ TextAffinity m_affinity;
};
// TODO(yosin) We should move |computeInlineBoxPosition()| to "VisibleUnits.h"
« no previous file with comments | « Source/core/editing/TextAffinity.h ('k') | Source/core/editing/VisiblePosition.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698