@annulen annulen released this Jun 16, 2017 · 98 commits to qtwebkit-stable since this release

Assets 9

IMPORTANT: Please download our source code package qtwebkit-5.212.0-alpha2.tar.xz and NOT the automatically created GitHub packages at the bottom of the list.

Improvements

  • MediaFoundation player is now used by default in MSVC builds. This means QtWebKit binaries no longer require QtMultimedia and its plugins, and users won't have to install codecs to be able to watch HTML5 video. Note that MinGW builds still use QtMultimedia.

Bug fixes

  • Fixed compilation errors and overwhelming warnings with GCC 7
  • Fixed compilation with ICU 59.1
  • Additional bug- and security fixes from WebKit trunk

@annulen annulen released this Jun 7, 2017 · 106 commits to qtwebkit-stable since this release

Assets 3

This release restores QML API of QtWebKit. QML API is based on WebKit 2 - multi-process mode of WebKit engine that uses background processes to render web pages. Also, this release includes lots of backported bug- and security fixes from WebKit upstream.

WARNING: Source and binary packages are not yet available, please use 5.212 branch from http://code.qt.io/cgit/qt/qtwebkit.git

New APIs

  • QWebSettings attributes ImagesEnabled and AllowRunningInsecureContent
  • QWebPage::WebAction: RequestClose, Unselect
  • QWebPage: setDevicePixelRatio(), devicePixelRatio(), resetDevicePixelRatio()

Restored features available in legacy QtWebKit

  • QML API (QtWebKit and QtWebKit.experimental modules) is now available on all supported platforms. Note that some APIs from QtWebKit.experimental are not restored yet, notably support for authentication, custom URL protocols, and fullscreen mode.
  • QWebSettings attributes PrivateBrowsingEnabled and ScrollAnimatorEnabled are working now
  • Blob downloads are possible now (#428)

Bug fixes

  • Fixed crash when applying CSS filter in HiDPI mode (#461)
  • Fix blurry background in HiDPI mode when -webkit-image-set is used
  • Fix QMake integration files on macOS (#422, #481)
  • macOS binaries now use same SDK and minimum OS version as official Qt binaries (#430)
  • CMake integration files, in addition to Qt5::WebKit and Qt5::WebKitWidgets targets, now provide all variables described in Qt documentation, such as Qt5WebKit_INCLUDE_DIRS(#427)
  • Lots of fixes backported from WebKit upstream

Improvements

  • With Qt >= 5.9 HSTS is enabled by default in widgets API. Note that you need to save/load HSTS policies from/to QNetworkAccessManager manually
  • QtWebChannel now transmits inter-process messages in the binary encoding of QJsonDocument, and all JSON parsing is offloaded to background QtWebProcess
  • Use high-resolution built-in image resources, when such resource is available

Other

  • QtSql module is not used by QtWebKit anymore. We need only SQLite, and WebKit already provides high-level API for it, used by IndexedDB, WebSQL, and in other places
  • Debug binaries are provided for Windows and macOS
  • QtWebKit is available for use by other Qt modules in superbuild, i.e. you can build Qt Assistant with QtWebKit support by building all modules with use of top-level configure

@annulen annulen released this Feb 3, 2017 · 357 commits to qtwebkit-stable since this release

Assets 8

New APIs

  • Fullscreen API is now supported
  • QWebFrame::ownerElement() allows to get QWebElement that owns child frame
  • Added focusedElementChanged signal to QWebPage

New features

  • Media player based on MediaFoundation can be optionally built on Windows instead of default QtMultimedia-based player

Restored features available in legacy QtWebKit

  • Accelerated compositing: both OpenGL and software mode, off by default for now
  • Accelerated 2D canvas
  • WebGL

Bug fixes

  • Fixed missing checkboxes on macOS (QTBUG-43070)
  • Fixed painting of checkboxes and radiobuttons when their layout size is smaller or larger than size of repective controls in used QStyle theme
  • Other various bug fixes

Build system & platform support

  • MinGW is supported now
  • QtWebKit can be built as submodule of Qt now, and is successfully building in Qt CI system
  • Fixed static build on Windows
  • QtWebKit is installed into Qt prefix by default now
  • uninstall target added

IMPORTANT: Please download our source code package qtwebkit-tp5.tar.xz and NOT the automatically created GitHub packages at the bottom of the list.

@annulen annulen released this Oct 1, 2016 · 593 commits to qtwebkit-stable since this release

Assets 7
  • Bug- and security fixes from WebKitGTK 2.12.4 and 2.12.5
  • Improved MathML rendering
  • Added WOFF2 support
  • Added support for the object-position CSS property
  • Improved installation to Qt prefix
  • QtWebKit can now be built and used as a static library
  • Other bug fixes

@annulen annulen released this Aug 18, 2016 · 802 commits to qtwebkit-stable since this release

Assets 6

Restored Web APIs to improve feature parity with QtWebKit 5.7:

  • NPAPI and Qt plugins (for now, only on Windows and X11).
  • <object> and <embed> elements with image data.
  • download attribute on links.
  • Fixed <progress> element.
  • Web SQL Database support was accidentally left disabled in previous releases, this is fixed now.

New WebAPIs

  • DOM Level 4 events constructors.
  • -webkit-initial-letter CSS property.
  • Initial support for CSS system fonts shorthands (for now, all of them use font of QGuiApplication).

Other improvements

  • Now it's possible to build static QtWebKit libraries with static Qt. To make it install properly you will need to apply patch from #277.
  • Most of patches, submitted to Qt Gerrit since Qt 5.2 were forward-ported.

Prominent bug fixes

Aug 10, 2016
Intermediate tag before mass cherry-picking

@annulen annulen released this Jun 18, 2016 · 1209 commits to qtwebkit-5.212 since this release

Assets 2

Restored Web APIs to improve feature parity with QtWebKit 5.7:

  • Indexed Database

This is completely new implementation, which doesn't depend on LevelDB anymore, and is more compliant to modern W3C standards

  • Media Source Extensions (only when GStreamer is used)

This is still experimental, known issue is that some YouTube video with preroll advertisment are not playing, though it works fine in other cases. To enable it, use new attribute QWebSettings::MediaSourceEnabled.

  • Device motion and orientation API
  • Gamepad API (on Linux only)
  • Enabled support like it was done in previous releases

Other improvements

  • Support for OS X (>= 10.10) added
  • Enabled print support
  • Integrations for qmake, cmake, and pkg-config are now installed
  • Documentation in HTML and QCH formats is now generated and installed

Prominent bug fixes

  • Fixed missing text rendering on some sites
  • Fixed copying to clipboard from web views
  • Fixed some ABI compatibility issues

@annulen annulen released this Jun 18, 2016 · 1293 commits to qtwebkit-5.212 since this release

Assets 2

This release features major update of WebKit engine, bringing in support for modern Web standards, performance and memory usage optimizations, lots of bug- and security fixes done by WebKit community since 2013, when Qt port was removed from the trunk of WebKit.

Here is a list of the most prominent changes:

New Web APIs:

  • A lot of ES2015 features are now supported
  • Responsive images support ( element, srcset and sizes attributes)
  • ellipse() method in Canvas API
  • CSS selectors ::read-write and ::read-only
  • HTML element
  • WebAudio API
  • Other improvements:

    • B3 JIT compiler is now used on x86_64, providing impressive performnce improvements for computationally-intensive code
    • JavaScriptCore now uses C stack, reducing memory usage and memory fragmentation
    • JIT for CSS selectors is now available
    • New Web Inspector UI

    However, not all features of QtWebkit 5.6 are implemented in this release. Here are the most prominent missing features:

    • WebKit 2 and QML integration. Work on it is starting now.
    • Support for Qt (QWebPluginFactory) and NPAPI plugins in WebKit 1 (widgets) API.
    • Private browsing API.
    • Accelerated compositing (OpenGL mode works in private branch but is not merged yet, software mode is not implemented yet).
    • IndexedDB and WebGL are not supported yet

    This release should be considered to have beta quality and is not recommended for use in production environments. However, it's already quite stable and could be used as site-speicifc browser or content renderer, unless your content is affected by aforementioned bugs.