From ef672e1dbb40f79cc1e93e7322b4987bd113a5aa Mon Sep 17 00:00:00 2001 From: iska Date: Sun, 27 Nov 2016 15:00:13 +0100 Subject: [PATCH] =?UTF-8?q?Add=20range=20attaching/detaching=20to=20the=20?= =?UTF-8?q?range=E2=80=99s=20lifecycle?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Sources/HTMLRange.m | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/Sources/HTMLRange.m b/Sources/HTMLRange.m index ae90172..d670a83 100644 --- a/Sources/HTMLRange.m +++ b/Sources/HTMLRange.m @@ -9,6 +9,13 @@ #import "HTMLRange.h" #import "HTMLDocument.h" #import "HTMLKitDOMExceptions.h" +#import "HTMLDocument+Private.h" + +@interface HTMLRange () +{ + HTMLDocument *_ownerDocument; +} +@end @implementation HTMLRange @@ -18,12 +25,19 @@ { self = [super init]; if (self) { + _ownerDocument = document; + [_ownerDocument attachRange:self]; [self setStartNode:document startOffset:0]; [self setEndNode:document endOffset:0]; } return self; } +- (void)dealloc +{ + [_ownerDocument detachRange:self]; +} + #pragma mark - Properties - (BOOL)isCollapsed