| Qt 4.5.2-tower |
| --------------- |
| |
| The Qt for S60 "Tower" release is the fifth pre-release from the Qt for |
| S60 porting project. "Tower" is based on the Qt 4.5 codebase (mostly Qt 4.5.2). |
| |
| This list of changes lists S60 specific fixes only, |
| for general 4.5.x changes go to: |
| |
| http://qt.nokia.com/developer/changes/changes-4.5.0 |
| http://qt.nokia.com/developer/changes/changes-4.5.1 |
| http://qt.nokia.com/developer/changes/changes-4.5.2 (partially in Tower) |
| |
| Some of the changes listed in this file include issue tracking numbers |
| corresponding to tasks in the Task Tracker: |
| |
| http://qt.nokia.com/developer/task-tracker |
| |
| Each of these identifiers can be entered in the task tracker to obtain |
| more information about a particular change. Sometimes the task is internal |
| and cannot be viewed by the public, a lot of them are non-public for Qt for |
| S60 at the moment. |
| |
| **************************************************************************** |
| * New features * |
| **************************************************************************** |
| |
| New modules |
| ----------- |
| |
| - Input methods |
| * Added events to support opening and closing the virtual keyboard, called |
| software input panel in Qt. |
| * Added an option to QApplication to choose between single or double click |
| input panel activation. |
| * Added input method hints API to Qt. These can be used to instruct input methods |
| to only allow certain characters or tailor their appearance. |
| * Added Qt::ImAnchorPosition to support querying for selections through input |
| methods. |
| * Added QInputMethodEvent::Selection to support setting the selection through |
| input methods. |
| |
| - Phonon |
| * The Phonon library is now part of Qt, but it comes without a backend. |
| This means that applications can build and run against the Phonon |
| library, but there is currently no S60 backend plugin providing actual |
| multimedia playback. Possible alternatives such as Helix and MMF are |
| being investigated. |
| |
| - QtSql |
| * Implemented QtSql module with sqlite3 backend. For now backend is |
| provided only in binary format. |
| |
| - QtWebkit |
| * Experimental webkit build for S60. Can be enabled by passing -webkit |
| to configure. |
| |
| New classes |
| ------------ |
| |
| - QScopedPointer |
| * Smart pointer, which deletes pointer when destroyed. |
| |
| Ported classes |
| -------------- |
| |
| - QColormap |
| * Added basic implementation of QColormap for Symbian. |
| |
| - QLocalSocket and QLocalServer |
| * Added support for QLocalSocket and QLocalServer on Symbian. |
| |
| - QSound |
| * Implemented CMdaAudioPlayerUtility based Symbian backend for QSound. |
| |
| Features |
| -------- |
| |
| - QApplication |
| * Implemented QApplication::beep() for Symbian. |
| |
| - QPixmap |
| * Added supported for converting to/from CFbsBitmap |
| |
| - QSslSocket |
| * Added support for -openssl option i.e. runtime resolving of OpenSSL |
| symbols. |
| |
| - QWidget |
| * Basic widgets are now navigatable and usable via keypad on SDK 3 |
| FP 1 and FP 2. |
| * Widgets can now be made semi-transparent on systems that support it |
| using Qt::WA_TranslucentBackground. |
| |
| - Exception safety |
| * Improving the exception safety of Qt, not yet complete. |
| * Added support for translating between Symbian leaves and standard C++ |
| exceptions. |
| |
| Optimizations |
| ------------- |
| |
| - qdrawhelper |
| * Optimized drawing operations for RVCT builds, particulary for ARMV6. |
| |
| - QFont |
| * Use cached DPI for metrics. |
| |
| - qwidget_s60.cpp |
| * Avoid unnecessary calls to FocusChanged in Symbian. |
| |
| - qwindowsurface_s60.cpp |
| * Avoid updating raster buffer pointer on window hide |
| |
| Documentation |
| ------------- |
| |
| - exceptionsafety.qdoc |
| * A guide to exception safety in Qt. |
| |
| - symbian-exceptionsafety.qdoc |
| * A guide to integrating exception safety in Qt with Symbian. |
| |
| **************************************************************************** |
| * Code clean-up * |
| **************************************************************************** |
| |
| - Cleanup qeventdispatcher_unix.cpp |
| * 247268: All qeventdispatcher_unix.cpp changes were reverted since |
| this file is not anymore used in Symbian OS branch. |
| |
| - Cleanup QtNetwork workarounds implemented earlier due to Open C bugs. |
| * 247287: Removed getaddrinfo workaround. |
| * 247288: Removed waitForConnected workaround. |
| * 247289: Removed qt_socket_accept workaround. |
| * 247290: Removed qt_socket_connect workaround. |
| * 247290: Removed E32IONREAD workaround. |
| * 247293: Removed nativeHasPendingDatagrams workaround. |
| * 247295: Removed QNativeSocketEnginePrivate::nativeRead EPIPE |
| workaround. |
| |
| - Other code clean-ups |
| * 247278: Removed unnecessary includes from qbackingstore.cpp. |
| * Fixed Q_OS_SYMBIAN ifdef usage in qfiledialog_p.h. |
| * 247272: Removed qtestnetworkservers.h dependency, used |
| network-settings.h. |
| * Revert "Work around compiler bug on Nokia Metrowerks compiler." |
| * Remove UI highlights being inverted colors based on highlight text |
| colors. |
| |
| **************************************************************************** |
| * Build issues * |
| **************************************************************************** |
| |
| - Macros |
| * QT_NO_DEBUG now properly defined in release mode. |
| |
| - QTest |
| * Fixed testlib export macros for RVCT builds. |
| |
| - Namespaces |
| * Now builds when -qtnamespace option is defined. |
| |
| **************************************************************************** |
| * Changes to existing classes * |
| **************************************************************************** |
| |
| - QApplication |
| * 252798: Fixed layout when orientation changed via |
| AknAppUi::SetOrientationL. |
| * Generating MouseEvents has gone through several changes. |
| * qt_init() has been changed: auto flush is always enabled for |
| window server sessions on 3.1 SDK for both UDEB and UREL. |
| * Added support for '-graphics-system' command line option |
| |
| - QCoeFepInputContext (non-public) |
| * Fixes FEP crash when changing the focused Qt widget to NULL. |
| * Fixed a bug where the virtual keyboard could not be opened if there |
| was only one input widget. |
| * Fixed a crash in FEP when exiting application. |
| |
| - QDebug |
| * Fixed debug printing (incl. qWarning, qFatal) for strings longer |
| than 256 characters. |
| * introduce a breakpoint to get the emulator to stop in the debugger |
| when qFatal is called |
| |
| - QDesktopServices |
| * Fixed forwardslash/backslash usage as an path separator. |
| * Switched QDesktopServices mail-to URL handling to RSendAs in Symbian, |
| due to the fact that CSendUi requires extensive capabilities to work |
| correctly. Currently e-mail sending with qdesktopservices::openUrl |
| works in Symbian only if e-mail account already exists. |
| |
| - QDesktopWidget |
| * 253930: Implement proper resize behavior and emit necessary signals. |
| |
| - QEventDispatcherSymbian (non-public) |
| * Lowered the timeout for reprioritizing the process to 100ms. |
| * Fixed ASSERT panic in Symbian event dispatcher. |
| * 246600: Fix problem in eventdispatcher destructor / AO canceling. |
| * Fixed active scheduler removal when calling QThread::terminate. |
| * Fix to Open C bug: select sometimes returns -1 and errno is |
| ECONNREFUSED. |
| * Fix a crash when using QEventLoop::ExcludeSocketNotifiers flag. |
| * Changed to round robin scheduling for Qt's active objects. Other |
| active objects will still be scheduled like before. |
| * Fixed crash if events are posted before QApplication construction |
| |
| - QFontDataBase |
| * Now, also fonts from the user's /resources/fonts directories are |
| available. |
| |
| - QFontEngine |
| * Fix the vertical advance of glyph metrics. |
| |
| - QFontMetrics |
| * Fixed the boundingRect calculation for text. |
| |
| - QGraphicsView |
| * Added support for virtual keyboard to the the viewport. |
| |
| - QGraphicsTextItem |
| * Added support for virtual keyboard. |
| |
| - QHostInfo |
| * Added support for host lookups with multiple ipv4 addresses. |
| |
| - QInputContext |
| * Added QInputContext::s60FilterEvent(). |
| |
| - QIoDevice |
| * Fixed compilation error when QIODEVICE_DEBUG is defined. |
| |
| - QKeyMapper (non-public) |
| * Fixed a broken keymapping where Enter key would be mapped to Tab. |
| |
| - QLocale |
| * Removed workaround for missing tzname symbol, fixes QLocal timeZone |
| implementation for Symbian. |
| |
| - QLocalSocket |
| * Connecting to QLocalServer is always done in blocking mode. |
| |
| - QMenuBar |
| * Native menus are handled properly even when application has multiple |
| QMainWindows. |
| * Fixed a bug causing both native and qt menu to be created. |
| * Fix for disappearing options menu after coming back from dialog. |
| |
| - QNativeSocketEnginePrivate (non-public) |
| * Socket connect and listen failure is indicated in exception set. |
| (Workaround to Open C bug) |
| |
| - QNetworkInterface |
| * Fixed R-handle leak in Symbian version of qnetworkinterface_unix.cpp. |
| * Introduced a new qnetworkinterface_symbian.cpp, because there wasn't |
| really anything common to UNIX equivalent. |
| |
| - QPixmap |
| * Added fromSymbianCFbsBitmap() and toSymbianCFbsBitmap(). |
| |
| - QPlainTextEdit |
| * Added support for virtual keyboard. |
| |
| - QPluginLoader |
| * QPluginLoader will look for plugin stubs from the same folder on other |
| drives if it can't find them from the indicated drive. |
| |
| - QS60Style |
| * Added subElementRect implementation for SE_ItemViewItemCheckIndicator. |
| * Added support for E90 layouts. |
| * Added support for QScrollArea, QTextEditor, QGroupBox, QTreeView, |
| QToolBar and QDial styling. |
| * Better support for theme and layout changes. |
| * Better support for themed palettes and themed text colors. |
| * Better support for multiselection in item views. |
| * Better theming for QTable and QPanel. |
| * Better support of highlight graphics and texts for QLists, QTreeViews, |
| QCalendarWidgets and QComboBoxes. |
| * Support polishing fonts. Fonts are no longer changed within the drawing |
| code. |
| * Draw spinbox arrowbuttons side-by-side, instead one on top of the other. |
| * Harmonize widget drawing so that widgets are of similar height. |
| * Support check states for QLists and QPushButtons. |
| * Support flat QPushButtons. |
| * Support busy indicator. |
| * Support QScrollBar pressed state. |
| * Support QPushButton disabled theme graphics. |
| * Separate theme background for QDialogs. |
| * Clarify QToolButton pressed state. |
| * Removed linedrawing of panels and groupboxes. |
| * Fix palette-polution for a style that is activated from an application |
| after S60Style has been in use. |
| * Fix for frame masks with color depth other than EGrey2. |
| * Fix for squeezed QTabBars. |
| * Fix memory leak when color skinning graphics. |
| * Show focus/Editfocus visualization for KeyPad navigation on |
| SDK 3 FP 1 and FP 2. |
| * Fix for overwriting user specified palettes. |
| |
| - QSelectThread (non-public) |
| * We force monitoring sockets exception status as well, and not |
| just read/write. |
| * Notification related to the particular socket signaled via exception |
| fd_set will be mapped to the appropriate read/write notification. |
| |
| - QTemporaryFile |
| * Fixed temporary file rename in Symbian OS. |
| |
| - QTest |
| * Disable keypad navigation for autotests by default |
| |
| - QTextEdit |
| * Added support for virtual keyboard. |
| |
| - QThread |
| * Fixed thread termination in Symbian OS. |
| |
| - QUdpSocket |
| * Updated BindFlag documentation to reflect behaviour on Symbian OS. |
| * Wrote hack for QUdpSocket::writeDatagram return value in Symbian OS. |
| |
| - QWidget |
| * Added API for setting softkeys. |
| * Fixed background painting. Background can now be overwritten from |
| setting the respective palette role. |
| * Add support for Qt::WA_TranslucentBackground. |
| |
| - Many classes |
| * Improved exception safety. |
| |
| **************************************************************************** |
| * Examples and demos * |
| **************************************************************************** |
| |
| - Anomaly browser |
| * Added to demonstrate QtWebkit usage. |
| |
| - Deform, Pathstroke, and Wiggly |
| * Removed Symbian specific animation timer fixes since more generic |
| fix was made to event dispatcher. |
| |
| - DesktopServices |
| * Implemented content filters for desktopservices example. |
| * Added error handling to qdesktopservices example when openUrl fails. |
| |
| - Drilldown |
| * Added to demonstrate QtSql usage in Symbian OS. |
| |
| - Fluidlauncher |
| * Removed ugly workaround to make emulator deployment work correctly, |
| since the issue has been fixed in qmake. |
| * Included drilldown to demonstrate QtSql usage. |
| * Updated screenshots to S60 style. |
| * Added softkeys example. |
| * Added Anomaly browser to fluidlauncher. |
| |
| - Ftp |
| * Enabled default IAP setting for FTP example. |
| * IAP dialog will show after FTP UI is on screen. |
| * If active IAP exist that one will be used. |
| |
| - SecureSocketClient |
| * Fixed build issue caused by lack of cursor. |
| |
| - Softkeys |
| * New example showing how to use softkeys API in QWidget. |
| |
| **************************************************************************** |
| * Tools * |
| **************************************************************************** |
| |
| - configure |
| * -cetest is no longer a supported switch for configure. |
| * -stl option is enabled by default for Symbian OS |
| * -openssl option is enabled by default for Symbian OS. |
| * -fpu option enables vfpu type selection for ARM targets. |
| |
| - qmake |
| * Support for generating Symbian "test" targets: CONFIG += symbian_test. |
| * Support for Symbian Build System, version 2 (aka Raptor) via |
| symbian-sbsv2 mkspec. |
| * PAGED keyword is added to all MMP files by default, except in S60 3.1 |
| builds. |
| * Read-only flag is no longer preserved when deploying files into |
| emulator environment. |
| * Changed the timestamp to ISO format in all files generated |
| by qmake for symbian-* mkspecs. |
| * Qt's VERSION variable will now generate VERSION keyword in mmp files. |
| * Made Open C include paths handling bit more robust. |
| * Support both Symbian Foundation header structure in /epoc32/include, |
| as well as old Symbian/S60 structure |
| |
| - Release package creation |
| * Removed the obsolete script to create release package. |
| |
| - Createpackage script |
| * Now creates packages with .sis suffix. |
| |
| - Patch_capabilities script |
| * Will now patch also vendor id in binaries and the UID in the pkg file. |
| |
| |
| **************************************************************************** |
| * Documentation * |
| **************************************************************************** |
| |
| - qmake-manual |
| * 250370: Added documentation for ICON keyword. |
| |
| **************************************************************************** |
| * Plugins * |
| **************************************************************************** |
| |
| - S60 version specific plugins |
| * Isolated S60 version dependent functionality to S60 version specific |
| plugins (qts60plugin_x_y.dll) to make it possible for single build to |
| run on any supported device, even if with reduced functionality on |
| some. |
| |
| **************************************************************************** |
| * Important Behavior Changes * |
| **************************************************************************** |
| |
| - Qt libs |
| * Qt libs are now built with "All -Tcb" capabilities always. It is now |
| always necessary to run patch_capabilities.pl script if self-signing |
| of Qt libs is desired. |
| * QtCore and QtSql made UNPAGED when installed via SIS file as a |
| workaround for an obscure crash when they are paged. |
| * qt_libs.pro updated to reflect Open C dependencies, as Qt requires |
| 1.5.0 and newer release. |
| * Qt libs are now build with the "STDCPP" mmp flag. On platforms from |
| TB9.2, Qt code will throw std::bad_alloc exceptions on allocation |
| failure. |