diff -r 000000000000 -r 1918ee327afb dist/changes-4.5.2-tower --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dist/changes-4.5.2-tower Mon Jan 11 14:00:40 2010 +0000 @@ -0,0 +1,436 @@ +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.