dist/changes-4.5.2-tower
changeset 0 1918ee327afb
--- /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.