Qt 4.5.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 4.5.1. For more details,
refer to the online documentation included in this distribution. The
documentation is also available online:

  http://qt.nokia.com/doc/4.5

The Qt version 4.5 series is binary compatible with the 4.4.x series.
Applications compiled for 4.4 will continue to run with 4.5.

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.

****************************************************************************
*                           General                                        *
****************************************************************************

General Improvements
--------------------

- Documentation and Examples
   * Added a new example (fancy browser) which shows how to use jQuery
     in QtWebKit.


****************************************************************************
*                          Library                                         *
****************************************************************************

- QtDBus
   * [236955] Fixed an issue that would cause QtDBus to crash when
     relaying a signal emitted from a class under certain conditions.

- QtOpenGL
    * [247083] Re-enabled anti-aliasing for large font sizes in OpenGL paint
      engine.
    * [251485] Fixed crash that could occur with projective transforms and
      high quality antialiasing.
    * [253468] Fixed a crash in the GL 2 paint engine that could occur
      when drawing text.

- QtWebKit
   * Backported fixes for critical bugs, memory leaks, and crashes from
     WebKit trunk (with revision numbers) related to:
       Canvas (r40546, r41221 r41355, r42996, r43645)
       Memory (r41527, r43764, r43828, r43830)
       JavaScript (r39882, r40086, r40131, r40133)
       Rendering (r41285, r41296, r41659, r42887)
       Network (r41664, r42516, r42747)
       Plugins (r41346, r43550, r43915, r43917, r43923)
       Clipboard (r41360)
       SVG (r43590, r43795)
   * Backported various security fixes (r41262, r41568,
       r41741, r41854, r42081, r42216, r42223, r42333,
       r42365, r42532, r42533, r44010)


- QAbstractItemView
    * [250754] Changing the font of the view did not update the size of the
      items if there was an application style sheet.
    * [252532] Pressing enter in a QPlainTextEdit embedded in an item view
      now inserts a newline

- QAbstractNetworkCache
   * Only cache responses to HTTP GET by default, not HTTP PUT or POST.

- QApplication
   * [249589] Fixed bug that prevented any part of the application from
     receiving focus when Graphics View was disabled using
     QT_NO_GRAPHICSVIEW.

- QByteArrayMatcher
    * [251958] Assignment operator and copy constructor miss data.

- QComboBox
   * [253944] Changing the style doesn't reset custom item delegate anymore.
   * [254589] Fixed the frame appearing if setting a style sheet with a
     border on the embedded item view while there is a style sheet on the
     application.

- QCompleter
    * [253125] QCompleter doesn't expand entries with
      UnfilteredPopupCompletion.

- QCssParser
    * [252311] "font-family:" now handle fallback font specified with a
      comma-separated list.

- QDir
   * Fix reentrancy (listing directories in different threads)

- QFile and QTemporaryFile
    * Fixed a leak of file descriptors in QTemporaryFile::rename,
      introduced in 4.5.1
    * [165920] QFile::copy leaves the source file open after the file has
      been copied.
    * [191467] & [252293] QFile::copy of resource files to the file system
      fails on Windows.
    * [197857] QFile::copy of resource files leaves temporary files on
      file system.
    * [248223] QTemporaryFile: Access denied error when (re-)opening through
      QFile interface.
    * [252659] QTemporaryFile::rename may leave source file behind.

- QFileSystemModel
   * [254701] QFileSystemModel doesn't sort subfolders when being used in a
     QTreeView.
   * [251295] Windows path names incorrectly constructed in calls to
     updateIcon().

- QFileDialog
   * [251341] It is not possible to remove a directory in the sidebar if the
     directory does not exist.
   * [251321] Hidden path in QFileDialog's sidebar cannot be opened.
   * [226483] setSidebarUrls() handles the URLs case sensitively so that
     adding the same directory twice is possible - Windows.
   * [252068] QFileDialog with QSortFilterProxyModel crashes.
   * [254490] QFileDialog selectFile() doesn't clear the selection if we
     call it several times.

- QFontDialog
    * [252000] Ensure that QFontDialog::getFont() works on Mac OS X.

- QGraphicsItem
    * [197802] Don't show children when parent is not visible
    * [252913] QGraphicsItem::setOpacity(0.0) does not trigger an update

- QGraphicsView
    * [253415] Reset the 'connectedToScene' flag when changing the scene of a view

- QGraphicsWidget
    * Fixed a bug with Qt::WidgetWithChildren shortcut context.

- QGtkStyle
    * [250731] Fixed a build issue with glib version lower than 2.3.2
    * [254342] Fixed a potential crash when system theme changes occur.
    * [254614] Fixed an assert or warning related to GtkEntry focus handling 
    reported with certain versions of GTK+.

- QLocalSocket
   * [247144] Correctly handle remote disconnects.

- QMacStyle
    * [253339] Don't draw arrows on tool buttons that have a menu and text
      only.
    * [252301] Ensure that small and mini spin boxes are drawn correctly.

- QMotifStyle
    * Fix crash when changing style and destroying progress bar.

- QNetworkAccessManager
   * [248838] Make QNetworkAccessManager reject invalid HTTP input
     earlier.

- QNetworkCookie
   * [251959] Fixed parsing of multiple cookies separated by a newline.

- QNetworkCookieJar
   * [251467] Do not allow cookies for domains like ".com".
   * [228974] Allow cookies whose domain attribute is missing a leading
     dot.

- QObject
    * Fixed possible race condition if two QObject connected together with
      signals and slots are destroyed in different threads.

- QPainter
    * [253783] Fixed text shaping bugs when using ligatures and different
      scripts in a single text item.
    * Fixed various inconsistencies for image drawing on non-integer
      coordinates.
    * Fixed bug with 0-opacity causing images to be drawn fully opaque.
    * Fixed crash when drawing on a null pixmap.
    * [251534] Fixed issue where text with non-opaque color from widget
      palette would be blitted instead of blended.
    * [253663] Fixed an issue with implicitly closed poly lines when using
      perspective transforms.

- QPrintDialog
    * [253135] Crash in QPrintDialog when editing output filename.
    * [252873] Fixed an issue that could cause QPrintDialog to invalidate
      a valid QPrinter object.
    * [224728] Fixed an issue under X11 where QPrintDialog didn't update
      the print-to-file state if it was passed a QPrinter set up to
      print PDF or PostScript.

- QPrinter
    * [252873] Fixed an issue with QPrinter::NativeFormat printers not
      being valid.
    * [248881] Fixed an issue under Windows where QPrinter::pageRect()
      returned the wrong rect when QPrinter::fullPage() was set.
    * [199271] Fixed an issue with QPrinter::setPrinterName()/printerName()
      on Mac.

- QProgressBar
    * [252283] Fixed busy indicator for a QProgressBar with a style sheet
      applied to it.

- QSelectionModel
   * [252069] Fix QSelectionModel::rowIntersectsSelection or
     QSelectionModel::columnsIntersectsSelection not reporting right result
     if some items are disabled.

- QSortFilterProxyModel
    * [250023]  Fixes QSortFilterProxyModel not reporting child if the model
      needs to fetchMore().
    * [251296] In dynamic filter model, children of temporarily filtered
      items were not correctly updated.
    * [252507] Show a warning instead of crashing if invalid indexes are
      passed.
    * [254234] Fixed setDynamicSortFilter not working when setting the model
      initially.

- QString
    * Fixed reentrancy of QString::squeeze().

- QSvg
    * [253614] Fixed an issue with parsing the 'stroke-dasharray' SVG
      attribute.

- QSvgIconEngine
    * [251106] Fixed an issue that caused QIcon::actualSize() to reparse
      the SVG file for each acutalSize() call until QIcon::pixmap() was
      called.
    * [248848] Fixed an issue that would cause QIcon::pixmap() to reparse
      the SVG file, even though there was a cached pixmap for that size
      available.

- QTabBar
    * [252472] Fixed problem with the current tab not being visible after
      calling setTabButton() on a scrolled tab bar.

- QToolButton
    * [252554] Fixed a problem where text labels would be partially clipped 
    when using Qt::ToolButtonTextUnderIcon.

- QTransform
    * Fixed issue in QTransform::type() causing a projective transform to be
    treated as a scaling transform.

- QVector
    * Fixed reentrancy of QVector::reserve().

- QWidget
    * [250668] Don't send extra wheel events when using the scroll wheel in
      Cocoa.
    * [253448] Prevent a crash when using the Qt::WA_MacBrushedMetal
      attribute in conjunction with style sheets.

- QWizard
    * [252662] Fixed crash that could happen when compiling on Windows XP
      and running on older Windows versions like 98 and 2000.

****************************************************************************
*                      Platform Specific Changes                           *
****************************************************************************

Qt for Linux/X11
----------------
[253186] Fixed compile error in qfontengine_ft.cpp on 64-bit platforms with
         legacy FreeType headers.
[241361] Prevented asynchronous access to non-thread safe libfontconfig API.
[244362] Worked around X server crash when calling XFillPolygon with more
         than 200000 points by falling back to raster paint engine.
[250326] Title bar wasn't shown on X11 with Qt::CustomizeWindowHint for
         fixed-size windows.
[251925] Improved showing QMessageBox on small screens.
[252042] Fixed the loading of the OpenSSL libraries on OpenBSD.
[255311] Fixed an issue with '-graphicssystem raster' on 8 and 16 bit X
         servers.
[252328] Fixed an issue when rendering old XLFD fonts on X11 with Xrender
         and Fontconfig enabled.
[248720] Fixed an issue with using '-graphicssystem raster' on X servers
         with BGR color layout.
[196152] Fixed a problem with QPixmap::toImage() on big endian systems that
         would cause the R and B channels to be swapped for 32 bit pixmaps.
[251928] Made the file dialog show suffixes if no filter name is provided 
         when using the GTK+ file dialog.  

Qt for Windows
--------------

Fixed an issue with text rendering in 16 bit mode.

[246196] Fixed an issue with clipped glyphs when rendering text with
         certain fonts.
[251259] Switching to another application left text cursor in line edits
         with QtMfc framework.
[253367] Fixed a memory leak when loading system icons on Windows.


Qt for Mac OS X
---------------
[252795] Ensure that we send Apple Events in the Cocoa port even when Cocoa
         isn't ready.
[252176] Fix regression in drawing parts of pixmaps on Panther.
[253402] Fix a crash when a Cocoa window that used to be a QWidget would get
         events after the QWidget was destroyed.
[249178] Fixed an issue with drawing text to QImages on Mac/Cocoa.
[250066] Fixed an issue that caused reparenting of QGLWidgets to output
         warnings on Mac/Cocoa.

Qt for Windows CE
-----------------
[248846] Handle the back soft key on Windows mobile.
[252319] Fix regression in native menu integration.
[242484] Fixed crash if Qt::WindowCancelButtonHint is used for a QDialog.

****************************************************************************
*                          Tools                                           *
****************************************************************************

- Build System
    * [253053] Linker in macx-g++42 spec is gcc instead of gcc-4.2.

- Designer
   * [248769] Fixed a bug affecting the display of keyboard shortcuts in
     the detailed view of the action editor.
   * [251092] Fixed a bug preventing entering local file names for QUrl-type
     properties on Windows.
   * [251691] Fixed dynamic re-translation of table headers.
   * [252251] Improved readability of the property editor when using the
     KDE Obsidian Coast theme.
   * [253236] Fixed a regression bug triggered by forms with a size policy
     of 'Fixed' on the main cointainer.
   * [253278] Made it possible to set QString-type properties using
     QDesignerFormWindowCursor::setProperty().
   * [253539] Prevent crash in Designer with the Cocoa port when when using
     a scroll wheel to change a property.
   * [252333] Fixed a regression crash in uic triggered when icon was set
     with different modes than normal off.
   * [252414, 252416, 252502] Fixed a crash in case of setting invalid point
     size of font property in property editor.

- uic
  * [252333] Fixed a regression crash triggered by using icons with
    different pixmaps for QIcon states.


****************************************************************************
*                          Plugins                                         *
****************************************************************************

- DirectFB
  * Make sure we pick an appropriate format for pixmaps. E.g. use the same as
    the primary surface for opaque pixmaps and pick an appropriate one for
    transparent pixmaps if the primary surface format is not transparent.
  * Properly fall back to the raster engine for pens that aren't solid color.
  * Properly fall back to raster engine with "mirrored" scales.
  * Make sure window surfaces are in the appropriate pixel format and created
    in video memory if supported.
  * Fix clipping bug that would cause painting errors.
  * Fix various crash bugs.
  * Fix bugs when transforming/copying pixmaps with alpha channel.
  * Fix various bugs with regards to painting with alpha channel/porter
    duff.
  * Optimize a couple of internal functions to slightly speed up drawing.
  * Optimize raster fall backs.
  * Allow more customization for Flipping options.
  * Fix drawing with opacity != 1.0.
  * Support for better logging when trying to debug performance problems.
  * Fix bug in keyboard handling that caused modifiers not to work.
  * Get rid of some compiler warnings.

