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

Side by Side Diff: third_party/WebKit/Source/core/dom/StaticRange.cpp

Issue 2793093002: [InputEvent] Update spec link for StaticRange.idl and use unsigned offset (Closed)
Patch Set: Created 3 years, 8 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // https://discourse.wicg.io/t/proposal-staticrange-to-be-used-instead-of-range- for-new-apis/1472
6
7 #include "core/dom/StaticRange.h" 5 #include "core/dom/StaticRange.h"
8 6
9 #include "bindings/core/v8/ExceptionState.h" 7 #include "bindings/core/v8/ExceptionState.h"
10 #include "bindings/core/v8/ScriptState.h" 8 #include "bindings/core/v8/ScriptState.h"
11 #include "core/dom/Range.h" 9 #include "core/dom/Range.h"
12 #include "core/frame/LocalDOMWindow.h" 10 #include "core/frame/LocalDOMWindow.h"
13 11
14 namespace blink { 12 namespace blink {
15 13
16 StaticRange::StaticRange(Document& document) 14 StaticRange::StaticRange(Document& document)
17 : m_ownerDocument(document), 15 : m_ownerDocument(document),
18 m_startContainer(document), 16 m_startContainer(document),
19 m_startOffset(0), 17 m_startOffset(0u),
20 m_endContainer(document), 18 m_endContainer(document),
21 m_endOffset(0) {} 19 m_endOffset(0u) {}
22 20
23 StaticRange::StaticRange(Document& document, 21 StaticRange::StaticRange(Document& document,
24 Node* startContainer, 22 Node* startContainer,
25 int startOffset, 23 unsigned startOffset,
26 Node* endContainer, 24 Node* endContainer,
27 int endOffset) 25 unsigned endOffset)
28 : m_ownerDocument(document), 26 : m_ownerDocument(document),
29 m_startContainer(startContainer), 27 m_startContainer(startContainer),
30 m_startOffset(startOffset), 28 m_startOffset(startOffset),
31 m_endContainer(endContainer), 29 m_endContainer(endContainer),
32 m_endOffset(endOffset) {} 30 m_endOffset(endOffset) {}
33 31
34 void StaticRange::setStart(Node* container, int offset) { 32 void StaticRange::setStart(Node* container, unsigned offset) {
35 m_startContainer = container; 33 m_startContainer = container;
36 m_startOffset = offset; 34 m_startOffset = offset;
37 } 35 }
38 36
39 void StaticRange::setEnd(Node* container, int offset) { 37 void StaticRange::setEnd(Node* container, unsigned offset) {
40 m_endContainer = container; 38 m_endContainer = container;
41 m_endOffset = offset; 39 m_endOffset = offset;
42 } 40 }
43 41
44 Range* StaticRange::toRange(ExceptionState& exceptionState) const { 42 Range* StaticRange::toRange(ExceptionState& exceptionState) const {
45 Range* range = Range::create(*m_ownerDocument.get()); 43 Range* range = Range::create(*m_ownerDocument.get());
46 // Do the offset checking. 44 // Do the offset checking.
47 range->setStart(m_startContainer, m_startOffset, exceptionState); 45 range->setStart(m_startContainer, m_startOffset, exceptionState);
48 range->setEnd(m_endContainer, m_endOffset, exceptionState); 46 range->setEnd(m_endContainer, m_endOffset, exceptionState);
49 return range; 47 return range;
50 } 48 }
51 49
52 DEFINE_TRACE(StaticRange) { 50 DEFINE_TRACE(StaticRange) {
53 visitor->trace(m_ownerDocument); 51 visitor->trace(m_ownerDocument);
54 visitor->trace(m_startContainer); 52 visitor->trace(m_startContainer);
55 visitor->trace(m_endContainer); 53 visitor->trace(m_endContainer);
56 } 54 }
57 55
58 } // namespace blink 56 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698