Things to do when we drop IE11 support someday

Writing this issue to keep track of the things we can do / drop once we no longer support IE11. This issue is mainly for record-keeping. Eventually dropping will likely be based on Microsoft ending support for Windows 7, which is currently slated for January 2020.

  • Incorporate CSS custom properties into theming
  • Drop extra code for sticky positioning and just use position: sticky
  • Use IntersectionObserver for overlay positioning
  • Use WeakSet instead of WeakMap<T, boolean>
  • Second parameter to classList.toggle
  • Use element.remove() instead of element.parentNode.removeChild(element)
  • Start using CSS Grid, potentially deprecating mat-grid-list
  • Start using KeyboardEvent.key / KeyboardEvent.code (re-evaluate cdk/keycodes)
  • Explore possibly using native Shadow DOM
  • Remove re-implementations of matches and closest
  • Get rid of IE-specific cases in InteractivityChecker
  • Explore clip-path as a means of custom shapes for components
  • Remove IE11-specific fallback animation in mat-spinner
  • Can use unset CSS value