Opera 46 was released today. We just installed it to our cross-browser testing platform. Opera 46 is based on Chromium 59. This new browser release is now available to all users and customers.

Cross-browser testing in Opera 46

Try Opera 46 in Browserling now!

New Features in Opera 46

  • Quality of Opera Reborn has been improved: reduced crashes, UI improvements, new background images.
  • Built-in VPN issues have been fixed.
  • Opera now supports Animated PNGs (APNGs).
  • Macbook touchbar users can enjoy an emoji-enabled input field.
  • Browser's engine has been upgraded to Chrome 59.

New Developer Features in Opera 46

  • Animated PNG

Opera now supports animated PNG, or APNG for short. APNG is a file format that works similarly to GIF. The difference is that APNG is smaller and supports both 24-bit images and 8-bit transparency.

  • SVG favicons

SVG vector format favicons now work in Opera.

  • Expensive background tab throttling

Opera now throttles expensive background tabs. This reduces the processing power required for background tabs and improves battery life and browsing performance.

  • Service worker navigation preload

The Service Worker navigation preload API enables the browser to preload navigation requests while a service worker is starting up.

Other New Developer Features in Opera 46

  • Developers can now use MediaError's message property to obtain greater detail about a MediaError produced by <audio> or <video>.
  • The Streams API has been expanded with the ability to pipe between ReadableStreams and WritableStreams via the pipeTo() and pipeThrough() methods, allowing easier consumption of streaming data.
  • The Image Capture API now allows sites to take higher resolution images than before, providing full control over camera settings such as zoom, ISO, and white balance.
  • The new worker-src Content Security Policy directive restricts which URLs may be loaded as a Worker, SharedWorker, or ServiceWorker.
  • Touch events are now aligned to requestAnimationFrame, ensuring that input is processed as part of the document lifecycle and creating a more efficient and adaptive input response.
  • To provide enhanced privacy, CSS stylesheets can now specify their own referrer policy via the HTTP header, rather than always inheriting the referrer policy of the document that originally referenced it.
  • WritableStreams are now available as part of the Streams API for processing streams of data, while providing a standard abstraction for writing streaming data to a sink with built-in backpressure and queuing.

Deprecated and removed features in Opera 44

  • Following removal from the Media Queries spec, support for hover: on-demand and any-hover: on-demand media queries have been removed.
  • To increase security, Opera will now block requests for subresources that contain embedded credentials, and instead handle them as network errors.
  • The -internal-media-controls-text-track-list CSS selectors have been removed in favor of custom-built video controls.
  • initDeviceMotionEvent() and initDeviceOrientationEvent() were removed in favor of DeviceOrientationEvent() and DeviceMotionEvent(), following a spec trend of moving away from initialization functions and toward constructors.
  • To better align with spec and help avoid race conditions, decodeAudioData now detaches the given ArrayBuffer before decoding, removing all content from the object and making it unable to be reused or examined.
  • The -internal-media-controls-cast-button CSS selector has been removed in favor of the Remote Playback API.
  • The SVGTests.requiredFeatures attribute has been removed following its removal from the spec.
  • The <dialog> element has changed from display: inline to block by default to better align with the spec.
  • To preserve consistency across browsers, the sample property will now be included in a violation report (and associated SecurityPolicyViolationEvent object) if a report-sample expression is present in the violated directive.
  • Support for Shared Dictionary Compression (SDCH) has been disabled until a stable API has been standardized.
  • The ability to call Notification.requestPermission() from non-main frames has been deprecated to align the requirements for notification permission with requirements for push notifications, and ease friction for developers.
  • To increase security, Opera will now block requests from HTTP/HTTPS documents to ftp: URLs.
  • To preserve consistency across browsers, injecting JavaScript via AppleScript is longer supported in Opera for Mac.

Happy cross-browser testing in Opera 46!