- remove init hint argument from VisiblePosition
* khtml/editing/visible_position.cpp:
(khtml::VisiblePosition::VisiblePosition):
(khtml::VisiblePosition::init):
* khtml/editing/visible_position.h:
* khtml/editing/visible_units.cpp:
(khtml::previousBoundary):
(khtml::nextBoundary):
* khtml/xml/dom_docimpl.cpp:
(DocumentImpl::updateSelection):
* kwq/KWQKHTMLPart.mm:
(KWQKHTMLPart::styleForSelectionStart):
* kwq/WebCoreBridge.mm:
(-[WebCoreBridge setSelectedDOMRange:affinity:closeTyping:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@9154
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2005-05-09 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by John.
+
+ - remove init hint argument from VisiblePosition
+
+ * khtml/editing/visible_position.cpp:
+ (khtml::VisiblePosition::VisiblePosition):
+ (khtml::VisiblePosition::init):
+ * khtml/editing/visible_position.h:
+ * khtml/editing/visible_units.cpp:
+ (khtml::previousBoundary):
+ (khtml::nextBoundary):
+ * khtml/xml/dom_docimpl.cpp:
+ (DocumentImpl::updateSelection):
+ * kwq/KWQKHTMLPart.mm:
+ (KWQKHTMLPart::styleForSelectionStart):
+ * kwq/WebCoreBridge.mm:
+ (-[WebCoreBridge setSelectedDOMRange:affinity:closeTyping:]):
+
2005-05-10 Darin Adler <darin@apple.com>
Reviewed by David Harrison.
namespace khtml {
-VisiblePosition::VisiblePosition(const Position &pos, EAffinity affinity, EInitHint initHint)
+VisiblePosition::VisiblePosition(const Position &pos, EAffinity affinity)
{
- init(pos, initHint, affinity);
+ init(pos, affinity);
}
-VisiblePosition::VisiblePosition(NodeImpl *node, long offset, EAffinity affinity, EInitHint initHint)
+VisiblePosition::VisiblePosition(NodeImpl *node, long offset, EAffinity affinity)
{
- init(Position(node, offset), initHint, affinity);
+ init(Position(node, offset), affinity);
}
VisiblePosition::VisiblePosition(const VisiblePosition &other)
m_affinity = other.m_affinity;
}
-void VisiblePosition::init(const Position &pos, EInitHint initHint, EAffinity affinity)
+void VisiblePosition::init(const Position &pos, EAffinity affinity)
{
m_affinity = affinity;
- // A first step toward eliminating the initHint parameter.
// For <br> 0, it's important not to move past the <br>.
if (pos.node() && pos.node()->id() == ID_BR && pos.offset() == 0)
- initHint = INIT_UP;
-
- switch (initHint) {
- case INIT_UP:
- initUpstream(pos);
- break;
- case INIT_DOWN:
- initDownstream(pos);
- break;
- default:
- ASSERT_NOT_REACHED();
- break;
- }
+ initUpstream(pos);
+ else
+ initDownstream(pos);
}
void VisiblePosition::initUpstream(const Position &pos)
typedef DOM::NodeImpl NodeImpl;
typedef DOM::Position Position;
- enum EInitHint {
- INIT_UP,
- INIT_DOWN
- };
-
VisiblePosition() { m_affinity = VP_DEFAULT_AFFINITY; };
- VisiblePosition(NodeImpl *, long offset, EAffinity, EInitHint initHint=INIT_DOWN);
- VisiblePosition(const Position &, EAffinity, EInitHint initHint=INIT_DOWN);
+ VisiblePosition(NodeImpl *, long offset, EAffinity);
+ VisiblePosition(const Position &, EAffinity);
VisiblePosition(const VisiblePosition &);
void clear() { m_deepPosition.clear(); }
#endif
private:
- void init(const Position &, EInitHint, EAffinity);
+ void init(const Position &, EAffinity);
void initUpstream(const Position &);
void initDownstream(const Position &);
}
}
- return VisiblePosition(pos, DOWNSTREAM, VisiblePosition::INIT_DOWN);
+ return VisiblePosition(pos, DOWNSTREAM);
}
static VisiblePosition nextBoundary(const VisiblePosition &c, unsigned (*searchFunction)(const QChar *, unsigned))
charIt.advance(next - 1);
pos = Position(charIt.range().endContainer().handle(), charIt.range().endOffset());
}
- return VisiblePosition(pos, UPSTREAM, VisiblePosition::INIT_UP);
+ return VisiblePosition(pos, UPSTREAM);
}
// ---------
canvas->clearSelection();
}
else {
- Position startPos = VisiblePosition(s.start(), s.startAffinity(), khtml::VisiblePosition::INIT_UP).deepEquivalent();
- Position endPos = VisiblePosition(s.end(), s.endAffinity(), khtml::VisiblePosition::INIT_DOWN).deepEquivalent();
+ Position startPos = VisiblePosition(s.start(), s.startAffinity()).deepEquivalent();
+ Position endPos = VisiblePosition(s.end(), s.endAffinity()).deepEquivalent();
if (startPos.isNotNull() && endPos.isNotNull()) {
RenderObject *startRenderer = startPos.node()->renderer();
RenderObject *endRenderer = endPos.node()->renderer();
if (d->m_selection.isNone())
return 0;
- Position pos = VisiblePosition(d->m_selection.start(), d->m_selection.startAffinity(), khtml::VisiblePosition::INIT_UP).deepEquivalent();
+ Position pos = VisiblePosition(d->m_selection.start(), d->m_selection.startAffinity()).deepEquivalent();
if (!pos.inRenderedContent())
return 0;
NodeImpl *node = pos.node();
// If that bug wasn't an issue, we could just make the position from the range directly.
Position start(startContainer, [range startOffset]);
Position end(endContainer, [range endOffset]);
- VisiblePosition visibleStart(start, affinity, khtml::VisiblePosition::INIT_UP);
+ VisiblePosition visibleStart(start, affinity);
start = visibleStart.deepEquivalent();
if (rangeCollapsed) {