diff --git a/src/pyj/select.pyj b/src/pyj/select.pyj index be23ba2f92..35102bf199 100644 --- a/src/pyj/select.pyj +++ b/src/pyj/select.pyj @@ -186,6 +186,8 @@ def move_end_of_selection(pos, start): if p: r = sel.getRangeAt(0) if start: - r.setStart(p.offsetNode, p.offset) + if r.startContainer is not p.offsetNode or r.startOffset is not p.offset: + r.setStart(p.offsetNode, p.offset) else: - r.setEnd(p.offsetNode, p.offset) + if r.endContainer is not p.offsetNode or r.endOffset is not p.offset: + r.setEnd(p.offsetNode, p.offset)