Qt 4.8 Improvements in Symbian: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
[[Category:Qt Supported Platforms]]
'''English'''
'''English'''


=Qt 4.8 Release Improvements in Symbian Platform=
[toc align_right="yes" depth="2"]
 
= Qt 4.8 Release - Improvements in Symbian Platform =


This document highlights the main performance, stability and behavioral changes done in [http://doc.qt.io/qt-4.8/ Qt 4.8] ''[qt.io]'' for Symbian Platform.
This document highlights the main performance, stability and behavioral changes done in "Qt 4.8":http://doc.qt.io/qt-4.8/ for Symbian Platform.


For information about known issues in this release see [[Qt-4-8-Compatibility-Issues-Symbian|Qt 4.8 Release – Compatibility Issues in Symbian Platform]] ''[qt.io]''.
For information about known issues in this release see "Qt 4.8 Release – Compatibility Issues in Symbian Platform":http://wiki.qt.io/Qt-4-8-Compatibility-Issues-Symbian.


Qt 4.8 is the latest version available for the Symbian platform. It is part of Nokia Belle Feature Pack 1 and available only through firmware update, or in the sales firmware of newer devices.
Qt 4.8 is the latest version available for the Symbian platform. It is part of Nokia Belle Feature Pack 1 and available only through firmware update, or in the sales firmware of newer devices.


Qt 4.8 does not introduce any changes on how to develop Qt applications for Symbian devices. There is no Symbian compilation target in Qt <span class="caps">SDK</span>. Applications compiled on existing targets, like Qt 4.7.4 Symbian compilation target, will continue to work on top of Qt 4.8. <br /> A Qt application for Symbian platform cannot be compiled if it uses <span class="caps">API</span> functions introduced in Qt 4.8.
Qt 4.8 does not introduce any changes on how to develop Qt applications for Symbian devices. There is no Symbian compilation target in Qt SDK. Applications compiled on existing targets, like Qt 4.7.4 Symbian compilation target, will continue to work on top of Qt 4.8.<br />A Qt application for Symbian platform cannot be compiled if it uses API functions introduced in Qt 4.8.


In principle an application compiled on existing targets, like Qt 4.7.4, makes it possible to deploy it on wide range of devices (see [https://wiki.qt.io/Support_for_Symbian#4ebe3e7733f9c23c76ac25559fc814a1 Device configurations] ''[qt.io]'' ). So when such an application is running in Qt 4.8 enabled device, it benefits automatically from the improvements listed in this document.
In principle an application compiled on existing targets, like Qt 4.7.4, makes it possible to deploy it on wide range of devices (see &quot;Device configurations&amp;quot;:https://wiki.qt.io/Support_for_Symbian#4ebe3e7733f9c23c76ac25559fc814a1 ). So when such an application is running in Qt 4.8 enabled device, it benefits automatically from the improvements listed in this document.


==New File I/O Backend==
== New File I/O Backend ==


The file <span class="caps">API</span> backend has been changed to use native <span class="caps">API</span>s on Symbian, and the dependency on OpenC has been reduced. This means improved performance in various file operations, such as directory listings. <br /> The improvements are mainly in QDir, QDirIterator, and QFileInfo. The QFile implementation has been changed to be more consistent with other platforms.
The file API backend has been changed to use native APIs on Symbian, and the dependency on OpenC has been reduced. This means improved performance in various file operations, such as directory listings.<br />The improvements are mainly in QDir, QDirIterator, and QFileInfo. The QFile implementation has been changed to be more consistent with other platforms.


==Network Module==
== Network Module ==


These changes are mainly to improve stability and to fix bugs.
These changes are mainly to improve stability and to fix bugs.


IPv6 is the main new feature. On Symbian, using QHostAddress::Any for a listening socket (the default) will work for both IPv4 and IPv6 connections.<br /> There are also performance improvements for <span class="caps">HTTP</span> in Qt 4.8 (which has a worker thread, whereas in 4.7 it used the main thread). Note that these changes are not Symbian platform specific.
IPv6 is the main new feature. On Symbian, using QHostAddress::Any for a listening socket (the default) will work for both IPv4 and IPv6 connections.<br />There are also performance improvements for HTTP in Qt 4.8 (which has a worker thread, whereas in 4.7 it used the main thread). Note that these changes are not Symbian platform specific.


==Text Rendering Outside of <span class="caps">GUI</span> Thread==
== Text Rendering Outside of GUI Thread ==


It is now possible to render text in a non-<span class="caps">GUI</span> thread (secondary thread) in Symbian. In earlier releases there were issues with this as the underlying <span class="caps">API</span> was not thread safe. <br /> See [http://doc.qt.io/qt-4.8/qfontdatabase.html#supportsThreadedFontRendering QFontDatabase::supportsThreadedFontRendering] ''[qt.io]'' which returns true if font rendering is supported outside the <span class="caps">GUI</span> thread.
It is now possible to render text in a non-GUI thread (secondary thread) in Symbian. In earlier releases there were issues with this as the underlying API was not thread safe.<br />See &quot;QFontDatabase::supportsThreadedFontRendering&amp;quot;:http://doc.qt.io/qt-4.8/qfontdatabase.html#supportsThreadedFontRendering which returns true if font rendering is supported outside the GUI thread.


==Qt Webkit==
== Qt Webkit ==


Unlike in other platforms, in Symbian Qt 4.8 comes with Qt WebKit version 2.1. The same version was used in Qt 4.7.4 for Symbian.
Unlike in other platforms, in Symbian Qt 4.8 comes with Qt WebKit version 2.1. The same version was used in Qt 4.7.4 for Symbian.


==Multipoint Touch Events==
== Multipoint Touch Events ==


In this version multipoint touch events delivery is more fine-grained than previously, i.e. more touch events are delivered to the application in case of multipoint touch.
In this version multipoint touch events delivery is more fine-grained than previously, i.e. more touch events are delivered to the application in case of multipoint touch.


==Qt Quick Components==
== Qt Quick Components ==


The Qt Quick Components for Symbian now include a new Window component implementation that enables orientation change animations. See [http://doc.qt.nokia.com/qtquick-components-symbian-1.1/qml-window.html#details <span class="caps">QML</span> Window element] ''[doc.qt.nokia.com]'' for details.
The Qt Quick Components for Symbian now include a new Window component implementation that enables orientation change animations. See &quot;QML Window element&amp;quot;:http://doc.qt.nokia.com/qtquick-components-symbian-1.1/qml-window.html#details for details.


There are also improvements in the integration of the Symbian touch input system into text input features using a virtual keyboard (e.g. cut/copy/paste functionality).
There are also improvements in the integration of the Symbian touch input system into text input features using a virtual keyboard (e.g. cut/copy/paste functionality).
===Categories:===
* [[:Category:Qt-Supported-Platforms|Qt Supported Platforms]]

Revision as of 10:02, 24 February 2015


English

[toc align_right="yes&quot; depth="2&quot;]

Qt 4.8 Release - Improvements in Symbian Platform

This document highlights the main performance, stability and behavioral changes done in "Qt 4.8&quot;:http://doc.qt.io/qt-4.8/ for Symbian Platform.

For information about known issues in this release see "Qt 4.8 Release – Compatibility Issues in Symbian Platform&quot;:http://wiki.qt.io/Qt-4-8-Compatibility-Issues-Symbian.

Qt 4.8 is the latest version available for the Symbian platform. It is part of Nokia Belle Feature Pack 1 and available only through firmware update, or in the sales firmware of newer devices.

Qt 4.8 does not introduce any changes on how to develop Qt applications for Symbian devices. There is no Symbian compilation target in Qt SDK. Applications compiled on existing targets, like Qt 4.7.4 Symbian compilation target, will continue to work on top of Qt 4.8.
A Qt application for Symbian platform cannot be compiled if it uses API functions introduced in Qt 4.8.

In principle an application compiled on existing targets, like Qt 4.7.4, makes it possible to deploy it on wide range of devices (see "Device configurations&quot;:https://wiki.qt.io/Support_for_Symbian#4ebe3e7733f9c23c76ac25559fc814a1 ). So when such an application is running in Qt 4.8 enabled device, it benefits automatically from the improvements listed in this document.

New File I/O Backend

The file API backend has been changed to use native APIs on Symbian, and the dependency on OpenC has been reduced. This means improved performance in various file operations, such as directory listings.
The improvements are mainly in QDir, QDirIterator, and QFileInfo. The QFile implementation has been changed to be more consistent with other platforms.

Network Module

These changes are mainly to improve stability and to fix bugs.

IPv6 is the main new feature. On Symbian, using QHostAddress::Any for a listening socket (the default) will work for both IPv4 and IPv6 connections.
There are also performance improvements for HTTP in Qt 4.8 (which has a worker thread, whereas in 4.7 it used the main thread). Note that these changes are not Symbian platform specific.

Text Rendering Outside of GUI Thread

It is now possible to render text in a non-GUI thread (secondary thread) in Symbian. In earlier releases there were issues with this as the underlying API was not thread safe.
See "QFontDatabase::supportsThreadedFontRendering&quot;:http://doc.qt.io/qt-4.8/qfontdatabase.html#supportsThreadedFontRendering which returns true if font rendering is supported outside the GUI thread.

Qt Webkit

Unlike in other platforms, in Symbian Qt 4.8 comes with Qt WebKit version 2.1. The same version was used in Qt 4.7.4 for Symbian.

Multipoint Touch Events

In this version multipoint touch events delivery is more fine-grained than previously, i.e. more touch events are delivered to the application in case of multipoint touch.

Qt Quick Components

The Qt Quick Components for Symbian now include a new Window component implementation that enables orientation change animations. See "QML Window element&quot;:http://doc.qt.nokia.com/qtquick-components-symbian-1.1/qml-window.html#details for details.

There are also improvements in the integration of the Symbian touch input system into text input features using a virtual keyboard (e.g. cut/copy/paste functionality).