Title: [165002] trunk
Revision
165002
Author
[email protected]
Date
2014-03-03 13:11:24 -0800 (Mon, 03 Mar 2014)

Log Message

Find results on simple lines are not marked correctly
https://bugs.webkit.org/show_bug.cgi?id=129586

Reviewed by Andreas Kling.

Source/WebCore: 

Tests: editing/text-iterator/count-mark-lineboxes.html
       editing/text-iterator/count-mark-simple-lines.html
               
TextIterator operating on simple lines failed to take the end of the range into account.
This also causes performance issues on long documents as range traversals would miss the end
node and end up going through the entire document.

* editing/TextIterator.cpp:
(WebCore::TextIterator::handleTextNode):
        
    Stop when hitting the range end on simple text nodes.

(WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
        
    Use hasRenderedText test instead of linebox-only firstTextBox.

* testing/Internals.cpp:
(WebCore::Internals::countMatchesForText):
* testing/Internals.h:
* testing/Internals.idl:
        
    Add testing interface for counting and marking matches.

LayoutTests: 

* editing/text-iterator/count-mark-lineboxes-expected.txt: Added.
* editing/text-iterator/count-mark-lineboxes.html: Added.
* editing/text-iterator/count-mark-simple-lines-expected.txt: Added.
* editing/text-iterator/count-mark-simple-lines.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (165001 => 165002)


--- trunk/LayoutTests/ChangeLog	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/LayoutTests/ChangeLog	2014-03-03 21:11:24 UTC (rev 165002)
@@ -1,3 +1,15 @@
+2014-03-03  Antti Koivisto  <[email protected]>
+
+        Find results on simple lines are not marked correctly
+        https://bugs.webkit.org/show_bug.cgi?id=129586
+
+        Reviewed by Andreas Kling.
+
+        * editing/text-iterator/count-mark-lineboxes-expected.txt: Added.
+        * editing/text-iterator/count-mark-lineboxes.html: Added.
+        * editing/text-iterator/count-mark-simple-lines-expected.txt: Added.
+        * editing/text-iterator/count-mark-simple-lines.html: Added.
+
 2014-03-03  Jer Noble  <[email protected]>
 
         [MSE] YouTube videos fail to play

Added: trunk/LayoutTests/editing/text-iterator/count-mark-lineboxes-expected.txt (0 => 165002)


--- trunk/LayoutTests/editing/text-iterator/count-mark-lineboxes-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/editing/text-iterator/count-mark-lineboxes-expected.txt	2014-03-03 21:11:24 UTC (rev 165002)
@@ -0,0 +1,10 @@
+PASS internals.countMatchesForText('Catilina', 23, 'mark') is 3
+PASS internals.markerCountForNode(text, 'all') is 3
+PASS internals.countMatchesForText('Roma', 23, 'mark') is 3
+PASS internals.markerCountForNode(text, 'all') is 6
+PASS internals.countMatchesForText('uid', 23, 'mark') is 2
+PASS internals.markerCountForNode(text, 'all') is 8
+PASS successfullyParsed is true
+
+TEST COMPLETE
+Etenim qUid est, Catilina, quod iam amplius expectes, si neque nox tenebris obscurare coeptus nefarios nec privata domus parietibus continere voces coniurationis tuae potest, si illustrantur, si erumpunt omnia? Muta iam istam mentem, mihi crede, obliviscere caedis atque incendiorum. Teneris undique; luce sunt clariora nobis tua consilia omnia; quae iam mecum licet recognoscas. Meministine me ante diem XII Kalendas Novembris dicere in senatu fore in armis certo die, qui dies futurus esset ante diem VI Kal. Novembris, C. Manlium, audaciae satellitem atque administrum tuae? Num me fefellit, Catilina, non modo res tanta, tam atrox tamque incredibilis, verum, id quod multo magis est admirandum, dies? Dixi ego idem in senatu caedem te optumatium contulisse in ante diem V Kalendas Novembris, tum cum multi principes civitatis Roma non tam sui conservandi quam tuorum consiliorum reprimendorum causa profugerunt. Num infitiari potes te illo ipso die meis praesidiis, mea diligentia circumclusum commovere te contra rem publicam non potuisse, cum tu discessu ceterorum nostra tamen, qui remansissemus, caede te contentum esse dicebas? QUid? cum te Praeneste Kalendis ipsis Novembribus occupaturum nocturno impetu esse confideres, sensistin illam coloniam meo iussu meis praesidiis, custodiis, vigiliis esse munitam? Nihil agis, nihil moliris, nihil cogitas, quod non ego non modo audiam, sed etiam videam planeque sentiam. Recognosce tandem mecum noctem illam superiorem; iam intelleges multo me vigilare acrius ad salutem quam te ad perniciem rei publicae. Dico te priore nocte venisse inter falcarios (non agam obscure) in M. Laecae domum; convenisse eodem complures eiusdem amentiae scelerisque socios. Num negare audes? quid taces? Convincam, si negas. Video enim esse hic in senatu quosdam, qui tecum una fuerunt. O di inmortales! ubinam gentium sumus? in qua urbe vivimus? quam rem publicam habemus? Hic, hic sunt in nostro numero, patres conscripti, in hoc orbis terrae sanctissimo gravissimoque consilio, qui de nostro omnium interitu, qui de huius urbis atque adeo de orbis terrarum exitio cogitent! Hos ego video consul et de re publica sententiam rogo et, quos ferro trucidari oportebat, eos nondum voce volnero! Fuisti igitur apud Laecam illa nocte, Catilina, distribuisti partes Italiae, statuisti, quo quemque proficisci placeret, delegisti, quos Romae relinqueres, quos tecum educeres, discripsisti urbis partes ad incendia, confirmasti te ipsum iam esse exiturum, dixisti paulum tibi esse etiam nunc morae, quod ego viverem. Reperti sunt duo equites Romani, qui te ista cura liberarent et sese illa ipsa nocte paulo ante lucem me in meo lectulo interfecturos [esse] pollicerentur. Haec ego omnia vixdum etiam coetu vestro dimisso comperi; domum meam maioribus praesidiis munivi atque firmavi, exclusi eos, quos tu ad me salutatum mane miseras, cum illi ipsi venissent, quos ego iam multis ac summis viris ad me id temporis venturos esse praedixeram.

Added: trunk/LayoutTests/editing/text-iterator/count-mark-lineboxes.html (0 => 165002)


--- trunk/LayoutTests/editing/text-iterator/count-mark-lineboxes.html	                        (rev 0)
+++ trunk/LayoutTests/editing/text-iterator/count-mark-lineboxes.html	2014-03-03 21:11:24 UTC (rev 165002)
@@ -0,0 +1,59 @@
+<head>
+<script src=""
+<script>
+internals.settings.setSimpleLineLayoutEnabled(false);
+</script>
+<body>
+<p id=test>Etenim qUid est, Catilina, quod iam amplius expectes, si neque nox
+tenebris obscurare coeptus nefarios nec privata domus parietibus continere
+voces coniurationis tuae potest, si illustrantur, si erumpunt omnia?  Muta
+iam istam mentem, mihi crede, obliviscere caedis atque incendiorum.
+Teneris undique; luce sunt clariora nobis tua consilia omnia; quae iam
+mecum licet recognoscas.  Meministine me ante diem XII Kalendas Novembris
+dicere in senatu fore in armis certo die, qui dies futurus esset ante diem
+VI Kal.  Novembris, C. Manlium, audaciae satellitem atque administrum
+tuae?  Num me fefellit, Catilina, non modo res tanta, tam atrox tamque
+incredibilis, verum, id quod multo magis est admirandum, dies?  Dixi ego
+idem in senatu caedem te optumatium contulisse in ante diem V Kalendas
+Novembris, tum cum multi principes civitatis Roma non tam sui conservandi
+quam tuorum consiliorum reprimendorum causa profugerunt.  Num infitiari
+potes te illo ipso die meis praesidiis, mea diligentia circumclusum
+commovere te contra rem publicam non potuisse, cum tu discessu ceterorum
+nostra tamen, qui remansissemus, caede te contentum esse dicebas?  QUid?
+cum te Praeneste Kalendis ipsis Novembribus occupaturum nocturno impetu
+esse confideres, sensistin illam coloniam meo iussu meis praesidiis,
+custodiis, vigiliis esse munitam?  Nihil agis, nihil moliris, nihil
+cogitas, quod non ego non modo audiam, sed etiam videam planeque sentiam.
+Recognosce tandem mecum noctem illam superiorem; iam intelleges multo me
+vigilare acrius ad salutem quam te ad perniciem rei publicae.  Dico te
+priore nocte venisse inter falcarios (non agam obscure) in M. Laecae
+domum; convenisse eodem complures eiusdem amentiae scelerisque socios.
+Num negare audes?  quid taces?  Convincam, si negas.  Video enim esse hic
+in senatu quosdam, qui tecum una fuerunt.  O di inmortales! ubinam gentium
+sumus?  in qua urbe vivimus?  quam rem publicam habemus?  Hic, hic sunt in
+nostro numero, patres conscripti, in hoc orbis terrae sanctissimo
+gravissimoque consilio, qui de nostro omnium interitu, qui de huius urbis
+atque adeo de orbis terrarum exitio cogitent! Hos ego video consul et de
+re publica sententiam rogo et, quos ferro trucidari oportebat, eos nondum
+voce volnero! Fuisti igitur apud Laecam illa nocte, Catilina, distribuisti
+partes Italiae, statuisti, quo quemque proficisci placeret, delegisti,
+quos Romae relinqueres, quos tecum educeres, discripsisti urbis partes ad
+incendia, confirmasti te ipsum iam esse exiturum, dixisti paulum tibi esse
+etiam nunc morae, quod ego viverem.  Reperti sunt duo equites Romani, qui
+te ista cura liberarent et sese illa ipsa nocte paulo ante lucem me in meo
+lectulo interfecturos [esse] pollicerentur.  Haec ego omnia vixdum etiam
+coetu vestro dimisso comperi; domum meam maioribus praesidiis munivi atque
+firmavi, exclusi eos, quos tu ad me salutatum mane miseras, cum illi ipsi
+venissent, quos ego iam multis ac summis viris ad me id temporis venturos
+esse praedixeram.
+</p>
+<script>
+var text = document.getElementById('test').firstChild;
+shouldBe("internals.countMatchesForText('Catilina', 23, 'mark')", "3");
+shouldBe("internals.markerCountForNode(text, 'all')", "3");
+shouldBe("internals.countMatchesForText('Roma', 23, 'mark')", "3");
+shouldBe("internals.markerCountForNode(text, 'all')", "6");
+shouldBe("internals.countMatchesForText('uid', 23, 'mark')", "2");
+shouldBe("internals.markerCountForNode(text, 'all')", "8");
+</script>
+<script src=""

Added: trunk/LayoutTests/editing/text-iterator/count-mark-simple-lines-expected.txt (0 => 165002)


--- trunk/LayoutTests/editing/text-iterator/count-mark-simple-lines-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/editing/text-iterator/count-mark-simple-lines-expected.txt	2014-03-03 21:11:24 UTC (rev 165002)
@@ -0,0 +1,10 @@
+PASS internals.countMatchesForText('Catilina', 23, 'mark') is 3
+PASS internals.markerCountForNode(text, 'all') is 3
+PASS internals.countMatchesForText('Roma', 23, 'mark') is 3
+PASS internals.markerCountForNode(text, 'all') is 6
+PASS internals.countMatchesForText('uid', 23, 'mark') is 2
+PASS internals.markerCountForNode(text, 'all') is 8
+PASS successfullyParsed is true
+
+TEST COMPLETE
+Etenim qUid est, Catilina, quod iam amplius expectes, si neque nox tenebris obscurare coeptus nefarios nec privata domus parietibus continere voces coniurationis tuae potest, si illustrantur, si erumpunt omnia? Muta iam istam mentem, mihi crede, obliviscere caedis atque incendiorum. Teneris undique; luce sunt clariora nobis tua consilia omnia; quae iam mecum licet recognoscas. Meministine me ante diem XII Kalendas Novembris dicere in senatu fore in armis certo die, qui dies futurus esset ante diem VI Kal. Novembris, C. Manlium, audaciae satellitem atque administrum tuae? Num me fefellit, Catilina, non modo res tanta, tam atrox tamque incredibilis, verum, id quod multo magis est admirandum, dies? Dixi ego idem in senatu caedem te optumatium contulisse in ante diem V Kalendas Novembris, tum cum multi principes civitatis Roma non tam sui conservandi quam tuorum consiliorum reprimendorum causa profugerunt. Num infitiari potes te illo ipso die meis praesidiis, mea diligentia circumclusum commovere te contra rem publicam non potuisse, cum tu discessu ceterorum nostra tamen, qui remansissemus, caede te contentum esse dicebas? QUid? cum te Praeneste Kalendis ipsis Novembribus occupaturum nocturno impetu esse confideres, sensistin illam coloniam meo iussu meis praesidiis, custodiis, vigiliis esse munitam? Nihil agis, nihil moliris, nihil cogitas, quod non ego non modo audiam, sed etiam videam planeque sentiam. Recognosce tandem mecum noctem illam superiorem; iam intelleges multo me vigilare acrius ad salutem quam te ad perniciem rei publicae. Dico te priore nocte venisse inter falcarios (non agam obscure) in M. Laecae domum; convenisse eodem complures eiusdem amentiae scelerisque socios. Num negare audes? quid taces? Convincam, si negas. Video enim esse hic in senatu quosdam, qui tecum una fuerunt. O di inmortales! ubinam gentium sumus? in qua urbe vivimus? quam rem publicam habemus? Hic, hic sunt in nostro numero, patres conscripti, in hoc orbis terrae sanctissimo gravissimoque consilio, qui de nostro omnium interitu, qui de huius urbis atque adeo de orbis terrarum exitio cogitent! Hos ego video consul et de re publica sententiam rogo et, quos ferro trucidari oportebat, eos nondum voce volnero! Fuisti igitur apud Laecam illa nocte, Catilina, distribuisti partes Italiae, statuisti, quo quemque proficisci placeret, delegisti, quos Romae relinqueres, quos tecum educeres, discripsisti urbis partes ad incendia, confirmasti te ipsum iam esse exiturum, dixisti paulum tibi esse etiam nunc morae, quod ego viverem. Reperti sunt duo equites Romani, qui te ista cura liberarent et sese illa ipsa nocte paulo ante lucem me in meo lectulo interfecturos [esse] pollicerentur. Haec ego omnia vixdum etiam coetu vestro dimisso comperi; domum meam maioribus praesidiis munivi atque firmavi, exclusi eos, quos tu ad me salutatum mane miseras, cum illi ipsi venissent, quos ego iam multis ac summis viris ad me id temporis venturos esse praedixeram.

Added: trunk/LayoutTests/editing/text-iterator/count-mark-simple-lines.html (0 => 165002)


--- trunk/LayoutTests/editing/text-iterator/count-mark-simple-lines.html	                        (rev 0)
+++ trunk/LayoutTests/editing/text-iterator/count-mark-simple-lines.html	2014-03-03 21:11:24 UTC (rev 165002)
@@ -0,0 +1,56 @@
+<head>
+<script src=""
+<body>
+<p id=test>Etenim qUid est, Catilina, quod iam amplius expectes, si neque nox
+tenebris obscurare coeptus nefarios nec privata domus parietibus continere
+voces coniurationis tuae potest, si illustrantur, si erumpunt omnia?  Muta
+iam istam mentem, mihi crede, obliviscere caedis atque incendiorum.
+Teneris undique; luce sunt clariora nobis tua consilia omnia; quae iam
+mecum licet recognoscas.  Meministine me ante diem XII Kalendas Novembris
+dicere in senatu fore in armis certo die, qui dies futurus esset ante diem
+VI Kal.  Novembris, C. Manlium, audaciae satellitem atque administrum
+tuae?  Num me fefellit, Catilina, non modo res tanta, tam atrox tamque
+incredibilis, verum, id quod multo magis est admirandum, dies?  Dixi ego
+idem in senatu caedem te optumatium contulisse in ante diem V Kalendas
+Novembris, tum cum multi principes civitatis Roma non tam sui conservandi
+quam tuorum consiliorum reprimendorum causa profugerunt.  Num infitiari
+potes te illo ipso die meis praesidiis, mea diligentia circumclusum
+commovere te contra rem publicam non potuisse, cum tu discessu ceterorum
+nostra tamen, qui remansissemus, caede te contentum esse dicebas?  QUid?
+cum te Praeneste Kalendis ipsis Novembribus occupaturum nocturno impetu
+esse confideres, sensistin illam coloniam meo iussu meis praesidiis,
+custodiis, vigiliis esse munitam?  Nihil agis, nihil moliris, nihil
+cogitas, quod non ego non modo audiam, sed etiam videam planeque sentiam.
+Recognosce tandem mecum noctem illam superiorem; iam intelleges multo me
+vigilare acrius ad salutem quam te ad perniciem rei publicae.  Dico te
+priore nocte venisse inter falcarios (non agam obscure) in M. Laecae
+domum; convenisse eodem complures eiusdem amentiae scelerisque socios.
+Num negare audes?  quid taces?  Convincam, si negas.  Video enim esse hic
+in senatu quosdam, qui tecum una fuerunt.  O di inmortales! ubinam gentium
+sumus?  in qua urbe vivimus?  quam rem publicam habemus?  Hic, hic sunt in
+nostro numero, patres conscripti, in hoc orbis terrae sanctissimo
+gravissimoque consilio, qui de nostro omnium interitu, qui de huius urbis
+atque adeo de orbis terrarum exitio cogitent! Hos ego video consul et de
+re publica sententiam rogo et, quos ferro trucidari oportebat, eos nondum
+voce volnero! Fuisti igitur apud Laecam illa nocte, Catilina, distribuisti
+partes Italiae, statuisti, quo quemque proficisci placeret, delegisti,
+quos Romae relinqueres, quos tecum educeres, discripsisti urbis partes ad
+incendia, confirmasti te ipsum iam esse exiturum, dixisti paulum tibi esse
+etiam nunc morae, quod ego viverem.  Reperti sunt duo equites Romani, qui
+te ista cura liberarent et sese illa ipsa nocte paulo ante lucem me in meo
+lectulo interfecturos [esse] pollicerentur.  Haec ego omnia vixdum etiam
+coetu vestro dimisso comperi; domum meam maioribus praesidiis munivi atque
+firmavi, exclusi eos, quos tu ad me salutatum mane miseras, cum illi ipsi
+venissent, quos ego iam multis ac summis viris ad me id temporis venturos
+esse praedixeram.
+</p>
+<script>
+var text = document.getElementById('test').firstChild;
+shouldBe("internals.countMatchesForText('Catilina', 23, 'mark')", "3");
+shouldBe("internals.markerCountForNode(text, 'all')", "3");
+shouldBe("internals.countMatchesForText('Roma', 23, 'mark')", "3");
+shouldBe("internals.markerCountForNode(text, 'all')", "6");
+shouldBe("internals.countMatchesForText('uid', 23, 'mark')", "2");
+shouldBe("internals.markerCountForNode(text, 'all')", "8");
+</script>
+<script src=""

Modified: trunk/Source/WebCore/ChangeLog (165001 => 165002)


--- trunk/Source/WebCore/ChangeLog	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/Source/WebCore/ChangeLog	2014-03-03 21:11:24 UTC (rev 165002)
@@ -1,3 +1,33 @@
+2014-03-03  Antti Koivisto  <[email protected]>
+
+        Find results on simple lines are not marked correctly
+        https://bugs.webkit.org/show_bug.cgi?id=129586
+
+        Reviewed by Andreas Kling.
+
+        Tests: editing/text-iterator/count-mark-lineboxes.html
+               editing/text-iterator/count-mark-simple-lines.html
+               
+        TextIterator operating on simple lines failed to take the end of the range into account.
+        This also causes performance issues on long documents as range traversals would miss the end
+        node and end up going through the entire document.
+
+        * editing/TextIterator.cpp:
+        (WebCore::TextIterator::handleTextNode):
+        
+            Stop when hitting the range end on simple text nodes.
+
+        (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
+        
+            Use hasRenderedText test instead of linebox-only firstTextBox.
+
+        * testing/Internals.cpp:
+        (WebCore::Internals::countMatchesForText):
+        * testing/Internals.h:
+        * testing/Internals.idl:
+        
+            Add testing interface for counting and marking matches.
+
 2014-03-03  Benjamin Poulain  <[email protected]>
 
         SelectorQuery failing RightMostWithIdMatch are compiling their selectors for each execution

Modified: trunk/Source/WebCore/editing/TextIterator.cpp (165001 => 165002)


--- trunk/Source/WebCore/editing/TextIterator.cpp	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/Source/WebCore/editing/TextIterator.cpp	2014-03-03 21:11:24 UTC (rev 165002)
@@ -538,9 +538,10 @@
         if (renderer->style().visibility() != VISIBLE && !m_ignoresStyleVisibility)
             return true;
         // This code aims to produce same results as handleTextBox() below so test results don't change. It does not make much logical sense.
+        const unsigned end = (m_node == m_endContainer) ? static_cast<unsigned>(m_endOffset) : str.length();
         unsigned runEnd = m_offset;
         unsigned runStart = m_offset;
-        while (runEnd < str.length() && (deprecatedIsCollapsibleWhitespace(str[runEnd]) || str[runEnd] == '\t'))
+        while (runEnd < end && (deprecatedIsCollapsibleWhitespace(str[runEnd]) || str[runEnd] == '\t'))
             ++runEnd;
         bool addSpaceForPrevious = m_lastTextNodeEndedWithCollapsedSpace && m_lastCharacter && !deprecatedIsCollapsibleWhitespace(m_lastCharacter);
         if (runEnd > runStart || addSpaceForPrevious) {
@@ -556,12 +557,12 @@
             }
             runStart = runEnd;
         }
-        while (runEnd < str.length() && !deprecatedIsCollapsibleWhitespace(str[runEnd]))
+        while (runEnd < end && !deprecatedIsCollapsibleWhitespace(str[runEnd]))
             ++runEnd;
-        if (runStart < str.length())
+        if (runStart < end)
             emitText(m_node, renderer, runStart, runEnd);
         m_offset = runEnd;
-        return runEnd == str.length();
+        return runEnd == end;
     }
 
     if (renderer->firstTextBox())
@@ -1300,7 +1301,7 @@
         return true;
 
     String text = renderer->text();
-    if (!renderer->firstTextBox() && text.length() > 0)
+    if (!renderer->hasRenderedText() && text.length() > 0)
         return true;
 
     m_positionEndOffset = m_offset;

Modified: trunk/Source/WebCore/testing/Internals.cpp (165001 => 165002)


--- trunk/Source/WebCore/testing/Internals.cpp	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/Source/WebCore/testing/Internals.cpp	2014-03-03 21:11:24 UTC (rev 165002)
@@ -1435,6 +1435,16 @@
     document->frame()->editor().toggleOverwriteModeEnabled();
 }
 
+unsigned Internals::countMatchesForText(const String& text, unsigned findOptions, const String& markMatches, ExceptionCode&)
+{
+    Document* document = contextDocument();
+    if (!document || !document->frame())
+        return 0;
+
+    bool mark = markMatches == "mark";
+    return document->frame()->editor().countMatchesForText(text, nullptr, findOptions, std::numeric_limits<unsigned>::max(), mark, nullptr);
+}
+
 const ProfilesArray& Internals::consoleProfiles() const
 {
     return contextDocument()->domWindow()->console()->profiles();

Modified: trunk/Source/WebCore/testing/Internals.h (165001 => 165002)


--- trunk/Source/WebCore/testing/Internals.h	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/Source/WebCore/testing/Internals.h	2014-03-03 21:11:24 UTC (rev 165002)
@@ -187,6 +187,8 @@
     bool isOverwriteModeEnabled(ExceptionCode&);
     void toggleOverwriteModeEnabled(ExceptionCode&);
 
+    unsigned countMatchesForText(const String&, unsigned findOptions, const String& markMatches, ExceptionCode&);
+
     unsigned numberOfScrollableAreas(ExceptionCode&);
 
     bool isPageBoxVisible(int pageNumber, ExceptionCode&);

Modified: trunk/Source/WebCore/testing/Internals.idl (165001 => 165002)


--- trunk/Source/WebCore/testing/Internals.idl	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/Source/WebCore/testing/Internals.idl	2014-03-03 21:11:24 UTC (rev 165002)
@@ -98,6 +98,7 @@
     [RaisesException] void setSuggestedValue(Element inputElement, DOMString value);
     [RaisesException] void setEditingValue(Element inputElement, DOMString value);
     [RaisesException] void setAutofilled(Element inputElement, boolean enabled);
+    [RaisesException] unsigned long countMatchesForText(DOMString text, unsigned long findOptions, DOMString markMatches);
 
     [RaisesException] void paintControlTints();
 

Modified: trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in (165001 => 165002)


--- trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in	2014-03-03 20:57:59 UTC (rev 165001)
+++ trunk/Source/WebKit/WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in	2014-03-03 21:11:24 UTC (rev 165002)
@@ -335,6 +335,7 @@
         symbolWithPointer(?isContinuousSpellCheckingEnabled@Editor@WebCore@@QBE_NXZ, ?isContinuousSpellCheckingEnabled@Editor@WebCore@@QEBA_NXZ)
         symbolWithPointer(?toggleContinuousSpellChecking@Editor@WebCore@@QAEXXZ, ?toggleContinuousSpellChecking@Editor@WebCore@@QEAAXXZ)
         symbolWithPointer(?toggleOverwriteModeEnabled@Editor@WebCore@@QAEXXZ, ?toggleOverwriteModeEnabled@Editor@WebCore@@QEAAXXZ)
+        symbolWithPointer(?countMatchesForText@Editor@WebCore@@QAEIABVString@WTF@@PAVRange@2@EI_NPAV?$Vector@V?$RefPtr@VRange@WebCore@@@WTF@@$0A@VCrashOnOverflow@2@@4@@Z, ?countMatchesForText@Editor@WebCore@@QEAAIABVString@WTF@@PAVRange@2@EI_NPAV?$Vector@V?$RefPtr@VRange@WebCore@@@WTF@@$0A@VCrashOnOverflow@2@@4@@Z)
 #if ENABLE(FULLSCREEN_API)
         symbolWithPointer(?webkitWillEnterFullScreenForElement@Document@WebCore@@QAEXPAVElement@2@@Z, ?webkitWillEnterFullScreenForElement@Document@WebCore@@QEAAXPEAVElement@2@@Z)
         symbolWithPointer(?webkitDidEnterFullScreenForElement@Document@WebCore@@QAEXPAVElement@2@@Z, ?webkitDidEnterFullScreenForElement@Document@WebCore@@QEAAXPEAVElement@2@@Z)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to