Title: [112570] trunk/Source/WebKit/blackberry
- Revision
- 112570
- Author
- [email protected]
- Date
- 2012-03-29 13:39:54 -0700 (Thu, 29 Mar 2012)
Log Message
Unreviewed, rolling out r111259.
http://trac.webkit.org/changeset/111259
https://bugs.webkit.org/show_bug.cgi?id=82650
Caused selection regression in calculations due to
misconstructed IntRectRegion. (Requested by mfenton on
#webkit).
Patch by Sheriff Bot <[email protected]> on 2012-03-29
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::getConsolidatedRegionOfTextQuadsForSelection):
Modified Paths
Diff
Modified: trunk/Source/WebKit/blackberry/ChangeLog (112569 => 112570)
--- trunk/Source/WebKit/blackberry/ChangeLog 2012-03-29 20:37:38 UTC (rev 112569)
+++ trunk/Source/WebKit/blackberry/ChangeLog 2012-03-29 20:39:54 UTC (rev 112570)
@@ -1,5 +1,18 @@
2012-03-29 Sheriff Bot <[email protected]>
+ Unreviewed, rolling out r111259.
+ http://trac.webkit.org/changeset/111259
+ https://bugs.webkit.org/show_bug.cgi?id=82650
+
+ Caused selection regression in calculations due to
+ misconstructed IntRectRegion. (Requested by mfenton on
+ #webkit).
+
+ * WebKitSupport/SelectionHandler.cpp:
+ (BlackBerry::WebKit::SelectionHandler::getConsolidatedRegionOfTextQuadsForSelection):
+
+2012-03-29 Sheriff Bot <[email protected]>
+
Unreviewed, rolling out r112553.
http://trac.webkit.org/changeset/112553
https://bugs.webkit.org/show_bug.cgi?id=82638
Modified: trunk/Source/WebKit/blackberry/WebKitSupport/SelectionHandler.cpp (112569 => 112570)
--- trunk/Source/WebKit/blackberry/WebKitSupport/SelectionHandler.cpp 2012-03-29 20:37:38 UTC (rev 112569)
+++ trunk/Source/WebKit/blackberry/WebKitSupport/SelectionHandler.cpp 2012-03-29 20:39:54 UTC (rev 112570)
@@ -112,18 +112,15 @@
// framePosition is in main frame coordinates.
WebCore::IntPoint framePosition = m_webPage->frameOffset(m_webPage->focusedOrMainFrame());
- // Convert the text quads into a more platform friendy
- // IntRectRegion and adjust for subframes.
- std::vector<Platform::IntRect> adjustedIntRects;
- Platform::IntRect selectionBoundingBox;
+ // The ranges rect list is based on render elements and may include multiple adjacent rects.
+ // Use IntRectRegion to consolidate these rects into bands as well as a container to pass
+ // to the client.
for (unsigned i = 0; i < quadList.size(); i++) {
WebCore::IntRect enclosingRect = quadList[i].enclosingBoundingBox();
enclosingRect.intersect(frameRect);
enclosingRect.move(framePosition.x(), framePosition.y());
- adjustedIntRects.push_back(enclosingRect);
- selectionBoundingBox = unionOfRects(enclosingRect, selectionBoundingBox);
+ region = unionRegions(region, IntRectRegion(enclosingRect));
}
- region = IntRectRegion(selectionBoundingBox, adjustedIntRects.size(), adjustedIntRects);
}
}
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes