- The IndexedDB 2.0 standard is now fully supported in Chrome, and features new schema management, bulk action methods, and more standardized handling of failures.
- Progressive Web Apps become more immersive with
display: fullscreen
. allow-top-navigation-by-user-activation
gives sandboxediframes
new powers- And there's plenty more!
Want the full list of changes? Check out the Chromium source repository change list
I'm Pete LePage. Let's dive in and see what's new for developers in Chrome 58!
IndexedDB 2.0
The structure of your site's database has large performance impacts, and can be difficult to change. IndexedDB 2.0 changes that.
object
stores andindexes
can now be renamed in-place after a refactoring.- Binary keys allow more natural keys without worrying about performance penalties.
- Data retrieval is easier with the
getKey()
,openKeyCursor()
andcontinuePrimaryKey()
methods.
And bulk recovery of entire datasets no longer needs a cursor with the
getAll()
and getAllKey()
.
Full screen Progressive Web Apps
When Progressive Web Apps are launched from the Android home screen, they launch in a standalone app-like mode that hides the omnibox. This helps create an engaging user experience, and frees up screen space for content.
However, for even more immersive experiences like games, video players, or other rich content, mobile UI elements such as the system bars can still be a distraction and take up valuable pixels that you may want.
Now you can make your Progressive Web App feel fully immersive by setting
display: fullscreen
in your
web app manifest.
When your app is launched from the home screen, all non-app mobile UI elements will be hidden.
Sandboxed iframe Improvements
Chrome 58 now supports the new iframe sandbox keyword
allow-top-navigation-by-user-activation
.
When triggered by a user interaction, this keyword gives sandboxed iframes the ability to navigate the top-level page, while still blocking auto-redirects.
And more!
And of course, there's plenty more.
- Say goodbye to the
clearfix
hack. Instead of manually resetting multiple layout properties like float and clear, you can now add a new block-formatting context usingdisplay: flow-root
. PointerEvents.getCoalescedEvents()
allows you to access all input events since the last time aPointerEvent
was delivered. Perfect for when you need a precise history of points for things like drawing apps.- And
Workers
andSharedWorkers
can now be created usingdata:
URLs, making development withWorkers
more secure by giving them an opaque origin.
These are just a few of the changes in Chrome 58 for developers.
If you enjoyed this video, check out Designer vs. Developer, a new video series that tries to solve the challenges faced when designers and developers work together.
Then subscribe to our YouTube channel, and you'll get an email notification whenever we launch a new video.
I'm Pete LePage, and as soon as Chrome 59 is released, I'll be right here to tell you -- what's new in Chrome!