| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * 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 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 1260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1271 } | 1271 } |
| 1272 | 1272 |
| 1273 void WebFrameImpl::replaceMisspelledRange(const WebString& text) | 1273 void WebFrameImpl::replaceMisspelledRange(const WebString& text) |
| 1274 { | 1274 { |
| 1275 // If this caret selection has two or more markers, this function replace th
e range covered by the first marker with the specified word as Microsoft Word do
es. | 1275 // If this caret selection has two or more markers, this function replace th
e range covered by the first marker with the specified word as Microsoft Word do
es. |
| 1276 if (pluginContainerFromFrame(frame())) | 1276 if (pluginContainerFromFrame(frame())) |
| 1277 return; | 1277 return; |
| 1278 RefPtr<Range> caretRange = frame()->selection().toNormalizedRange(); | 1278 RefPtr<Range> caretRange = frame()->selection().toNormalizedRange(); |
| 1279 if (!caretRange) | 1279 if (!caretRange) |
| 1280 return; | 1280 return; |
| 1281 Vector<DocumentMarker*> markers = frame()->document()->markers()->markersInR
ange(caretRange.get(), DocumentMarker::MisspellingMarkers()); | 1281 Vector<DocumentMarker*> markers = frame()->document()->markers().markersInRa
nge(caretRange.get(), DocumentMarker::MisspellingMarkers()); |
| 1282 if (markers.size() < 1 || markers[0]->startOffset() >= markers[0]->endOffset
()) | 1282 if (markers.size() < 1 || markers[0]->startOffset() >= markers[0]->endOffset
()) |
| 1283 return; | 1283 return; |
| 1284 RefPtr<Range> markerRange = Range::create(caretRange->ownerDocument(), caret
Range->startContainer(), markers[0]->startOffset(), caretRange->endContainer(),
markers[0]->endOffset()); | 1284 RefPtr<Range> markerRange = Range::create(caretRange->ownerDocument(), caret
Range->startContainer(), markers[0]->startOffset(), caretRange->endContainer(),
markers[0]->endOffset()); |
| 1285 if (!markerRange) | 1285 if (!markerRange) |
| 1286 return; | 1286 return; |
| 1287 frame()->selection().setSelection(markerRange.get(), CharacterGranularity); | 1287 frame()->selection().setSelection(markerRange.get(), CharacterGranularity); |
| 1288 frame()->editor().replaceSelectionWithText(text, false, false); | 1288 frame()->editor().replaceSelectionWithText(text, false, false); |
| 1289 } | 1289 } |
| 1290 | 1290 |
| 1291 void WebFrameImpl::removeSpellingMarkers() | 1291 void WebFrameImpl::removeSpellingMarkers() |
| 1292 { | 1292 { |
| 1293 frame()->document()->markers()->removeMarkers(DocumentMarker::MisspellingMar
kers()); | 1293 frame()->document()->markers().removeMarkers(DocumentMarker::MisspellingMark
ers()); |
| 1294 } | 1294 } |
| 1295 | 1295 |
| 1296 bool WebFrameImpl::hasSelection() const | 1296 bool WebFrameImpl::hasSelection() const |
| 1297 { | 1297 { |
| 1298 WebPluginContainerImpl* pluginContainer = pluginContainerFromFrame(frame()); | 1298 WebPluginContainerImpl* pluginContainer = pluginContainerFromFrame(frame()); |
| 1299 if (pluginContainer) | 1299 if (pluginContainer) |
| 1300 return pluginContainer->plugin()->hasSelection(); | 1300 return pluginContainer->plugin()->hasSelection(); |
| 1301 | 1301 |
| 1302 // frame()->selection()->isNone() never returns true. | 1302 // frame()->selection()->isNone() never returns true. |
| 1303 return frame()->selection().start() != frame()->selection().end(); | 1303 return frame()->selection().start() != frame()->selection().end(); |
| (...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1578 return true; | 1578 return true; |
| 1579 } | 1579 } |
| 1580 | 1580 |
| 1581 void WebFrameImpl::stopFinding(bool clearSelection) | 1581 void WebFrameImpl::stopFinding(bool clearSelection) |
| 1582 { | 1582 { |
| 1583 if (!clearSelection) | 1583 if (!clearSelection) |
| 1584 setFindEndstateFocusAndSelection(); | 1584 setFindEndstateFocusAndSelection(); |
| 1585 cancelPendingScopingEffort(); | 1585 cancelPendingScopingEffort(); |
| 1586 | 1586 |
| 1587 // Remove all markers for matches found and turn off the highlighting. | 1587 // Remove all markers for matches found and turn off the highlighting. |
| 1588 frame()->document()->markers()->removeMarkers(DocumentMarker::TextMatch); | 1588 frame()->document()->markers().removeMarkers(DocumentMarker::TextMatch); |
| 1589 frame()->editor().setMarkedTextMatchesAreHighlighted(false); | 1589 frame()->editor().setMarkedTextMatchesAreHighlighted(false); |
| 1590 clearFindMatchesCache(); | 1590 clearFindMatchesCache(); |
| 1591 | 1591 |
| 1592 // Let the frame know that we don't want tickmarks or highlighting anymore. | 1592 // Let the frame know that we don't want tickmarks or highlighting anymore. |
| 1593 invalidateArea(InvalidateAll); | 1593 invalidateArea(InvalidateAll); |
| 1594 } | 1594 } |
| 1595 | 1595 |
| 1596 void WebFrameImpl::scopeStringMatches(int identifier, const WebString& searchTex
t, const WebFindOptions& options, bool reset) | 1596 void WebFrameImpl::scopeStringMatches(int identifier, const WebString& searchTex
t, const WebFindOptions& options, bool reset) |
| 1597 { | 1597 { |
| 1598 if (reset) { | 1598 if (reset) { |
| (...skipping 785 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2384 if ((area & InvalidateScrollbar) == InvalidateScrollbar) { | 2384 if ((area & InvalidateScrollbar) == InvalidateScrollbar) { |
| 2385 // Invalidate the vertical scroll bar region for the view. | 2385 // Invalidate the vertical scroll bar region for the view. |
| 2386 Scrollbar* scrollbar = view->verticalScrollbar(); | 2386 Scrollbar* scrollbar = view->verticalScrollbar(); |
| 2387 if (scrollbar) | 2387 if (scrollbar) |
| 2388 scrollbar->invalidate(); | 2388 scrollbar->invalidate(); |
| 2389 } | 2389 } |
| 2390 } | 2390 } |
| 2391 | 2391 |
| 2392 void WebFrameImpl::addMarker(Range* range, bool activeMatch) | 2392 void WebFrameImpl::addMarker(Range* range, bool activeMatch) |
| 2393 { | 2393 { |
| 2394 frame()->document()->markers()->addTextMatchMarker(range, activeMatch); | 2394 frame()->document()->markers().addTextMatchMarker(range, activeMatch); |
| 2395 } | 2395 } |
| 2396 | 2396 |
| 2397 void WebFrameImpl::setMarkerActive(Range* range, bool active) | 2397 void WebFrameImpl::setMarkerActive(Range* range, bool active) |
| 2398 { | 2398 { |
| 2399 if (!range || range->collapsed(IGNORE_EXCEPTION)) | 2399 if (!range || range->collapsed(IGNORE_EXCEPTION)) |
| 2400 return; | 2400 return; |
| 2401 frame()->document()->markers()->setMarkersActive(range, active); | 2401 frame()->document()->markers().setMarkersActive(range, active); |
| 2402 } | 2402 } |
| 2403 | 2403 |
| 2404 int WebFrameImpl::ordinalOfFirstMatchForFrame(WebFrameImpl* frame) const | 2404 int WebFrameImpl::ordinalOfFirstMatchForFrame(WebFrameImpl* frame) const |
| 2405 { | 2405 { |
| 2406 int ordinal = 0; | 2406 int ordinal = 0; |
| 2407 WebFrameImpl* mainFrameImpl = viewImpl()->mainFrameImpl(); | 2407 WebFrameImpl* mainFrameImpl = viewImpl()->mainFrameImpl(); |
| 2408 // Iterate from the main frame up to (but not including) |frame| and | 2408 // Iterate from the main frame up to (but not including) |frame| and |
| 2409 // add up the number of matches found so far. | 2409 // add up the number of matches found so far. |
| 2410 for (WebFrameImpl* it = mainFrameImpl; it != frame; it = toWebFrameImpl(it->
traverseNext(true))) { | 2410 for (WebFrameImpl* it = mainFrameImpl; it != frame; it = toWebFrameImpl(it->
traverseNext(true))) { |
| 2411 if (it->m_lastMatchCount > 0) | 2411 if (it->m_lastMatchCount > 0) |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2512 | 2512 |
| 2513 // There is a possibility that the frame being detached was the only | 2513 // There is a possibility that the frame being detached was the only |
| 2514 // pending one. We need to make sure final replies can be sent. | 2514 // pending one. We need to make sure final replies can be sent. |
| 2515 flushCurrentScopingEffort(m_findRequestIdentifier); | 2515 flushCurrentScopingEffort(m_findRequestIdentifier); |
| 2516 | 2516 |
| 2517 cancelPendingScopingEffort(); | 2517 cancelPendingScopingEffort(); |
| 2518 } | 2518 } |
| 2519 } | 2519 } |
| 2520 | 2520 |
| 2521 } // namespace blink | 2521 } // namespace blink |
| OLD | NEW |