| Differences between
and this patch
- a/LayoutTests/ChangeLog +10 lines
Lines 1-3 a/LayoutTests/ChangeLog_sec1
1
2011-09-15  Alice Boxhall  <aboxhall@chromium.org>
2
3
        Report AXValueChanged when value changes in element with role=textbox.
4
        https://bugs.webkit.org/show_bug.cgi?id=68201
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        * platform/mac/accessibility/textbox-role-reports-notifications-expected.txt: Added.
9
        * platform/mac/accessibility/textbox-role-reports-notifications.html: Added.
10
1
2011-09-14  Cary Clark  <caryclark@google.com>
11
2011-09-14  Cary Clark  <caryclark@google.com>
2
12
3
        Unreviewed; new baselines (Skia on Mac)
13
        Unreviewed; new baselines (Skia on Mac)
- a/LayoutTests/platform/mac/accessibility/textbox-role-reports-notifications-expected.txt +6 lines
Line 0 a/LayoutTests/platform/mac/accessibility/textbox-role-reports-notifications-expected.txt_sec1
1
ALERT: Successfully received AXValueChanged.
2
ALERT: Successfully received AXValueChanged.
3
ALERT: Successfully received AXValueChanged.
4
This tests that the AXValueChanged notification is correctly reported for non-native text boxes when content is changed.
5
changed innerText
6
- a/LayoutTests/platform/mac/accessibility/textbox-role-reports-notifications.html +47 lines
Line 0 a/LayoutTests/platform/mac/accessibility/textbox-role-reports-notifications.html_sec1
1
<!DOCTYPE HTML PUBLIC>
2
<html>
3
<head>
4
<link rel="stylesheet" href="../fast/js/resources/js-test-style.css">
5
<script>
6
var successfullyParsed = false;
7
</script>
8
<script src="../fast/js/resources/js-test-pre.js"></script>
9
</head>
10
<body>
11
This tests that the AXValueChanged notification is correctly reported for non-native text boxes when content is changed.<br>
12
<div role="textbox" id="ariaTextBox" aria-multiline="false" tabindex="0">Some text in a textbox.</div>
13
<div id="console"></div>
14
<script>
15
    if (window.layoutTestController && window.accessibilityController) {
16
        window.layoutTestController.waitUntilDone();
17
18
        accessibilityController.logAccessibilityEvents();
19
        window.layoutTestController.dumpAsText();
20
21
        var ariaTextBox = document.getElementById("ariaTextBox");
22
        ariaTextBox.focus();
23
        var textboxAxElement = accessibilityController.focusedElement;
24
        textboxAxElement.addNotificationListener(logNotification);
25
        pendingNotifications = 3;
26
        ariaTextBox.firstChild.deleteData(0, 5);
27
        ariaTextBox.textContent = "changed textContent";
28
        ariaTextBox.innerText = "changed innerText";
29
    }
30
31
    function logNotification(notification) {
32
        if (notification == "AXValueChanged") {
33
            alert("Successfully received AXValueChanged.");
34
            pendingNotifications--;
35
            if (pendingNotifications == 0) {
36
                textboxAxElement.removeNotificationListener();
37
                window.layoutTestController.notifyDone();
38
            }
39
        }
40
    }
41
42
    successfullyParsed = true;
43
</script>
44
45
<script src="../fast/js/resources/js-test-post.js"></script>
46
</body>
47
</html>
- a/Source/WebCore/ChangeLog +14 lines
Lines 1-3 a/Source/WebCore/ChangeLog_sec1
1
2011-09-15  Alice Boxhall  <aboxhall@chromium.org>
2
3
        Report AXValueChanged when value changes in element with role=textbox.
4
        https://bugs.webkit.org/show_bug.cgi?id=68201
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        Test: platform/mac/accessibility/textbox-role-reports-notifications.html
9
10
        * WebCore.xcodeproj/project.pbxproj:
11
        * accessibility/AccessibilityRenderObject.cpp:
12
        (WebCore::AccessibilityRenderObject::contentChanged):
13
        (WebCore::AccessibilityRenderObject::childrenChanged):
14
1
2011-09-14  Eric Carlson  <eric.carlson@apple.com>
15
2011-09-14  Eric Carlson  <eric.carlson@apple.com>
2
16
3
        MediaPlayerPrivateAVFoundationObjC's "periodic time observer" is unnecessary
17
        MediaPlayerPrivateAVFoundationObjC's "periodic time observer" is unnecessary
- a/Source/WebCore/WebCore.xcodeproj/project.pbxproj -1 / +2 lines
Lines 23568-23574 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec1
23568
		0867D690FE84028FC02AAC07 /* Project object */ = {
23568
		0867D690FE84028FC02AAC07 /* Project object */ = {
23569
			isa = PBXProject;
23569
			isa = PBXProject;
23570
			buildConfigurationList = 149C284308902B11008A9EFC /* Build configuration list for PBXProject "WebCore" */;
23570
			buildConfigurationList = 149C284308902B11008A9EFC /* Build configuration list for PBXProject "WebCore" */;
23571
			compatibilityVersion = "Xcode 2.4";
23571
			compatibilityVersion = "Xcode 3.2";
23572
			developmentRegion = English;
23572
			developmentRegion = English;
23573
			hasScannedForEncodings = 1;
23573
			hasScannedForEncodings = 1;
23574
			knownRegions = (
23574
			knownRegions = (
Lines 26373-26378 a/Source/WebCore/WebCore.xcodeproj/project.pbxproj_sec2
26373
			isa = XCBuildConfiguration;
26373
			isa = XCBuildConfiguration;
26374
			baseConfigurationReference = 1CDD45E50BA9C84600F90147 /* WebCore.xcconfig */;
26374
			baseConfigurationReference = 1CDD45E50BA9C84600F90147 /* WebCore.xcconfig */;
26375
			buildSettings = {
26375
			buildSettings = {
26376
				COPY_PHASE_STRIP = YES;
26376
				FRAMEWORK_SEARCH_PATHS = (
26377
				FRAMEWORK_SEARCH_PATHS = (
26377
					"$(inherited)",
26378
					"$(inherited)",
26378
					"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
26379
					"$(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1)",
- a/Source/WebCore/accessibility/AccessibilityRenderObject.cpp +5 lines
Lines 3366-3371 void AccessibilityRenderObject::contentChanged() a/Source/WebCore/accessibility/AccessibilityRenderObject.cpp_sec1
3366
        if (parent->supportsARIALiveRegion()) {
3366
        if (parent->supportsARIALiveRegion()) {
3367
            axObjectCache()->postNotification(renderParent, AXObjectCache::AXLiveRegionChanged, true);
3367
            axObjectCache()->postNotification(renderParent, AXObjectCache::AXLiveRegionChanged, true);
3368
            break;
3368
            break;
3369
        } else if (parent->isTextControl()) {
3370
            axObjectCache()->postNotification(renderParent, AXObjectCache::AXValueChanged, true);
3371
            break;
3369
        }
3372
        }
3370
    }
3373
    }
3371
}
3374
}
Lines 3403-3408 void AccessibilityRenderObject::childrenChanged() a/Source/WebCore/accessibility/AccessibilityRenderObject.cpp_sec2
3403
            // If this element supports ARIA live regions, then notify the AT of changes.
3406
            // If this element supports ARIA live regions, then notify the AT of changes.
3404
            if (axParent->supportsARIALiveRegion())
3407
            if (axParent->supportsARIALiveRegion())
3405
                axObjectCache()->postNotification(axParent->renderer(), AXObjectCache::AXLiveRegionChanged, true);
3408
                axObjectCache()->postNotification(axParent->renderer(), AXObjectCache::AXLiveRegionChanged, true);
3409
            else if (axParent->isTextControl())
3410
                axObjectCache()->postNotification(axParent->renderer(), AXObjectCache::AXValueChanged, true);
3406
        }
3411
        }
3407
    }
3412
    }
3408
}
3413
}

Return to Bug 68201