Title: [211022] trunk
- Revision
- 211022
- Author
- [email protected]
- Date
- 2017-01-21 18:29:15 -0800 (Sat, 21 Jan 2017)
Log Message
AccessibilityRenderObject::textChanged() bypasses AXLiveRegionChanged notification coalescing
https://bugs.webkit.org/show_bug.cgi?id=167286
<rdar://problem/30133211>
Reviewed by Ryosuke Niwa.
Source/WebCore:
AccessibilityRenderObject::textChanged() bypasses AXLiveRegionChanged notification
coalescing. This patch fixes the issue.
No new tests, updated existing test.
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::textChanged):
LayoutTests:
Update test to use a longer timer delay. When using this longer delay, we were getting 4
AXLiveRegionChanged notifications instead of the expected 2 because
AccessibilityRenderObject::textChanged() was bypassing AXLiveRegionChanged notification
coalescing.
* accessibility/mac/aria-multiple-liveregions-notification-expected.txt:
* accessibility/mac/aria-multiple-liveregions-notification.html:
Modified Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (211021 => 211022)
--- trunk/LayoutTests/ChangeLog 2017-01-22 02:16:33 UTC (rev 211021)
+++ trunk/LayoutTests/ChangeLog 2017-01-22 02:29:15 UTC (rev 211022)
@@ -1,3 +1,19 @@
+2017-01-21 Chris Dumez <[email protected]>
+
+ AccessibilityRenderObject::textChanged() bypasses AXLiveRegionChanged notification coalescing
+ https://bugs.webkit.org/show_bug.cgi?id=167286
+ <rdar://problem/30133211>
+
+ Reviewed by Ryosuke Niwa.
+
+ Update test to use a longer timer delay. When using this longer delay, we were getting 4
+ AXLiveRegionChanged notifications instead of the expected 2 because
+ AccessibilityRenderObject::textChanged() was bypassing AXLiveRegionChanged notification
+ coalescing.
+
+ * accessibility/mac/aria-multiple-liveregions-notification-expected.txt:
+ * accessibility/mac/aria-multiple-liveregions-notification.html:
+
2017-01-21 Antoine Quint <[email protected]>
REGRESSION (r210959): LayoutTest inspector/css/pseudo-element-matches.html timing out
Modified: trunk/LayoutTests/accessibility/mac/aria-multiple-liveregions-notification-expected.txt (211021 => 211022)
--- trunk/LayoutTests/accessibility/mac/aria-multiple-liveregions-notification-expected.txt 2017-01-22 02:16:33 UTC (rev 211021)
+++ trunk/LayoutTests/accessibility/mac/aria-multiple-liveregions-notification-expected.txt 2017-01-22 02:29:15 UTC (rev 211022)
@@ -8,7 +8,7 @@
PASS addedNotification1 is true
PASS addedNotification2 is true
-PASS liveRegionChangeCount == 2 is true
+PASS liveRegionChangeCount is 2
PASS successfullyParsed is true
TEST COMPLETE
Modified: trunk/LayoutTests/accessibility/mac/aria-multiple-liveregions-notification.html (211021 => 211022)
--- trunk/LayoutTests/accessibility/mac/aria-multiple-liveregions-notification.html 2017-01-22 02:16:33 UTC (rev 211021)
+++ trunk/LayoutTests/accessibility/mac/aria-multiple-liveregions-notification.html 2017-01-22 02:29:15 UTC (rev 211022)
@@ -34,11 +34,11 @@
liveRegion1 = accessibilityController.accessibleElementById("liveregion1");
var addedNotification1 = liveRegion1.addNotificationListener(ariaCallback);
- shouldBe("addedNotification1", "true");
+ shouldBeTrue("addedNotification1");
liveRegion2 = accessibilityController.accessibleElementById("liveregion2");
var addedNotification2 = liveRegion2.addNotificationListener(ariaCallback);
- shouldBe("addedNotification2", "true");
+ shouldBeTrue("addedNotification2");
// perform operations on both live regions.
textChangeOperation();
@@ -46,8 +46,8 @@
alternativeChangeOperation();
removeElementOperation();
- // add a short delay to check after all the operations if we have exactly two notificaitons
- setTimeout("finishTest()", 10);
+ // add a short delay to check after all the operations if we have exactly two notifications
+ setTimeout("finishTest()", 50);
}
function textChangeOperation() {
@@ -74,7 +74,7 @@
// We should get a total of two live region changes.
liveRegion1.removeNotificationListener();
liveRegion2.removeNotificationListener();
- shouldBeTrue("liveRegionChangeCount == 2");
+ shouldBe("liveRegionChangeCount", "2");
finishJSTest();
}
</script>
Modified: trunk/Source/WebCore/ChangeLog (211021 => 211022)
--- trunk/Source/WebCore/ChangeLog 2017-01-22 02:16:33 UTC (rev 211021)
+++ trunk/Source/WebCore/ChangeLog 2017-01-22 02:29:15 UTC (rev 211022)
@@ -1,3 +1,19 @@
+2017-01-21 Chris Dumez <[email protected]>
+
+ AccessibilityRenderObject::textChanged() bypasses AXLiveRegionChanged notification coalescing
+ https://bugs.webkit.org/show_bug.cgi?id=167286
+ <rdar://problem/30133211>
+
+ Reviewed by Ryosuke Niwa.
+
+ AccessibilityRenderObject::textChanged() bypasses AXLiveRegionChanged notification
+ coalescing. This patch fixes the issue.
+
+ No new tests, updated existing test.
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::textChanged):
+
2017-01-21 Carlos Garcia Campos <[email protected]>
Unreviewed, rolling out r211012.
Modified: trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp (211021 => 211022)
--- trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp 2017-01-22 02:16:33 UTC (rev 211021)
+++ trunk/Source/WebCore/accessibility/AccessibilityRenderObject.cpp 2017-01-22 02:29:15 UTC (rev 211022)
@@ -2943,7 +2943,7 @@
continue;
if (parent->supportsARIALiveRegion())
- cache->postNotification(renderParent, AXObjectCache::AXLiveRegionChanged);
+ cache->postLiveRegionChangeNotification(parent);
if (parent->isNonNativeTextControl())
cache->postNotification(renderParent, AXObjectCache::AXValueChanged);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes