imageLast October we reviewed the web implementation in iOS7.0. We were disappointed in the release, and said that "the sheer number of bugs and broken features, clearly mark this release as a beta". Now that iOS 7.1 has just shipped, we decided to revisit our assessment and see how much progress Apple has made polishing the product.

TL;DR The good news is that the majority of bugs, broken features and performance regressions have been cleaned up. For example, we’re back to 60 fps performance for SVG animation, and Home Screen Apps seem to be working just fine again.

Home Screen Apps Back Again

The biggest news for web developers with iOS 7.1 is that Home Screen App functionality seems to have been fixed. This is good news, because Home Screen Apps were horribly broken in iOS7, with disabled alerts, hard crashing bugs and other wacky behavior. Apple now also provides a new meta tag to trigger (almost) full-screen on page load. The new meta tag is called "minimal-ui" and it loads a page with the toolbar hidden and the top URL bar minimized to the domain name.

Bug Fixes In Content Handling

iOS7.1 fixes almost every bug we found in iOS7.0 content rendering and animation:

  • Interactive elements that are near page borders now get focus properly when swiping left or right (instead of triggering the page back/forward action in the browser).
  • requestAnimationFrame animations now properly suspend when in a non-active tab
  • Web workers now properly suspend when in a non-active tab
  • Implicit z-indexes are now properly calculated before CSS animations fire
  • On iPad, changing orientation while an input has focus now seems to work just fine and the bug related to document height 100% seems to also have been fixed.

We do note that window.resize still doesn’t seem to fire when the URL bar and toolbar are minimized, although if you’re using the minimal-ui meta tag because you have bottom positioned content (for example) you shouldn’t run into this.

Performance

In our original iOS7.0 scorecard, we noted a number of performance gains and regressions vs. iOS6. On the positive side, JavaScript peformance (Sunspider and Octane) improved a lot and SVG long path drawing got an enormous boost (200x). On the downside, JavaScript animation of SVG was crippled.

The good news with iOS7.1 is that JavaScript animation of SVG is now high performance. The 500 bouncing SVG balls test that was crawling along at less than a frame per second, is now at 60 fps on iOS7.1. SVG Animators rejoice! There do not seem to be any other significant performance changes. Canvas is still super fast, and DOM Query is still half the speed of iOS6.

Great Quality Improvements, But No New Features

iOS 7.1 is a bug fix release that fixes almost all the issues we found in the rushed-to-market iOS7. While there are no new HTML5 features that we (or HTML5Test) could see, web developers can once again rely on Apple’s best in class browser for building HTML5 applications. We continue to expect Apple to introduce WebGL, Web audio, and more HTML5 features in a future release to be on par with the HTML5 features being introduced by Google, Microsoft, and Blackberry to their mobile platforms.

.right, .alignright float: right; margin: 0 0 10px 10px;
.left, .alignleft float: left; margin: 0 10px 10px 0;

View original post here: 

iOS 7.1: The Bug Fix Release Arrives