Today, we’re providing both you and your users the ability to reply to comments in the Reviews tab, in order to ensure that you can openly and clearly communicate about all relevant feedback.
To strengthen relationships with your users and ensure that the Reviews tab provides accurate information about your product, we recommend that you begin closely monitoring user reviews for bug reports and feature suggestions. Be sure to reply constructively to both negative and positive reviews, notify users when you have addressed their feedback, and thank the users who are your biggest advocates.
Before replying to user reviews, please read the commenting guidelines to ensure that your use of this feature is compliant with Chrome Web Store policies. Also remember that when posting reviews, your name and Google account will be shown publicly so that prospective users can see that you consistently provide high quality customer support. Head over to your reviews tab and start connecting with users today!
Posted by James Wagner, Product Lead and Reviews Wrangler
Previously, animating objects along an author-specified path required complex javascript code that could block important events like rendering and input. Developers can now animate any graphical object along an arbitrary path declaratively as a CSS property, allowing simpler code that doesn’t block rendering or input.
Complex animations using CSS
Optimized image loading and service worker instrumentation
Tools like srcset allow developers to serve an optimized image variant in a responsive way, but it can be cumbersome and inefficient to use in practice. Developers can now negotiate with the server to download the best image variant for a device using straightforward HTTP request headers. These headers communicate DPR, Viewport-Width, and the intended display width of the resource being fetched to the server.
In addition to improving image loading, developers can now instrument service workers to gather detailed fetch and script timing. Developers can also measure the startup time of service workers more accurately.
To prevent user annoyance and conserve power, Chrome will now defer playback of autoplay videos in background tabs until the first time the tab is foregrounded.
Sites launched from the home screen can now modify the default color of Chrome’s UI by specifying a theme color in their web manifest instead of a meta tag.
Sites that have been added to the homescreen can now set a background color to show while resources load.
Events generated by user action can be differentiated from events generated by script using Event.isTrusted(), allowing developers to protect against fake clicks.
Developers can now use CSS.escape(), eliminating the need for complicated string escape code while handling user generated identifiers.
Custom tabs benefit from Chrome’s advanced security features, including its multi-process architecture and robust permissions model. They use the same cookie jar as Chrome, allowing a familiar browsing experience while keeping users’ information safe. For example, if a user has signed in to a website in Chrome, they will also be signed in if they visit the same site in a custom tab. Other features that help users browse the web, like saved passwords, autofill, Tap to Search, and Sync, are also available in custom tabs.
Custom tabs are easy for developers to integrate into their app by tweaking a few parameters of their existing VIEW intents. Basic integrations require only a few extra lines of code, and a support library makes more complex integrations easy to accomplish, too. Since custom tabs is a feature of Chrome, it’s available on any version of Android where recent versions of Chrome are available.
Users will begin to experience custom tabs in the coming weeks in Feedly, The Guardian, Medium, Player.fm, Skyscanner, Stack Overflow, Tumblr, and Twitter, with more coming soon. To get started integrating custom tabs into your own application, check out the developer guide.
The latest version of Chrome scrolling a timer heavy site with no optimizations (left) and delayed timer execution (right).
Scheduling timers intelligently is just one use of the scheduler’s infrastructure. To keep improving, Chrome will continue integrating the scheduler with more rendering engine tasks. Using cycles wisely is one way to keep the web fast for everyone. Posted by Alex Clarke, Software Engineer and Timer Tamer
Inline installation was introduced in 2011 as a way for users to seamlessly install extensions from developers’ websites. Unfortunately, this mechanism has been abused by deceptive sites and ads that trick users into installing unwanted extensions.
This ad appears to be a software update but actually links to an inline installation site for a Chrome extension.
To help address this problem, on September 3 we’ll begin disabling inline installation for extensions that employ these deceptive tactics. For these extensions, inline installation attempts will be redirected to the extension’s product details page in the Chrome Web Store, allowing the user to make an informed decision about whether to install.
Although less than 0.2% of all extensions will be affected by this change, it’s an important step to maintain a healthy extension ecosystem for users and the vast majority of extension developers who don’t use deceptive tactics. If you have any questions regarding this change, please reach out to us at [email protected].
Posted by Andrew Kim and Ben Ackerman, Chrome Policy and Anti-Abuse Team
Over the past year Chrome has shipped a number of new JavaScript features defined in the ES2015 specification (formerly known as ES6), a major update to JavaScript that allows developers to write application logic that is easier to read, more powerful, and more memory efficient than ever before.
Chrome 40 introduced support for service workers, enabling developers to build high performance sites that work offline. This release includes a number of improvements:
Service workers used exclusively to send push notifications are now kept up-to-date correctly and developers can also use the new update method to manually trigger an update check.
Sites can now use getRegistrations() to access all the service workers whose scope matches the current page.
Finally, in a breaking change, messages sent via Client.postMessage() now fire an event on navigator.serviceWorker instead of the window object.
Media controls in Android notifications
Playback controls for currently-playing audio are shown in the notification tray and on the lock screen
On Android, native apps can show media controls in a system notification when playing audio, making it easy for users to control audio while multitasking. Chrome 45 brings this capability to the web by showing a notification with media controls when audio is playing in web content. The controls will automatically show up when <audio> or <video> tags play audio longer than 5 seconds.
Other updates in this release
Sites can now customize the vibration triggered when showing a notification on Android.
To improve scroll performance on pages with heavy mouse handlers or :hover styles, Chrome no longer sends mouse position updates when the user is scrolling with a trackpad or scrollwheel.
Chrome now immediately prefetches all HTML imports referenced by a page instead of waiting for scripts included higher in the document to finish executing, improving performance.
Update: The User Timing and Resource Timing APIs are unfortunately not exposed to service workers in this release, but should be available in Chrome 46. As always, visit chromestatus.com/features for a complete overview of Chrome’s developer features, and circle +Google Chrome Developers for more frequent updates.
Posted by Andreas Rossberg, Software Engineer and ECMAScript Evangelizer