Firefox Mobile Web Compatibility Update

Firefox Mobile Web Compatibility Update

Problem statement

The content served to Firefox for Android and Firefox OS
  • is not directly under Mozilla's control
  • has a direct impact on the user experience of these products

Mitigating the 4 issues

  1. User Agent (UA) sniffing
  2. Webkit specific CSS
  3. Functional DOM/JS issues
  4. Gecko limitations

1. User Agent (UA) sniffing

  • Firefox OS domain whitelist
  • promote feature detection

2. Webkit specific CSS

  • CSS unprefixing
    • animation
    • animation-name
    • animation-duration
    • animation-delay
    • animation-timing-function
    • animation-iteration-count
    • animation-direction
    • animation-play-state
    • animation-fill-mode
    • @keyframes
    • transition
    • transition-property
    • transition-delay
    • transition-duration
    • transition-timing-function
    • transform
    • transform-origin
    • transform-style
    • backface-visibility
    • perspective
    • perspective-origin
    • linear-gradient()
    • radial-gradient()
    • repeating-linear-gradient()
    • repeating-linear-gradient()
    • calc()
  • Webkit CSS aliasing analysis

3. Functional DOM/JS issues

  • H.264 support
  • deep dive investigation into functional issues

4. Gecko limitations

  • layout performance issues
  • getUserMedia()
  • H.264 Advanced Video Coding (AVC) profile support
  • other...

Site Testing & Evangelism

  • does work but is slow and labour intensive
  • tracking progress on arewecompatibleyet.com
  • successful efforts include
    • Google
    • Facebook
    • Twitter
    • Microsoft
    • Bing
    • IMDB
    • YouTube
    • Wikipedia
    • JQuery
    • PhotoSwipe

Google

Facebook

Facebook

Facebook

Twitter

Facebook

The best way to not feel hopeless is to get up and do something

President Barack Obama

Site Testing Event in MV

Firefox for Android

Tomorrow (Tues) 12pm PT in 10 forward

Come test, report bugs, and have lunch!

Sign-up! https://etherpad.mozilla.org/mobilewebtestevent

Remember to bring your Android phone