From cfb1707fc4306b418f42c111dff517d8bfe7f259 Mon Sep 17 00:00:00 2001 From: iska Date: Tue, 22 Nov 2016 01:25:04 +0100 Subject: [PATCH] Implement collapsed, common ancestor & root properties for HTML Range --- Sources/HTMLRange.m | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Sources/HTMLRange.m b/Sources/HTMLRange.m index b7ab97c..908d708 100644 --- a/Sources/HTMLRange.m +++ b/Sources/HTMLRange.m @@ -24,6 +24,26 @@ return self; } +#pragma mark - Properties + +- (BOOL)isCollapsed +{ + return _startContainer == _endContainer && _startOffset == _endOffset; +} + +- (HTMLNode *)commonAncestorContainer +{ + HTMLNode *container = _startContainer; + while (![container containsNode:_endContainer]) { + container = container.parentNode; + } + return container; +} + +- (HTMLNode *)rootNode +{ + return _startContainer.rootNode; +} #pragma mark - Boundaries