| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2011 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008, 2011 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 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 | 6 * modification, are permitted provided that the following conditions |
| 7 * are met: | 7 * are met: |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 380 } | 380 } |
| 381 | 381 |
| 382 void SpellChecker::markMisspellingsAfterTypingToWord(const VisiblePosition &word
Start) | 382 void SpellChecker::markMisspellingsAfterTypingToWord(const VisiblePosition &word
Start) |
| 383 { | 383 { |
| 384 TRACE_EVENT0("blink", "SpellChecker::markMisspellingsAfterTypingToWord"); | 384 TRACE_EVENT0("blink", "SpellChecker::markMisspellingsAfterTypingToWord"); |
| 385 | 385 |
| 386 VisibleSelection adjacentWords = VisibleSelection(startOfWord(wordStart, Lef
tWordIfOnBoundary), endOfWord(wordStart, RightWordIfOnBoundary)); | 386 VisibleSelection adjacentWords = VisibleSelection(startOfWord(wordStart, Lef
tWordIfOnBoundary), endOfWord(wordStart, RightWordIfOnBoundary)); |
| 387 markMisspellingsAndBadGrammar(adjacentWords); | 387 markMisspellingsAndBadGrammar(adjacentWords); |
| 388 } | 388 } |
| 389 | 389 |
| 390 bool SpellChecker::isSpellCheckingEnabledFor(Node* node) const | 390 bool SpellChecker::isSpellCheckingEnabledFor(const Node* node) const |
| 391 { | 391 { |
| 392 if (!node) | 392 if (!node) |
| 393 return false; | 393 return false; |
| 394 const Element* focusedElement = node->isElementNode() ? toElement(node) : no
de->parentElement(); | 394 const Element* focusedElement = node->isElementNode() ? toElement(node) : no
de->parentElement(); |
| 395 if (!focusedElement) | 395 if (!focusedElement) |
| 396 return false; | 396 return false; |
| 397 return focusedElement->isSpellCheckingEnabled(); | 397 return focusedElement->isSpellCheckingEnabled(); |
| 398 } | 398 } |
| 399 | 399 |
| 400 bool SpellChecker::isSpellCheckingEnabledInFocusedNode() const | 400 bool SpellChecker::isSpellCheckingEnabledInFocusedNode() const |
| (...skipping 425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 826 frame().document()->markers().removeMarkers(range, markerTypes); | 826 frame().document()->markers().removeMarkers(range, markerTypes); |
| 827 } | 827 } |
| 828 | 828 |
| 829 void SpellChecker::cancelCheck() | 829 void SpellChecker::cancelCheck() |
| 830 { | 830 { |
| 831 m_spellCheckRequester->cancelCheck(); | 831 m_spellCheckRequester->cancelCheck(); |
| 832 } | 832 } |
| 833 | 833 |
| 834 void SpellChecker::requestTextChecking(const Element& element) | 834 void SpellChecker::requestTextChecking(const Element& element) |
| 835 { | 835 { |
| 836 if (!isSpellCheckingEnabledFor(&element)) |
| 837 return; |
| 836 const EphemeralRange rangeToCheck = EphemeralRange::rangeOfContents(element)
; | 838 const EphemeralRange rangeToCheck = EphemeralRange::rangeOfContents(element)
; |
| 837 m_spellCheckRequester->requestCheckingFor(SpellCheckRequest::create(TextChec
kingProcessBatch, rangeToCheck)); | 839 m_spellCheckRequester->requestCheckingFor(SpellCheckRequest::create(TextChec
kingProcessBatch, rangeToCheck)); |
| 838 } | 840 } |
| 839 | 841 |
| 840 DEFINE_TRACE(SpellChecker) | 842 DEFINE_TRACE(SpellChecker) |
| 841 { | 843 { |
| 842 visitor->trace(m_frame); | 844 visitor->trace(m_frame); |
| 843 visitor->trace(m_spellCheckRequester); | 845 visitor->trace(m_spellCheckRequester); |
| 844 } | 846 } |
| 845 | 847 |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 948 VisiblePosition newParagraphStart = startOfNextParagraph(createVisiblePo
sition(paragraphEnd)); | 950 VisiblePosition newParagraphStart = startOfNextParagraph(createVisiblePo
sition(paragraphEnd)); |
| 949 paragraphStart = newParagraphStart.toParentAnchoredPosition(); | 951 paragraphStart = newParagraphStart.toParentAnchoredPosition(); |
| 950 paragraphEnd = endOfParagraph(newParagraphStart).toParentAnchoredPositio
n(); | 952 paragraphEnd = endOfParagraph(newParagraphStart).toParentAnchoredPositio
n(); |
| 951 firstIteration = false; | 953 firstIteration = false; |
| 952 totalLengthProcessed += currentLength; | 954 totalLengthProcessed += currentLength; |
| 953 } | 955 } |
| 954 return std::make_pair(firstFoundItem, firstFoundOffset); | 956 return std::make_pair(firstFoundItem, firstFoundOffset); |
| 955 } | 957 } |
| 956 | 958 |
| 957 } // namespace blink | 959 } // namespace blink |
| OLD | NEW |