MicrosoftEdge / MSEdgeExplainers

Home for explainer documents originated by the Microsoft Edge team
Creative Commons Attribution 4.0 International
1.31k stars 216 forks source link
explainer microsoft-edge standards webplatform

Microsoft Edge LogoMicrosoft Edge Explainers

Welcome! This repo is home to "explainers" and related documents originating from the Microsoft Edge team.

Jump to section: Active Explainers | Alumni | DevTools | Other documents | Withdrawn

Introduction

Explainers are documents focused on describing a user/ developer/ customer problem (at a high level) and exploring potential solutions. These documents are starting points for engaging in discussion with you and other members of the community. Explainers should address their stated problems in clear and easy to understand language. Proposed solutions should be easy to follow and not too deep in technical details. When you read an explainer, we hope the stated problem is compelling and you can form an opinion for whether the proposed solution would address the problem.

Please provide feedback

We are looking for feedback! Are the stated problems relevant to you? How have they impacted your experience? Do the proposed solutions seem reasonable? Do they follow good web principles? Would they solve a problem you currently have? (We love to hear that; tell us more about your scenario!) Do you have related use-cases we hadn't considered?

We appreciate you taking the time to offer feedback; it helps to improve the explainers, validate the problem and solutions they describe, and show evidence that there is potential momentum to move an idea to the next stage. We desire to see all our explainers make the journey to become cross-browser supported web standards.

Start a new issue here, or join in the discussion on existing issues. We also welcome PRs on the explainer documents themselves. Note: we use labels to filter the issues to specific explainers.

Have a product bug?

If you're looking to file a product bug on Microsoft Edge and the bug is unique to Edge, please use the in-browser "Send Feedback" tool (Alt+Shift+i in Windows, or "..." > "Help and feedback"). If the bug reproduces in another Chromium-based browser, please file the issue upstream in the Chromium bug database. Thanks!

Active Explainers 📣

These are the proposals we are currently investigating in this repo. Use the links below to read the explainers, review the current issues, and file new issues specifically for the given explainer(s). We hope they will all "graduate" and begin their journey along the standards-track as they gain sufficient interest; each explainer has a "status of this document" section that indicates what standards venue they expect to go to next (if known). When they graduate, we move them into the Alumni section below.

Explainer Issues Feedback Group
CSS Gap Decorations GitHub issues by-label New issue... CSS
Handwriting CSS attribute GitHub issues by-label New issue... CSS
Highlight Events GitHub issues by-label New issue... Editing
Pen Events GitHub issues by-label New issue... Editing
Pen Action GitHub issues by-label New issue... Editing
Delayed Clipboard Rendering GitHub issues by-label New issue... Editing
Iframe Media Playback Pause GitHub issues by-label New Issue... HTML
Source Hashes in Stack Traces GitHub issues by-label New issue... JavaScript
Call Stacks in Crash Reports GitHub issues by-label New issue... Performance
PerformanceNavigationTiming User Agent Launch GitHub issues by-label New issue... Performance
Trust Token Issuer Redemption Statistics GitHub issues by-label New issue... Privacy
Browser Binding Context Github issues by-label New issue.... Privacy
Acquisition Info GitHub issues by-label New issue... PWA
ApplicationData.LocalFolder Access GitHub issues by-label New issue... PWA
Document Subtitle GitHub issues by-label New issue... PWA
Ratings & Reviews Prompt GitHub issues by-label New issue... PWA
URL Protocol Handler Registration for PWAs GitHub issues by-label New issue... PWA
Web Install API GitHub issues by-label New issue... PWA
Widgets GitHub issues by-label New issue... PWA
Calling Notifications GitHub issues by-label New issue... Web Applications
Web Haptics API GitHub issues by-label New Issue... Web Applications
Split Tab Navigation GitHub issues by-label New Issue... Web Applications
Set Default Audio Output Device GitHub issues by-label New issue... WebRTC
Handwriting attribute GitHub issues by-label New issue... HTML
AudioContext Interrupted State GitHub issues by-label New Issue... WebAudio
IndexedDB getAllRecords() GitHub issues by-label [New Issue...](https://github.com/MicrosoftEdge/MSEdgeExplainers/issues/new?assignees=SteveBeckerMSFT&labels=IndexedDB%20GetAllRecords&title=%5BIndexedDB+getAllRecords()%5D+%3CTITLE+HERE%3E) IndexedDB

Alumni 🎓

Awesome! These explainers have moved on to bigger and better things! We've archived the original explainers here for posterity and updated their document status section to help you find where the latest discussions are happening. Please continue to participate and follow the links below to the current standards communities. Thanks for your continued interest!

Current Explainer Current Venue Archive link and date
CSS Anchored Positioning W3C CSS Working Group 2022-10-30
PARAKEET with Noisy Ranking Web Incubator Community Group 2022-04-19
focusgroup for HTML and CSS Open UI Community Group 2022-04-09
Web App Link Handling Manifest Options Web Incubator Community Group 2021-09-28
EyeDropper API Web Incubator Community Group 2021-08-03
Virtual Keyboard Policy W3C Editing Working Group 2021-07-29
Masked LARK Web Incubator Community Group 2021-07-11
Accessible Confirmation of Action Web Incubator Community Group 2021-06-23
MACAW Web Incubator Community Group 2021-04-07
Enabling popups Open UI Community Group 2021-03-22
PARAKEET Web Incubator Community Group 2021-03-04
Virtual Keyboard API W3C Editing Working Group 2021-03-02
Canvas Formatted Text Web Incubator Community Group 2020-09-23
Window Controls Overlay for Installed Desktop Web Apps Web Incubator Community Group 2020-07-08
PWAs as URL Handlers (updated proposal here) Web Incubator Community Group 2020-05-28
EditContext API W3C Editing Working Group 2020-03-17
Bidirectional WebDriver Protocol WebDriver incubator of the W3C Browser Testing and Tools Working Group 2020-03-13
Web Ink Enhancement: Delegated Ink Trail Presentation Aided By The OS Web Incubator Community Group 2020-02-27
Viewport Segments Property (formerly Window Segments Enumeration API) Web Incubator Community Group 2020-02-26
@media queries for HDR video in Media Queries Level 4 W3C CSS Working Group 2020-01-17
Improved Client-side Video Editing Web Incubator Community Group 2020-01-08
CSS Custom Highlight API Module Level 1 W3C CSS Working Group 2019-12-10
Import Assertions ECMA TC39 Task Group 2019-11-08
'shortcuts' member of Web App Manifest W3C Web Applications Working Group 2019-11-04
'spatialRendering' for spatial audio query in Media Capabilities W3C Media Working Group 2019-10-02
ARIA Virtual Content Web Incubator Community Group 2019-09-27
CSS Modules V1 Web Incubator Community Group 2019-08-08
System Colors section of CSS Color Module Level 4 W3C CSS Working Group 2019-08-05
'hdrMetadataType' for HDR query in Media Capabilities W3C Media Working Group 2019-07-29
Native GLTF proposal W3C Immersive Web Community Group 2019-07-15
Open UI (Standardized Form Controls) Web Incubator Community Group 2019-05-15
'forced-colors' of Media Queries Level 5 W3C CSS Working Group 2019-04-19
'forced-color-adjust' of CSS Color Adjustment Module Level 1 W3C CSS Working Group 2019-04-19
HTML Modules Web Incubator Community Group 2019-02-26
CSS color-mix() function W3C CSS Working Group 2023-07-17
Audio Stream Category W3C Web Real-Time Communications Working Group 2023-07-17
Storage Access API W3C Privacy Community Group 2023-07-17
Primitives for Enlightened Experiences on Foldable Devices (CSS parts) Web Incubator Community Group 2023-07-17
Exporting IDs from shadow roots for cross-root ARIA Web Incubator Community Group 2023-09-22
writingsuggestions attribute WHATWG 2024-03-12
PointerEvent DeviceId W3C Web Incubator Community Group 2024-01-11
Gamepad Trigger Rumble W3C Web Applications Working Group 2024-04-10

DevTools 🧰

⭐Our DevTools explainers have moved to their own repo for improved tracking and update frequency!⭐

For explainers that were hosted in this repo, an achived copy remains here, and the related explainers link to their new location.

Other Documents

A collection of explainers documenting platform enhancements (not web developer-facing features), implementation designs, and other public documents related to the construction of Microsoft Edge.

Accessibility

Editing

Fonts

HTML

Media

Privacy

Testing & Trials

User Interaction

Web Performance Measurement

Withdrawn

When at first you don't succeed… don't give up! We're no longer pursuing the solutions described in these explainers at this time, but that doesn't mean the problem isn't worth solving. Have an idea for an alternate solution? We'd love to hear your feedback!

Explainer Notes Date
Set and Reset Clip This feature proved technically infeasable during implementation due to shortcoming in the underlying Canvas technology stack, namely that Skia only had a way to restrict clip but not to expand it. Given additional compelling use cases, or changes in the implementation stack, this proposal could be re-considered. 2022-04-21
Custom Dialog on Close This design conflicted with the philosophy of keeping tab close as fast as possible. Work is ongoing to describe a way to meet the needs that this design aimed to address. 2020-03-25
Arbitrary Text Fragments We are now directing our efforts into providing feedback on the similar proposal ScrollToTextFragment already being incubated in the W3C Web Incubator Community Group. 2019-10-31
Password Reveal Rather than working on this HTML controls feature in isolation, we have rolled this effort into the larger Open UI project of the Web Incubator Community Group in an effort to provide a standardized set of form controls for the web, including password. 2019-06-17
Range innerText 2023-07-17
Enabling Custom Control UI Originally driven by Microsoft, the project has since been handed off to the Open UI project and implementation handled by Google 2023-07-17
Time-limited Permissions 2023-07-17
Cache API Response Metadata 2023-07-17
First Run Permissions Prompt 2023-07-17
Version History 2023-07-17
Confirmation of Action This effort is being pursued in a similar proposal, AriaNotify 2023-11-13
PerformanceNavigationTiming Protocol Launch 2024-04-22