Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2008, 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2008, 2011 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies) | 3 * Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies) |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 13 * Library General Public License for more details. | 13 * Library General Public License for more details. |
| 14 * | 14 * |
| 15 * You should have received a copy of the GNU Library General Public License | 15 * You should have received a copy of the GNU Library General Public License |
| 16 * along with this library; see the file COPYING.LIB. If not, write to | 16 * along with this library; see the file COPYING.LIB. If not, write to |
| 17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 17 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
| 18 * Boston, MA 02110-1301, USA. | 18 * Boston, MA 02110-1301, USA. |
| 19 * | 19 * |
| 20 */ | 20 */ |
| 21 | 21 |
| 22 #include "core/layout/HitTestResult.h" | 22 #include "core/layout/HitTestResult.h" |
| 23 | 23 |
| 24 #include "core/HTMLNames.h" | 24 #include "core/HTMLNames.h" |
| 25 #include "core/InputTypeNames.h" | 25 #include "core/InputTypeNames.h" |
| 26 #include "core/dom/PseudoElement.h" | 26 #include "core/dom/PseudoElement.h" |
| 27 #include "core/dom/shadow/FlatTreeTraversal.h" | 27 #include "core/dom/shadow/FlatTreeTraversal.h" |
| 28 #include "core/dom/shadow/ShadowRoot.h" | 28 #include "core/dom/shadow/ShadowRoot.h" |
| 29 #include "core/editing/EditingUtilities.h" | 29 #include "core/editing/EditingUtilities.h" |
|
tkent
2016/09/20 12:20:10
Can we remove #includes for core/editing/ ?
Xiaocheng
2016/09/20 12:56:14
Only DocumentMarkerController.h can be removed, an
| |
| 30 #include "core/editing/FrameSelection.h" | 30 #include "core/editing/FrameSelection.h" |
| 31 #include "core/editing/markers/DocumentMarkerController.h" | 31 #include "core/editing/markers/DocumentMarkerController.h" |
| 32 #include "core/frame/LocalFrame.h" | 32 #include "core/frame/LocalFrame.h" |
| 33 #include "core/html/HTMLAreaElement.h" | 33 #include "core/html/HTMLAreaElement.h" |
| 34 #include "core/html/HTMLImageElement.h" | 34 #include "core/html/HTMLImageElement.h" |
| 35 #include "core/html/HTMLInputElement.h" | 35 #include "core/html/HTMLInputElement.h" |
| 36 #include "core/html/HTMLMapElement.h" | 36 #include "core/html/HTMLMapElement.h" |
| 37 #include "core/html/HTMLMediaElement.h" | 37 #include "core/html/HTMLMediaElement.h" |
| 38 #include "core/html/HTMLTextAreaElement.h" | 38 #include "core/html/HTMLTextAreaElement.h" |
| 39 #include "core/html/parser/HTMLParserIdioms.h" | 39 #include "core/html/parser/HTMLParserIdioms.h" |
| (...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 351 if (!m_innerURLElement) | 351 if (!m_innerURLElement) |
| 352 return KURL(); | 352 return KURL(); |
| 353 return m_innerURLElement->hrefURL(); | 353 return m_innerURLElement->hrefURL(); |
| 354 } | 354 } |
| 355 | 355 |
| 356 bool HitTestResult::isLiveLink() const | 356 bool HitTestResult::isLiveLink() const |
| 357 { | 357 { |
| 358 return m_innerURLElement && m_innerURLElement->isLiveLink(); | 358 return m_innerURLElement && m_innerURLElement->isLiveLink(); |
| 359 } | 359 } |
| 360 | 360 |
| 361 // TODO(xiaochengh): We should move |HitTestResult::isMisspelled()| to | |
| 362 // "SelectionController.cpp" as static function. | |
| 363 bool HitTestResult::isMisspelled() const | |
| 364 { | |
| 365 if (!innerNode() || !innerNode()->layoutObject()) | |
| 366 return false; | |
| 367 VisiblePosition pos = createVisiblePosition(innerNode()->layoutObject()->pos itionForPoint(localPoint())); | |
| 368 if (pos.isNull()) | |
| 369 return false; | |
| 370 return m_innerNode->document().markers().markersInRange( | |
| 371 EphemeralRange(pos.deepEquivalent().parentAnchoredEquivalent()), Documen tMarker::MisspellingMarkers()).size() > 0; | |
| 372 } | |
| 373 | |
| 374 bool HitTestResult::isOverLink() const | 361 bool HitTestResult::isOverLink() const |
| 375 { | 362 { |
| 376 return m_innerURLElement && m_innerURLElement->isLink(); | 363 return m_innerURLElement && m_innerURLElement->isLink(); |
| 377 } | 364 } |
| 378 | 365 |
| 379 String HitTestResult::textContent() const | 366 String HitTestResult::textContent() const |
| 380 { | 367 { |
| 381 if (!m_innerURLElement) | 368 if (!m_innerURLElement) |
| 382 return String(); | 369 return String(); |
| 383 return m_innerURLElement->textContent(); | 370 return m_innerURLElement->textContent(); |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 513 else if (isHTMLMapElement(m_innerNode)) | 500 else if (isHTMLMapElement(m_innerNode)) |
| 514 imageMapImageElement = toHTMLMapElement(m_innerNode)->imageElement(); | 501 imageMapImageElement = toHTMLMapElement(m_innerNode)->imageElement(); |
| 515 | 502 |
| 516 if (!imageMapImageElement) | 503 if (!imageMapImageElement) |
| 517 return m_innerNode.get(); | 504 return m_innerNode.get(); |
| 518 | 505 |
| 519 return imageMapImageElement; | 506 return imageMapImageElement; |
| 520 } | 507 } |
| 521 | 508 |
| 522 } // namespace blink | 509 } // namespace blink |
| OLD | NEW |