Title: [149412] trunk/Source/WebKit/blackberry
- Revision
- 149412
- Author
- [email protected]
- Date
- 2013-04-30 16:40:25 -0700 (Tue, 30 Apr 2013)
Log Message
[BlackBerry] Cannot touch scroll readonly text input.
https://bugs.webkit.org/show_bug.cgi?id=115378
Patch by Genevieve Mak <[email protected]> on 2013-04-30
Reviewed by Rob Buis.
PR #332902
Reviewed Internally by Mike Fenton.
Node::rendererIsEditable() returns false if the input element has the readonly tag set.
Check the node type instead.
* WebKitSupport/DOMSupport.cpp:
(BlackBerry::WebKit::DOMSupport::isShadowHostTextInputElement):
(DOMSupport):
* WebKitSupport/DOMSupport.h:
* WebKitSupport/InRegionScrollableArea.cpp:
(BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
Modified Paths
Diff
Modified: trunk/Source/WebKit/blackberry/ChangeLog (149411 => 149412)
--- trunk/Source/WebKit/blackberry/ChangeLog 2013-04-30 23:35:04 UTC (rev 149411)
+++ trunk/Source/WebKit/blackberry/ChangeLog 2013-04-30 23:40:25 UTC (rev 149412)
@@ -1,3 +1,22 @@
+2013-04-30 Genevieve Mak <[email protected]>
+
+ [BlackBerry] Cannot touch scroll readonly text input.
+ https://bugs.webkit.org/show_bug.cgi?id=115378
+
+ Reviewed by Rob Buis.
+
+ PR #332902
+ Reviewed Internally by Mike Fenton.
+ Node::rendererIsEditable() returns false if the input element has the readonly tag set.
+ Check the node type instead.
+
+ * WebKitSupport/DOMSupport.cpp:
+ (BlackBerry::WebKit::DOMSupport::isShadowHostTextInputElement):
+ (DOMSupport):
+ * WebKitSupport/DOMSupport.h:
+ * WebKitSupport/InRegionScrollableArea.cpp:
+ (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
+
2013-04-29 Jakob Petsovits <[email protected]>
[BlackBerry] Replace disappearing fillBuffer() API with graphics context drawing
Modified: trunk/Source/WebKit/blackberry/WebKitSupport/DOMSupport.cpp (149411 => 149412)
--- trunk/Source/WebKit/blackberry/WebKitSupport/DOMSupport.cpp 2013-04-30 23:35:04 UTC (rev 149411)
+++ trunk/Source/WebKit/blackberry/WebKitSupport/DOMSupport.cpp 2013-04-30 23:40:25 UTC (rev 149412)
@@ -91,6 +91,15 @@
}
}
+bool isShadowHostTextInputElement(Node* node)
+{
+ if (!node)
+ return false;
+
+ Element* element = node->shadowHost();
+ return element && DOMSupport::isTextInputElement(element);
+}
+
bool isTextInputElement(Element* element)
{
return element->isTextFormControl()
Modified: trunk/Source/WebKit/blackberry/WebKitSupport/DOMSupport.h (149411 => 149412)
--- trunk/Source/WebKit/blackberry/WebKitSupport/DOMSupport.h 2013-04-30 23:35:04 UTC (rev 149411)
+++ trunk/Source/WebKit/blackberry/WebKitSupport/DOMSupport.h 2013-04-30 23:40:25 UTC (rev 149412)
@@ -53,6 +53,7 @@
bool isElementTypePlugin(const WebCore::Element*);
bool isTextInputElement(WebCore::Element*);
+bool isShadowHostTextInputElement(WebCore::Node*);
bool isTextBasedContentEditableElement(WebCore::Element*);
bool isPasswordElement(const WebCore::Element*);
Modified: trunk/Source/WebKit/blackberry/WebKitSupport/InRegionScrollableArea.cpp (149411 => 149412)
--- trunk/Source/WebKit/blackberry/WebKitSupport/InRegionScrollableArea.cpp 2013-04-30 23:35:04 UTC (rev 149411)
+++ trunk/Source/WebKit/blackberry/WebKitSupport/InRegionScrollableArea.cpp 2013-04-30 23:40:25 UTC (rev 149412)
@@ -19,6 +19,7 @@
#include "config.h"
#include "InRegionScrollableArea.h"
+#include "DOMSupport.h"
#include "Document.h"
#include "Frame.h"
#include "LayerWebKitThread.h"
@@ -118,7 +119,7 @@
m_scrollsVertically = box->scrollHeight() != box->clientHeight();
// Check the overflow if its not an input field because overflow can be set to hidden etc. by the content.
- if (!box->node() || !box->node()->rendererIsEditable()) {
+ if (!DOMSupport::isShadowHostTextInputElement(box->node())) {
m_scrollsHorizontally = m_scrollsHorizontally && box->scrollsOverflowX();
m_scrollsVertically = m_scrollsVertically && box->scrollsOverflowY();
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes