Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change dmc urls to lmc, remove locale #596

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Accessibility/CaretBrowsing/explainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ We welcome your feedback and opinion on ways we can help improve Chromium caret

* Caret Navigation: https://en.wikipedia.org/wiki/Caret_navigation
* Caret Browsing extension in Chrome Web Store: https://chrome.google.com/webstore/detail/caret-browsing/fklpgenihifpccgiifchnihilipmbffg
* Keyboard shortcuts in Windows (Copy, paste, and other general keyboard shortcuts): https://support.microsoft.com/en-us/help/12445/windows-keyboard-shortcuts
* Keyboard shortcuts in Windows (Copy, paste, and other general keyboard shortcuts): https://support.microsoft.com/help/12445/windows-keyboard-shortcuts

---
[Related issues](https://github.com/MicrosoftEdge/MSEdgeExplainers/labels/Caret%20Browsing) | [Open a new issue](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?title=%5BCaret%20Browsing%5D)
2 changes: 1 addition & 1 deletion Accessibility/ConfirmationOfAction/explainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ that should be announced beyond the immediate effect of the primary action.

## Proposed Solution

(This version inspired by [UIA Notification API](https://docs.microsoft.com/en-us/windows/win32/api/uiautomationcoreapi/nf-uiautomationcoreapi-uiaraisenotificationevent))
(This version inspired by [UIA Notification API](https://learn.microsoft.com/windows/win32/api/uiautomationcoreapi/nf-uiautomationcoreapi-uiaraisenotificationevent))

For use cases that don't have an express UI tie-in, it makes sense to provide a solution
not expressly tied to HTML element, but for which other document-centric information can
Expand Down
8 changes: 4 additions & 4 deletions Accessibility/HighContrast/explainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ This document is intended as a starting point for engaging the community and sta

## Overview

High contrast is a [Windows accessibility feature](https://docs.microsoft.com/en-us/windows/desktop/w8cookbook/high-contrast-mode) intended to increase the readability of text through color contrast. Individuals with low vision may find it more comfortable to read content when there is a strong contrast between foreground and background colors. High contrast is a useful feature in increasing the readability of screen-based text for such users.
High contrast is a [Windows accessibility feature](https://learn.microsoft.com/windows/desktop/w8cookbook/high-contrast-mode) intended to increase the readability of text through color contrast. Individuals with low vision may find it more comfortable to read content when there is a strong contrast between foreground and background colors. High contrast is a useful feature in increasing the readability of screen-based text for such users.

The Windows platform provides built-in [high contrast color themes](https://docs.microsoft.com/en-us/windows/uwp/design/accessibility/high-contrast-themes) such as the more popular "black-on-white" and "white-on-black" themes. Besides the default themes, users can customize the colors and create their own themes. Applications can make use of these color themes and propagate them into their content model. In the case of the web browser, high contrast colors are propagated to website pages as a set of user agent styles, thus increasing readability of the text and allowing a coherent experience across the Windows OS and various applications.
The Windows platform provides built-in [high contrast color themes](https://learn.microsoft.com/windows/uwp/design/accessibility/high-contrast-themes) such as the more popular "black-on-white" and "white-on-black" themes. Besides the default themes, users can customize the colors and create their own themes. Applications can make use of these color themes and propagate them into their content model. In the case of the web browser, high contrast colors are propagated to website pages as a set of user agent styles, thus increasing readability of the text and allowing a coherent experience across the Windows OS and various applications.

Microsoft Edge and IE are currently the only browsers to support the high contrast feature using Windows high contrast themes. Many of the features described in this document were first shipped in 2012 with IE 10 and continue to use the ```-ms-``` vendor prefix for names and values.

Expand All @@ -36,7 +36,7 @@ When high contrast is currently enabled in Chrome, a popup is displayed promptin

## CSS Media Query

In order to allow developer defined high contrast rules for webpages, a [high contrast media query type](https://msdn.microsoft.com/en-us/library/hh771830(v=vs.85).aspx) would be added called ```high-contrast```. This CSS media query type is currently supported by Microsoft Edge and IE. If a ```high-contrast``` media query evaluates to true, any styles defined within that media query *will* be used when in high contrast and will *not* be overridden by the high contrast feature.
In order to allow developer defined high contrast rules for webpages, a [high contrast media query type](https://msdn.microsoft.com/library/hh771830(v=vs.85).aspx) would be added called ```high-contrast```. This CSS media query type is currently supported by Microsoft Edge and IE. If a ```high-contrast``` media query evaluates to true, any styles defined within that media query *will* be used when in high contrast and will *not* be overridden by the high contrast feature.

#### Possible values

Expand Down Expand Up @@ -86,7 +86,7 @@ To provide readability between foreground and background colors, high contrast c
* ```-webkit-tap-highlight-color```
* ```background-image``` (***only*** in the case of text/date/file input control types, as well as for ```select```, ```option```, and ```optgroup``` HTML tags)
_____
To allow for further developer customization of the high contrast feature, a [CSS property](https://msdn.microsoft.com/en-us/library/hh771863(v=vs.85).aspx), ```high-contrast-adjust```, would be added. This CSS property type is currently supported by Microsoft Edge and IE. This property can be used to override the effects of high contrast.
To allow for further developer customization of the high contrast feature, a [CSS property](https://msdn.microsoft.com/library/hh771863(v=vs.85).aspx), ```high-contrast-adjust```, would be added. This CSS property type is currently supported by Microsoft Edge and IE. This property can be used to override the effects of high contrast.

#### Possible values

Expand Down
14 changes: 7 additions & 7 deletions Accessibility/UIA/explainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Authors: [Rossen Atanassov](https://github.com/atanassov), [Melanie Richards](ht

## Introduction

[Microsoft UI Automation (UIA)](https://docs.microsoft.com/en-us/dotnet/framework/ui-automation/ui-automation-overview) provides programmatic access to most user interface (UI) elements of desktop applications, as well as web content and web applications. This API enables assistive technology (AT) products, such as screen readers, to provide information about applications, their UI and contents to end users. With this information, ATs can allow the user to manipulate applications by means other than standard input.
[Microsoft UI Automation (UIA)](https://learn.microsoft.com/dotnet/framework/ui-automation/ui-automation-overview) provides programmatic access to most user interface (UI) elements of desktop applications, as well as web content and web applications. This API enables assistive technology (AT) products, such as screen readers, to provide information about applications, their UI and contents to end users. With this information, ATs can allow the user to manipulate applications by means other than standard input.

At a high level, UIA exposes two sets of APIs, *provider APIs*, those implemented by a web browser for example, and *client APIs*, those implemented by an AT. This document’s focus is on implementing the *provider* APIs inside Chromium. These APIs are not exposed to web developers, and it is not expected that web developers should change the way they build sites and web apps—these APIs are meant to map web content into a format useful to C/C++ programmers.

Expand All @@ -30,14 +30,14 @@ At the heart of all this are users of assistive tech, who are empowered to brows

In order to complete UI Automation support in Chromium, this project will implement the provider APIs for:

* **The [accessibility tree](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-eventsoverview) and [control types](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-controltypesoverview):** This work will leverage Chromium’s platform-agnostic accessibility tree abstraction layer, and map its elements to the appropriate UIA control types. For reference, in case of web applications, a control could be represented by one or more HTML elements, such as a `<a>` or `<select>` and its `<option>` elements.
* **[Properties](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-propertiesoverview):** mappings from ARIA and host language semantics into control properties. These can include what state the control is in, the control’s relationship to other controls, its styles, value, and placement, and many other useful properties (such as alternative text).
* **[Control patterns](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-controlpatternsoverview):** methods allowing interaction with controls, often with interaction models specific to their types. Many control patterns implement UI idioms such as "this element is toggle-able, here's a method to toggle it" or "this element accepts a range of values, here are the min/max/current values and a method for changing the current value." Some control patterns expose additional structural information, such as "this tree of nodes represents a table with rows and columns." TextPattern, as previously mentioned, is a robust control pattern which marks up text content with both structure and style information; it also enables linear navigation over text content.
* **[Events](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-eventsoverview):** notifications for structural and property changes of UI controls. Similarly to other accessibility APIs, UIA events inform ATs of changes which can be surfaced to end users.
* **The [accessibility tree](https://learn.microsoft.com/windows/desktop/winauto/uiauto-eventsoverview) and [control types](https://learn.microsoft.com/windows/desktop/winauto/uiauto-controltypesoverview):** This work will leverage Chromium’s platform-agnostic accessibility tree abstraction layer, and map its elements to the appropriate UIA control types. For reference, in case of web applications, a control could be represented by one or more HTML elements, such as a `<a>` or `<select>` and its `<option>` elements.
* **[Properties](https://learn.microsoft.com/windows/desktop/winauto/uiauto-propertiesoverview):** mappings from ARIA and host language semantics into control properties. These can include what state the control is in, the control’s relationship to other controls, its styles, value, and placement, and many other useful properties (such as alternative text).
* **[Control patterns](https://learn.microsoft.com/windows/desktop/winauto/uiauto-controlpatternsoverview):** methods allowing interaction with controls, often with interaction models specific to their types. Many control patterns implement UI idioms such as "this element is toggle-able, here's a method to toggle it" or "this element accepts a range of values, here are the min/max/current values and a method for changing the current value." Some control patterns expose additional structural information, such as "this tree of nodes represents a table with rows and columns." TextPattern, as previously mentioned, is a robust control pattern which marks up text content with both structure and style information; it also enables linear navigation over text content.
* **[Events](https://learn.microsoft.com/windows/desktop/winauto/uiauto-eventsoverview):** notifications for structural and property changes of UI controls. Similarly to other accessibility APIs, UIA events inform ATs of changes which can be surfaced to end users.

## Example of control interfaces

For an example of how these APIs work in conjunction to provide complete interactivity with a control, refer to documentation for the [Button control type](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-supportbuttoncontroltype) (which `<button>` and elements with `role="button"` map into).
For an example of how these APIs work in conjunction to provide complete interactivity with a control, refer to documentation for the [Button control type](https://learn.microsoft.com/windows/desktop/winauto/uiauto-supportbuttoncontroltype) (which `<button>` and elements with `role="button"` map into).

## Current workarounds

Expand All @@ -47,7 +47,7 @@ Implementing UI Automation support on the Windows platform is not intended to re

## Additional information

* For detailed information on UI Automation provider APIs, please refer to [UI Automation Providers Overview](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-providersoverview).
* For detailed information on UI Automation provider APIs, please refer to [UI Automation Providers Overview](https://learn.microsoft.com/windows/desktop/winauto/uiauto-providersoverview).
* Each accessibility API has its own nomenclature. For a quick sense of the differences between API mappings, refer to the tables in mapping specifications such as [Core-AAM](https://w3c.github.io/core-aam/), [HTML-AAM](https://w3c.github.io/html-aam/), [Graphics-AAM](https://w3c.github.io/graphics-aam/), and [SVG-AAM](https://w3c.github.io/svg-aam/).

---
Expand Down
4 changes: 2 additions & 2 deletions Accessibility/UIA/i2i.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Rossen.Atanassov@microsoft.com, Melanie.Richards@microsoft.com

## Design doc/Spec

[UI Automation Providers Overview](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-providersoverview)
[UI Automation Providers Overview](https://learn.microsoft.com/windows/desktop/winauto/uiauto-providersoverview)

A TAG review is not requested, as these interfaces are specific to the Windows platform and not intended to be introduced as web standards. It is not expected that web developers will need to make changes to their content as a result of this work, as UIAutomation support reflects lower-level implementation details, and will not be replacing or removing accessibility APIs already supported in Chromium.

Expand Down Expand Up @@ -57,7 +57,7 @@ A UIA implementation has no bearing on browser support for any other assistive t

UIA doesn’t pose any specific performance concerns that aren’t applicable to any other assistive API, such as IA2.

In order to extend UIA support from basic to full coverage, this work will continue to leverage Chromium’s platform-agnostic accessibility tree abstraction layer, and will map tree elements to the appropriate UIA control types. Support of UIA interfaces will be consistent with other UIA providers, as outlined in [UI Automation Providers Overview](https://docs.microsoft.com/en-us/windows/desktop/winauto/uiauto-providersoverview). For an overview of how web content semantics will map to UIA, refer to the following mapping specifications: [Core-AAM](https://w3c.github.io/core-aam/), [HTML-AAM](https://w3c.github.io/html-aam/), [Graphics-AAM](https://w3c.github.io/graphics-aam/), and [SVG-AAM](https://w3c.github.io/svg-aam/).
In order to extend UIA support from basic to full coverage, this work will continue to leverage Chromium’s platform-agnostic accessibility tree abstraction layer, and will map tree elements to the appropriate UIA control types. Support of UIA interfaces will be consistent with other UIA providers, as outlined in [UI Automation Providers Overview](https://learn.microsoft.com/windows/desktop/winauto/uiauto-providersoverview). For an overview of how web content semantics will map to UIA, refer to the following mapping specifications: [Core-AAM](https://w3c.github.io/core-aam/), [HTML-AAM](https://w3c.github.io/html-aam/), [Graphics-AAM](https://w3c.github.io/graphics-aam/), and [SVG-AAM](https://w3c.github.io/svg-aam/).

### Activation

Expand Down
2 changes: 1 addition & 1 deletion AudioOffload/explainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
**Author:** William Carr (drawn on work from Isuru Pathirana)

# Summary Description
Hardware Accelerated Audio Processing allows audio processing to be performed on dedicated audio processors. This process is commonly referred to as audio offload (the processing is offloaded from the computer's main CPU to the dedicated audio processor(s)). Because audio processing is a computationally expensive process, the use of specialized hardware can improve power efficiency, resulting in longer battery life. To read more about the general concept of audio offload on Windows, please see: https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/hardware-offloaded-audio-processing
Hardware Accelerated Audio Processing allows audio processing to be performed on dedicated audio processors. This process is commonly referred to as audio offload (the processing is offloaded from the computer's main CPU to the dedicated audio processor(s)). Because audio processing is a computationally expensive process, the use of specialized hardware can improve power efficiency, resulting in longer battery life. To read more about the general concept of audio offload on Windows, please see: https://learn.microsoft.com/windows-hardware/drivers/audio/hardware-offloaded-audio-processing

This proposal lays out a path to enable the use of audio offload for the clear audio pipeline in Chromium on Windows when playback is using an audio device that supports hardware audio acceleration.

Expand Down
2 changes: 1 addition & 1 deletion AudioStreamCategory/explainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ The ```contentHint``` we are proposing is ```speechRecognition```.

We believe there is a general need to differentiate between streams intended for human consumption and streams meant to be used for transcription by a machine because there are many differences in the optimizations that are applied for each scenario. Specifically, requirements for communications between humans can be found in the [ETSI TS 126 131 specification](https://www.etsi.org/deliver/etsi_ts/126100_126199/126131/12.03.00_60/ts_126131v120300p.pdf), and include optimizations in noise suppression like the addition of pink noise in order to increase user satisfaction, which is in direct opposition to the needs of a speech recognition system. There is also a draft of testing methods for speech recognition systems that outlines some of the different requirements for those systems [STQ63-260v0210](https://drive.google.com/file/d/1y_i7NkXbCuRWznYRl9dacy3xDdH2e7-m/view?usp=sharing).

The proposed solution below was inspired by the categories that Windows offers for audio streams. These categories allow you to specify what kind of audio stream you want (ex: “speech” for when someone is dictating into a mic), which gives the operating system a chance to optimize the stream for that type of input. After some research, we found that similar categories exist across [Android](https://developer.android.com/reference/android/media/AudioAttributes.html), [iOS](https://developer.apple.com/documentation/avfoundation/avaudiosessionmode?language=objc), and, of course, [Windows](https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/audio-signal-processing-modes).
The proposed solution below was inspired by the categories that Windows offers for audio streams. These categories allow you to specify what kind of audio stream you want (ex: “speech” for when someone is dictating into a mic), which gives the operating system a chance to optimize the stream for that type of input. After some research, we found that similar categories exist across [Android](https://developer.android.com/reference/android/media/AudioAttributes.html), [iOS](https://developer.apple.com/documentation/avfoundation/avaudiosessionmode?language=objc), and, of course, [Windows](https://learn.microsoft.com/windows-hardware/drivers/audio/audio-signal-processing-modes).

## Proposed Solution

Expand Down
Loading