Title: [97753] trunk/Source/WebCore
Revision
97753
Author
[email protected]
Date
2011-10-18 08:22:09 -0700 (Tue, 18 Oct 2011)

Log Message

AX: buttons of number type <input> controls are not fully accessible
https://bugs.webkit.org/show_bug.cgi?id=70241

Expose the spin button object to the AX hierarchy. Since there is no distinct
render object that backs this object, a mock object needs to be created for the entire
spin button and the actual increment and decrement buttons inside.

This will be a staged commit since the first time around Windows layout tests started crashing for an undeterminable reason.

Reviewed by Darin Adler.

* html/shadow/TextControlInnerElements.cpp:
(WebCore::SpinButtonElement::step):
(WebCore::SpinButtonElement::repeatingTimerFired):
* html/shadow/TextControlInnerElements.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (97752 => 97753)


--- trunk/Source/WebCore/ChangeLog	2011-10-18 15:05:52 UTC (rev 97752)
+++ trunk/Source/WebCore/ChangeLog	2011-10-18 15:22:09 UTC (rev 97753)
@@ -1,3 +1,21 @@
+2011-10-18  Chris Fleizach  <[email protected]>
+
+        AX: buttons of number type <input> controls are not fully accessible
+        https://bugs.webkit.org/show_bug.cgi?id=70241
+
+        Expose the spin button object to the AX hierarchy. Since there is no distinct
+        render object that backs this object, a mock object needs to be created for the entire
+        spin button and the actual increment and decrement buttons inside.
+
+        This will be a staged commit since the first time around Windows layout tests started crashing for an undeterminable reason.
+
+        Reviewed by Darin Adler.
+
+        * html/shadow/TextControlInnerElements.cpp:
+        (WebCore::SpinButtonElement::step):
+        (WebCore::SpinButtonElement::repeatingTimerFired):
+        * html/shadow/TextControlInnerElements.h:
+
 2011-10-18  Andreas Kling  <[email protected]>
 
         MediaList: Remove inheritance from StyleBase.

Modified: trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp (97752 => 97753)


--- trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp	2011-10-18 15:05:52 UTC (rev 97752)
+++ trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp	2011-10-18 15:22:09 UTC (rev 97753)
@@ -344,7 +344,7 @@
     m_repeatingTimer.stop();
 }
 
-void SpinButtonElement::repeatingTimerFired(Timer<SpinButtonElement>*)
+void SpinButtonElement::step(int amount)
 {
     HTMLInputElement* input = static_cast<HTMLInputElement*>(shadowAncestorNode());
     if (input->disabled() || input->isReadOnlyFormControl())
@@ -356,8 +356,13 @@
     if (m_upDownState != m_pressStartingState)
         return;
 #endif
-    input->stepUpFromRenderer(m_upDownState == Up ? 1 : -1);
+    input->stepUpFromRenderer(amount);
 }
+    
+void SpinButtonElement::repeatingTimerFired(Timer<SpinButtonElement>*)
+{
+    step(m_upDownState == Up ? 1 : -1);
+}
 
 void SpinButtonElement::setHovered(bool flag)
 {

Modified: trunk/Source/WebCore/html/shadow/TextControlInnerElements.h (97752 => 97753)


--- trunk/Source/WebCore/html/shadow/TextControlInnerElements.h	2011-10-18 15:05:52 UTC (rev 97752)
+++ trunk/Source/WebCore/html/shadow/TextControlInnerElements.h	2011-10-18 15:22:09 UTC (rev 97753)
@@ -100,6 +100,8 @@
     UpDownState upDownState() const { return m_upDownState; }
     virtual void releaseCapture();
 
+    void step(int amount);
+    
 private:
     SpinButtonElement(Document*);
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to