[Webkit-unassigned] [Bug 259015] New: Scrolling with keyboard arrow misfunction after speech synthesisation on macOS Sonoma.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Jul 8 11:34:57 PDT 2023


https://bugs.webkit.org/show_bug.cgi?id=259015

            Bug ID: 259015
           Summary: Scrolling with keyboard arrow misfunction after speech
                    synthesisation on macOS Sonoma.
           Product: WebKit
           Version: Safari 17
          Hardware: Mac (Apple Silicon)
                OS: Other
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Accessibility
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: bunnnywong at gmail.com
                CC: andresg_22 at apple.com,
                    webkit-bug-importer at group.apple.com

Scrolling with keyboard arrow would misfunction after speech synthesisation on macOS Sonoma.

Steps to reproduce (macOS 14.0 Beta (23A5286g)):

* Open Safari, select arbitrary text, right click and select ’Speech’ -> ’Start Speaking'
* The page would not be able scroll properly for keyboard arrow events

This is an AppKit issue. It happens due to SPI `-[NSApp speakString:]` misleadingly sends `NSApplicationDidChangeAccessibilityEnhancedUserInterfaceNotification` notification, which causes WebKit to enable enhanced user interface accessibility.

Sample code to reproduce this problem:

```
@interface NSApplication ()

- (void)speakString:(NSString *)string;

@end

@implementation ViewController

- (void)viewDidLoad {
  [super viewDidLoad];

  // This notification should not be sent.
  [[NSNotificationCenter defaultCenter] addObserverForName:@"NSApplicationDidChangeAccessibilityEnhancedUserInterfaceNotification"
                                                    object:nil
                                                     queue:[NSOperationQueue currentQueue]
                                                usingBlock:^(NSNotification *note) {
    NSLog(@"%@", note);
  }];

  [NSApp speakString:@“hello world"];
}

@end
```

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230708/24c18167/attachment.htm>


More information about the webkit-unassigned mailing list