Title: [126167] trunk/Source/WebKit/blackberry
- Revision
- 126167
- Author
- [email protected]
- Date
- 2012-08-21 10:02:59 -0700 (Tue, 21 Aug 2012)
Log Message
[BlackBerry] Accelerated In-Region Scrolling does not render correctly on rotation
https://bugs.webkit.org/show_bug.cgi?id=94608
PR #194754
Reviewed by Goerge Staikos.
Patch by Antonio Gomes <[email protected]>
When one translates/scrolls a HW accelerated scrollable layer, it makes use of
the OVERRIDE mechanism. Suppose the following scenario:
- In landscape, the overflow menu is scrollable. Then the user scrolls it so
that is has scroll position of 0, -100.
- when he rotates to portrait, the menus fit well to the available space but it
still has the OVERRIDE set, so it keeps the layer translated at 0, -100.
Fix is simple: clear the override when we stop scrolling a HW accelerated layer,
when we destroy the objects.
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::~InRegionScrollableArea):
Modified Paths
Diff
Modified: trunk/Source/WebKit/blackberry/ChangeLog (126166 => 126167)
--- trunk/Source/WebKit/blackberry/ChangeLog 2012-08-21 17:02:28 UTC (rev 126166)
+++ trunk/Source/WebKit/blackberry/ChangeLog 2012-08-21 17:02:59 UTC (rev 126167)
@@ -1,5 +1,27 @@
2012-08-21 Antonio Gomes <[email protected]>
+ [BlackBerry] Accelerated In-Region Scrolling does not render correctly on rotation
+ https://bugs.webkit.org/show_bug.cgi?id=94608
+ PR #194754
+
+ Reviewed by Goerge Staikos.
+
+ When one translates/scrolls a HW accelerated scrollable layer, it makes use of
+ the OVERRIDE mechanism. Suppose the following scenario:
+
+ - In landscape, the overflow menu is scrollable. Then the user scrolls it so
+ that is has scroll position of 0, -100.
+ - when he rotates to portrait, the menus fit well to the available space but it
+ still has the OVERRIDE set, so it keeps the layer translated at 0, -100.
+
+ Fix is simple: clear the override when we stop scrolling a HW accelerated layer,
+ when we destroy the objects.
+
+ * WebKitSupport/InRegionScrollableArea.cpp:
+ (BlackBerry::WebKit::InRegionScrollableArea::~InRegionScrollableArea):
+
+2012-08-21 Antonio Gomes <[email protected]>
+
[BlackBerry] Properly notify WebKit when Client stops in-region scrolling
https://bugs.webkit.org/show_bug.cgi?id=94603
PR #195813
Modified: trunk/Source/WebKit/blackberry/WebKitSupport/InRegionScrollableArea.cpp (126166 => 126167)
--- trunk/Source/WebKit/blackberry/WebKitSupport/InRegionScrollableArea.cpp 2012-08-21 17:02:28 UTC (rev 126166)
+++ trunk/Source/WebKit/blackberry/WebKitSupport/InRegionScrollableArea.cpp 2012-08-21 17:02:59 UTC (rev 126167)
@@ -42,6 +42,8 @@
InRegionScrollableArea::~InRegionScrollableArea()
{
+ if (m_cachedCompositedScrollableLayer)
+ m_cachedCompositedScrollableLayer->clearOverride();
}
InRegionScrollableArea::InRegionScrollableArea(WebPagePrivate* webPage, RenderLayer* layer)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes