Title: [109228] trunk/Source/WebKit2
- Revision
- 109228
- Author
- [email protected]
- Date
- 2012-02-29 10:15:32 -0800 (Wed, 29 Feb 2012)
Log Message
DidFindString should be emitted even if FindOptionsShowOverlay is not enabled
https://bugs.webkit.org/show_bug.cgi?id=76522
Reviewed by Darin Adler.
DidFindString message should be issued always even if neither
FindOptionsShowOverlay or FindOptionsShowHighlight are
provided. The difference is that if any of those flags are present
the find operation will look for all the appearances of the text
in the web view, otherwise it will just look and report the next
occurrence.
This patch removes the temporary workaround added in r109222 to
the WebKitFindController unit tests.
* UIProcess/API/gtk/tests/TestWebKitFindController.cpp:
* WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::findString):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (109227 => 109228)
--- trunk/Source/WebKit2/ChangeLog 2012-02-29 18:08:27 UTC (rev 109227)
+++ trunk/Source/WebKit2/ChangeLog 2012-02-29 18:15:32 UTC (rev 109228)
@@ -1,3 +1,24 @@
+2012-02-29 Sergio Villar Senin <[email protected]>
+
+ DidFindString should be emitted even if FindOptionsShowOverlay is not enabled
+ https://bugs.webkit.org/show_bug.cgi?id=76522
+
+ Reviewed by Darin Adler.
+
+ DidFindString message should be issued always even if neither
+ FindOptionsShowOverlay or FindOptionsShowHighlight are
+ provided. The difference is that if any of those flags are present
+ the find operation will look for all the appearances of the text
+ in the web view, otherwise it will just look and report the next
+ occurrence.
+
+ This patch removes the temporary workaround added in r109222 to
+ the WebKitFindController unit tests.
+
+ * UIProcess/API/gtk/tests/TestWebKitFindController.cpp:
+ * WebProcess/WebPage/FindController.cpp:
+ (WebKit::FindController::findString):
+
2012-01-19 Sergio Villar Senin <[email protected]>
[GTK] [WK2] Add Find API
Modified: trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFindController.cpp (109227 => 109228)
--- trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFindController.cpp 2012-02-29 18:08:27 UTC (rev 109227)
+++ trunk/Source/WebKit2/UIProcess/API/gtk/tests/TestWebKitFindController.cpp 2012-02-29 18:15:32 UTC (rev 109228)
@@ -45,12 +45,6 @@
void find(const char* searchText, guint32 findOptions, guint maxMatchCount)
{
- // Due to http://weakit.org/b/76522 we have to artificially
- // add here the show overlay option (that we do not even
- // expose in the API) to get the DidFindString messsage
- // issued. Remove this once 76522 is fixed.
- findOptions = findOptions | 1 << 5;
-
g_signal_connect(m_findController.get(), "found-text", G_CALLBACK(foundTextCallback), this);
g_signal_connect(m_findController.get(), "failed-to-find-text", G_CALLBACK(failedToFindTextCallback), this);
webkit_find_controller_search(m_findController.get(), searchText, findOptions, maxMatchCount);
Modified: trunk/Source/WebKit2/WebProcess/WebPage/FindController.cpp (109227 => 109228)
--- trunk/Source/WebKit2/WebProcess/WebPage/FindController.cpp 2012-02-29 18:08:27 UTC (rev 109227)
+++ trunk/Source/WebKit2/WebProcess/WebPage/FindController.cpp 2012-02-29 18:15:32 UTC (rev 109228)
@@ -109,24 +109,25 @@
m_webPage->send(Messages::WebPageProxy::DidFailToFindString(string));
} else {
shouldShowOverlay = options & FindOptionsShowOverlay;
+ bool shouldShowHighlight = options & FindOptionsShowHighlight;
+ unsigned matchCount = 1;
- if (shouldShowOverlay) {
- bool shouldShowHighlight = options & FindOptionsShowHighlight;
+ if (shouldShowOverlay || shouldShowHighlight) {
if (maxMatchCount == numeric_limits<unsigned>::max())
--maxMatchCount;
-
- unsigned matchCount = m_webPage->corePage()->markAllMatchesForText(string, core(options), shouldShowHighlight, maxMatchCount + 1);
+ matchCount = m_webPage->corePage()->markAllMatchesForText(string, core(options), shouldShowHighlight, maxMatchCount + 1);
+
// Check if we have more matches than allowed.
if (matchCount > maxMatchCount) {
shouldShowOverlay = false;
matchCount = static_cast<unsigned>(kWKMoreThanMaximumMatchCount);
}
-
- m_webPage->send(Messages::WebPageProxy::DidFindString(string, matchCount));
}
+ m_webPage->send(Messages::WebPageProxy::DidFindString(string, matchCount));
+
if (!(options & FindOptionsShowFindIndicator) || !updateFindIndicator(selectedFrame, shouldShowOverlay)) {
// Either we shouldn't show the find indicator, or we couldn't update it.
hideFindIndicator();
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes