Bug 261565 - AX: text-transform: full-size-kana must not affect AT/speech output
Summary: AX: text-transform: full-size-kana must not affect AT/speech output
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: Safari Technology Preview
Hardware: All All
: P2 Normal
Assignee: Joshua Hoffman
URL: https://software.hixie.ch/utilities/j...
Keywords: InRadar
Depends on:
Blocks: 245557
  Show dependency treegraph
 
Reported: 2023-09-14 10:56 PDT by fantasai
Modified: 2024-08-14 14:40 PDT (History)
3 users (show)

See Also:


Attachments
testcase (351 bytes, text/html)
2024-08-12 10:52 PDT, fantasai
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description fantasai 2023-09-14 10:56:06 PDT
Overview
  text-transform: full-size-kana must not affect speech output.

Steps to Reproduce:
  1. Load testcase:
     https://software.hixie.ch/utilities/js/live-dom-viewer/?%3C!DOCTYPE%20html%3E%0A%3Cstrong%20style%3D%22text-transform%3A%20full-size-kana%22%3Eじゅう%3C%2Fstrong%3E%20must%20read%20the%20same%20as%20じゅう%20not%20じゆう%20(but%20look%20like%20じゆう%20not%20じゅう)%20.%3Cbr%3E%0A%3Cstrong%20style%3D%22text-transform%3A%20full-size-kana%22%3E%20カップ%20%3C%2Fstrong%3E%20must%20read%20the%20same%20as%20カップ%20not%20カツプ%20(but%20look%20like%20カツプ%20not%20カップ)%20.%0A
  2. Verify that 'text-transform: full-size-kana' is supported by comparing the visual rendering.
  3. Use VoiceOver to compare the speech rendering.

Additional Information:
  https://www.w3.org/TR/css-text-3/#text-transform-property
  Note that the mapping in the Small Kana Mapping Table is not a case mapping. These are different letters (with related, but different pronunciations) that happen to look similar. See examples in spec.
Comment 1 Radar WebKit Bug Importer 2023-09-14 10:56:17 PDT
<rdar://problem/115504070>
Comment 2 James Craig 2023-09-14 11:02:51 PDT
From some discussion with Elika, this might need to be limited to ruby, or at a minimum, we’d need test cases to make sure the other values (like text-transform: uppercase) were not affected by the change. 

Note that I’m still unclear as to why text-transform would be used in a way that affects the core meaning of the text, so perhaps we should discuss or require addition information before the change.
Comment 3 fantasai 2024-05-06 19:51:22 PDT
> Note that I’m still unclear as to why text-transform would be used in a way that affects the core meaning of the text, so perhaps we should discuss or require addition information before the change.


This is explained in detail in the spec (linked above).
Comment 4 fantasai 2024-06-24 14:52:48 PDT
`full-width` should also get the same treatment (use underlying untransformed text for AT), fwiw.
Comment 5 James Craig 2024-08-09 10:23:07 PDT
I disagree about `full-width`... That's mostly likely an AT bug in automatic language detection; the characters are unambiguous, but the AT is choosing the wrong voice language. Filed <rdar://133412477> for that.

I'll also file a CSS spec issue for the "casing for accessibility" note, because it doesn't take into account the spacing context we discussed for AT like HoverText where rendered `full-width` chars would be expected.
Comment 6 fantasai 2024-08-12 10:52:26 PDT
Created attachment 472124 [details]
testcase
Comment 7 James Craig 2024-08-12 14:39:20 PDT
FYI fantasai: https://github.com/w3c/csswg-drafts/issues/10732
Comment 8 Joshua Hoffman 2024-08-13 12:35:30 PDT
Pull request: https://github.com/WebKit/WebKit/pull/32125
Comment 9 EWS 2024-08-14 14:40:54 PDT
Committed 282258@main (00c8f4758364): <https://commits.webkit.org/282258@main>

Reviewed commits have been landed. Closing PR #32125 and removing active labels.