Title: [97411] trunk/Source/WebKit2
- Revision
- 97411
- Author
- [email protected]
- Date
- 2011-10-13 15:25:05 -0700 (Thu, 13 Oct 2011)
Log Message
[Mac] Wheel event handler counter is incorrect with PDF views
https://bugs.webkit.org/show_bug.cgi?id=70062
Reviewed by Dan Bernstein.
* WebProcess/Plugins/PDF/BuiltInPDFView.h:
* WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
(WebKit::BuiltInPDFView::didAddVerticalScrollbar): Added forgotten override for vertical case.
(WebKit::BuiltInPDFView::willRemoveVerticalScrollbar): Ditto.
(WebKit::BuiltInPDFView::createScrollbar): Notify self, do not make a shortcut to ScrollAnimator.
(WebKit::BuiltInPDFView::destroyScrollbar): Ditto.
(WebKit::BuiltInPDFView::destroy): Actually destroy the scrollbars.
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (97410 => 97411)
--- trunk/Source/WebKit2/ChangeLog 2011-10-13 22:23:47 UTC (rev 97410)
+++ trunk/Source/WebKit2/ChangeLog 2011-10-13 22:25:05 UTC (rev 97411)
@@ -1,3 +1,18 @@
+2011-10-13 Alexey Proskuryakov <[email protected]>
+
+ [Mac] Wheel event handler counter is incorrect with PDF views
+ https://bugs.webkit.org/show_bug.cgi?id=70062
+
+ Reviewed by Dan Bernstein.
+
+ * WebProcess/Plugins/PDF/BuiltInPDFView.h:
+ * WebProcess/Plugins/PDF/BuiltInPDFView.cpp:
+ (WebKit::BuiltInPDFView::didAddVerticalScrollbar): Added forgotten override for vertical case.
+ (WebKit::BuiltInPDFView::willRemoveVerticalScrollbar): Ditto.
+ (WebKit::BuiltInPDFView::createScrollbar): Notify self, do not make a shortcut to ScrollAnimator.
+ (WebKit::BuiltInPDFView::destroyScrollbar): Ditto.
+ (WebKit::BuiltInPDFView::destroy): Actually destroy the scrollbars.
+
2011-10-12 Chris Marrin <[email protected]>
Sync requestAnimationFrame callback to CVDisplayLink on Mac
Modified: trunk/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.cpp (97410 => 97411)
--- trunk/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.cpp 2011-10-13 22:23:47 UTC (rev 97410)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.cpp 2011-10-13 22:25:05 UTC (rev 97411)
@@ -142,14 +142,28 @@
pluginView->frame()->document()->didRemoveWheelEventHandler();
}
+void BuiltInPDFView::didAddVerticalScrollbar(Scrollbar* scrollbar)
+{
+ pluginView()->frame()->document()->didAddWheelEventHandler();
+ ScrollableArea::didAddVerticalScrollbar(scrollbar);
+}
+
+void BuiltInPDFView::willRemoveVerticalScrollbar(Scrollbar* scrollbar)
+{
+ ScrollableArea::willRemoveVerticalScrollbar(scrollbar);
+ // FIXME: Maybe need a separate ScrollableArea::didRemoveHorizontalScrollbar callback?
+ if (PluginView* pluginView = this->pluginView())
+ pluginView->frame()->document()->didRemoveWheelEventHandler();
+}
+
PassRefPtr<Scrollbar> BuiltInPDFView::createScrollbar(ScrollbarOrientation orientation)
{
// FIXME: Support custom scrollbar styles.
RefPtr<Scrollbar> widget = Scrollbar::createNativeScrollbar(this, orientation, RegularScrollbar);
if (orientation == HorizontalScrollbar)
- scrollAnimator()->didAddHorizontalScrollbar(widget.get());
+ didAddHorizontalScrollbar(widget.get());
else
- scrollAnimator()->didAddVerticalScrollbar(widget.get());
+ didAddVerticalScrollbar(widget.get());
pluginView()->frame()->view()->addChild(widget.get());
return widget.release();
}
@@ -161,9 +175,9 @@
return;
if (orientation == HorizontalScrollbar)
- scrollAnimator()->willRemoveHorizontalScrollbar(scrollbar.get());
+ willRemoveHorizontalScrollbar(scrollbar.get());
else
- scrollAnimator()->willRemoveVerticalScrollbar(scrollbar.get());
+ willRemoveVerticalScrollbar(scrollbar.get());
scrollbar->removeFromParent();
scrollbar->disconnectFromScrollableArea();
@@ -214,10 +228,8 @@
if (m_page)
m_page->removeScrollableArea(this);
- if (m_horizontalScrollbar)
- willRemoveHorizontalScrollbar(m_horizontalScrollbar.get());
- if (m_verticalScrollbar)
- willRemoveVerticalScrollbar(m_verticalScrollbar.get());
+ destroyScrollbar(HorizontalScrollbar);
+ destroyScrollbar(VerticalScrollbar);
}
void BuiltInPDFView::paint(GraphicsContext* graphicsContext, const IntRect& dirtyRectInWindowCoordinates)
Modified: trunk/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h (97410 => 97411)
--- trunk/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h 2011-10-13 22:23:47 UTC (rev 97410)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PDF/BuiltInPDFView.h 2011-10-13 22:25:05 UTC (rev 97411)
@@ -56,6 +56,8 @@
void updateScrollbars();
void didAddHorizontalScrollbar(WebCore::Scrollbar*);
void willRemoveHorizontalScrollbar(WebCore::Scrollbar*);
+ void didAddVerticalScrollbar(WebCore::Scrollbar*);
+ void willRemoveVerticalScrollbar(WebCore::Scrollbar*);
PassRefPtr<WebCore::Scrollbar> createScrollbar(WebCore::ScrollbarOrientation);
void destroyScrollbar(WebCore::ScrollbarOrientation);
void pdfDocumentDidLoad();
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes