OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2005, 2007, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2005, 2007, 2008 Apple Inc. All rights reserved. |
3 * Copyright (C) 2011 Google Inc. All rights reserved. | 3 * Copyright (C) 2011 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
7 * met: | 7 * met: |
8 * | 8 * |
9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 16 matching lines...) Expand all Loading... |
27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 29 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
30 */ | 30 */ |
31 | 31 |
32 #include "config.h" | 32 #include "config.h" |
33 #include "WebSubstringUtil.h" | 33 #include "WebSubstringUtil.h" |
34 | 34 |
35 #import <Cocoa/Cocoa.h> | 35 #import <Cocoa/Cocoa.h> |
36 | 36 |
37 #include "WebFrameImpl.h" | 37 #include "WebLocalFrameImpl.h" |
38 #include "bindings/v8/ExceptionStatePlaceholder.h" | 38 #include "bindings/v8/ExceptionStatePlaceholder.h" |
39 #include "core/dom/Document.h" | 39 #include "core/dom/Document.h" |
40 #include "core/dom/Element.h" | 40 #include "core/dom/Element.h" |
41 #include "core/dom/Node.h" | 41 #include "core/dom/Node.h" |
42 #include "core/dom/Range.h" | 42 #include "core/dom/Range.h" |
43 #include "core/editing/FrameSelection.h" | 43 #include "core/editing/FrameSelection.h" |
44 #include "core/editing/PlainTextRange.h" | 44 #include "core/editing/PlainTextRange.h" |
45 #include "core/editing/TextIterator.h" | 45 #include "core/editing/TextIterator.h" |
46 #include "core/html/HTMLElement.h" | 46 #include "core/html/HTMLElement.h" |
47 #include "core/frame/LocalFrame.h" | 47 #include "core/frame/LocalFrame.h" |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 if (font) | 142 if (font) |
143 stringPoint.move(0, ceil(-[font descender])); | 143 stringPoint.move(0, ceil(-[font descender])); |
144 } | 144 } |
145 | 145 |
146 baselinePoint = stringPoint; | 146 baselinePoint = stringPoint; |
147 return string; | 147 return string; |
148 } | 148 } |
149 | 149 |
150 NSAttributedString* WebSubstringUtil::attributedSubstringInRange(WebLocalFrame*
webFrame, size_t location, size_t length) | 150 NSAttributedString* WebSubstringUtil::attributedSubstringInRange(WebLocalFrame*
webFrame, size_t location, size_t length) |
151 { | 151 { |
152 LocalFrame* frame = toWebFrameImpl(webFrame)->frame(); | 152 LocalFrame* frame = toWebLocalFrameImpl(webFrame)->frame(); |
153 if (frame->view()->needsLayout()) | 153 if (frame->view()->needsLayout()) |
154 frame->view()->layout(); | 154 frame->view()->layout(); |
155 | 155 |
156 Element* editable = frame->selection().rootEditableElementOrDocumentElement(
); | 156 Element* editable = frame->selection().rootEditableElementOrDocumentElement(
); |
157 ASSERT(editable); | 157 ASSERT(editable); |
158 RefPtrWillBeRawPtr<Range> range(PlainTextRange(location, location + length).
createRange(*editable)); | 158 RefPtrWillBeRawPtr<Range> range(PlainTextRange(location, location + length).
createRange(*editable)); |
159 if (!range) | 159 if (!range) |
160 return nil; | 160 return nil; |
161 | 161 |
162 return attributedSubstringFromRange(range.get()); | 162 return attributedSubstringFromRange(range.get()); |
163 } | 163 } |
164 | 164 |
165 } // namespace blink | 165 } // namespace blink |
OLD | NEW |