Changeset 247418 in webkit


Ignore:
Timestamp:
Jul 13, 2019 10:28:41 AM (5 years ago)
Author:
commit-queue@webkit.org
Message:

Add accessibility support to WKDataListSuggestionsView.
https://bugs.webkit.org/show_bug.cgi?id=199772
<rdar://problem/47095851>

Patch by Andres Gonzalez <Andres Gonzalez> on 2019-07-13
Reviewed by Chris Fleizach.

Source/WebCore:

Localizable strings for accessibility announcements.

  • en.lproj/Localizable.strings:

Source/WebKit:

Added accessibility announcement notifications to show, dismiss and selection change for the datalist suggestions view.

  • UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:

(-[WKDataListSuggestionsView notifyAccessibilityClients:]):
(-[WKDataListSuggestionsView moveSelectionByDirection:]):
(-[WKDataListSuggestionsView invalidate]):
(-[WKDataListSuggestionsView showSuggestionsDropdown:]):

Location:
trunk/Source
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r247417 r247418  
     12019-07-13  Andres Gonzalez  <andresg_22@apple.com>
     2
     3        Add accessibility support to WKDataListSuggestionsView.
     4        https://bugs.webkit.org/show_bug.cgi?id=199772
     5        <rdar://problem/47095851>
     6
     7        Reviewed by Chris Fleizach.
     8
     9        Localizable strings for accessibility announcements.
     10
     11        * en.lproj/Localizable.strings:
     12
    1132019-07-13  Chris Dumez  <cdumez@apple.com>
    214
  • trunk/Source/WebCore/en.lproj/Localizable.strings

    r245979 r247418  
    776776"Subtitles" = "Subtitles";
    777777
     778/* Accessibility announcement for the data list suggestions dropdown going away. */
     779"Suggestions list hidden." = "Suggestions list hidden.";
     780
     781/* Accessibility announcement that the suggestions list became visible. The format argument is for the first option in the list. */
     782"Suggestions list visible, %@" = "Suggestions list visible, %@";
     783
    778784/* Undo action name */
    779785"Superscript (Undo action name)" = "Superscript";
  • trunk/Source/WebKit/ChangeLog

    r247416 r247418  
     12019-07-13  Andres Gonzalez  <andresg_22@apple.com>
     2
     3        Add accessibility support to WKDataListSuggestionsView.
     4        https://bugs.webkit.org/show_bug.cgi?id=199772
     5        <rdar://problem/47095851>
     6
     7        Reviewed by Chris Fleizach.
     8
     9        Added accessibility announcement notifications to show, dismiss and selection change for the datalist suggestions view.
     10        * UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:
     11        (-[WKDataListSuggestionsView notifyAccessibilityClients:]):
     12        (-[WKDataListSuggestionsView moveSelectionByDirection:]):
     13        (-[WKDataListSuggestionsView invalidate]):
     14        (-[WKDataListSuggestionsView showSuggestionsDropdown:]):
     15
    1162019-07-13  Zalan Bujtas  <zalan@apple.com>
    217
  • trunk/Source/WebKit/UIProcess/mac/WebDataListSuggestionsDropdownMac.mm

    r239427 r247418  
    3131#import "WebPageProxy.h"
    3232#import <WebCore/IntRect.h>
     33#import <WebCore/LocalizedStrings.h>
    3334#import <pal/spi/cocoa/NSColorSPI.h>
    3435
     
    353354}
    354355
     356- (void)notifyAccessibilityClients:(NSString *)info
     357{
     358    NSDictionary<NSAccessibilityNotificationUserInfoKey, id> *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:
     359        NSAccessibilityPriorityKey, @(NSAccessibilityPriorityHigh),
     360        NSAccessibilityAnnouncementKey, info, nil];
     361    NSAccessibilityPostNotificationWithUserInfo(NSApp, NSAccessibilityAnnouncementRequestedNotification, userInfo);
     362}
     363
    355364- (void)moveSelectionByDirection:(const String&)direction
    356365{
     
    369378
    370379    [_table setActiveRow:newSelection];
     380
     381    // Notify accessibility clients of new selection.
     382    NSString *currentSelectedString = [self currentSelectedString];
     383    [self notifyAccessibilityClients:currentSelectedString];
    371384}
    372385
     
    384397    [_enclosingWindow close];
    385398    _enclosingWindow = nil;
     399
     400    // Notify accessibility clients that datalist went away.
     401    NSString *info = WEB_UI_STRING("Suggestions list hidden.", "Accessibility announcement for the data list suggestions dropdown going away.");
     402    [self notifyAccessibilityClients:info];
    386403}
    387404
     
    400417    [[_view window] addChildWindow:_enclosingWindow.get() ordered:NSWindowAbove];
    401418    [[_table enclosingScrollView] flashScrollers];
     419
     420    // Notify accessibility clients of datalist becoming visible.
     421    NSString *currentSelectedString = [self currentSelectedString];
     422    NSString *info = [NSString stringWithFormat:WEB_UI_STRING("Suggestions list visible, %@", "Accessibility announcement that the suggestions list became visible. The format argument is for the first option in the list."), currentSelectedString];
     423    [self notifyAccessibilityClients:info];
    402424}
    403425
Note: See TracChangeset for help on using the changeset viewer.