1Qt 4.5.2 is a bug-fix release. It maintains both forward and backward
2compatibility (source and binary) with Qt 4.5.1. For more details,
3refer to the online documentation included in this distribution. The
4documentation is also available online:
5
6  http://qt.nokia.com/doc/4.5
7
8The Qt version 4.5 series is binary compatible with the 4.4.x series.
9Applications compiled for 4.4 will continue to run with 4.5.
10
11Some of the changes listed in this file include issue tracking numbers
12corresponding to tasks in the Task Tracker:
13
14  http://qt.nokia.com/developer/task-tracker
15
16Each of these identifiers can be entered in the task tracker to obtain more
17information about a particular change.
18
19****************************************************************************
20*                           General                                        *
21****************************************************************************
22
23General Improvements
24--------------------
25
26- Documentation and Examples
27   * Added a new example (fancy browser) which shows how to use jQuery
28     in QtWebKit.
29
30
31****************************************************************************
32*                          Library                                         *
33****************************************************************************
34
35- QtDBus
36   * [236955] Fixed an issue that would cause QtDBus to crash when
37     relaying a signal emitted from a class under certain conditions.
38
39- QtOpenGL
40    * [247083] Re-enabled anti-aliasing for large font sizes in OpenGL paint
41      engine.
42    * [251485] Fixed crash that could occur with projective transforms and
43      high quality antialiasing.
44    * [253468] Fixed a crash in the GL 2 paint engine that could occur
45      when drawing text.
46
47- QtWebKit
48   * Backported fixes for critical bugs, memory leaks, and crashes from
49     WebKit trunk (with revision numbers) related to:
50       Canvas (r40546, r41221 r41355, r42996, r43645)
51       Memory (r41527, r43764, r43828, r43830)
52       JavaScript (r39882, r40086, r40131, r40133)
53       Rendering (r41285, r41296, r41659, r42887)
54       Network (r41664, r42516, r42747)
55       Plugins (r41346, r43550, r43915, r43917, r43923)
56       Clipboard (r41360)
57       SVG (r43590, r43795)
58   * Backported various security fixes (r41262, r41568,
59       r41741, r41854, r42081, r42216, r42223, r42333,
60       r42365, r42532, r42533, r44010)
61
62
63- QAbstractItemView
64    * [250754] Changing the font of the view did not update the size of the
65      items if there was an application style sheet.
66    * [252532] Pressing enter in a QPlainTextEdit embedded in an item view
67      now inserts a newline
68
69- QAbstractNetworkCache
70   * Only cache responses to HTTP GET by default, not HTTP PUT or POST.
71
72- QApplication
73   * [249589] Fixed bug that prevented any part of the application from
74     receiving focus when Graphics View was disabled using
75     QT_NO_GRAPHICSVIEW.
76
77- QByteArrayMatcher
78    * [251958] Assignment operator and copy constructor miss data.
79
80- QComboBox
81   * [253944] Changing the style doesn't reset custom item delegate anymore.
82   * [254589] Fixed the frame appearing if setting a style sheet with a
83     border on the embedded item view while there is a style sheet on the
84     application.
85
86- QCompleter
87    * [253125] QCompleter doesn't expand entries with
88      UnfilteredPopupCompletion.
89
90- QCssParser
91    * [252311] "font-family:" now handle fallback font specified with a
92      comma-separated list.
93
94- QDir
95   * Fix reentrancy (listing directories in different threads)
96
97- QFile and QTemporaryFile
98    * Fixed a leak of file descriptors in QTemporaryFile::rename,
99      introduced in 4.5.1
100    * [165920] QFile::copy leaves the source file open after the file has
101      been copied.
102    * [191467] & [252293] QFile::copy of resource files to the file system
103      fails on Windows.
104    * [197857] QFile::copy of resource files leaves temporary files on
105      file system.
106    * [248223] QTemporaryFile: Access denied error when (re-)opening through
107      QFile interface.
108    * [252659] QTemporaryFile::rename may leave source file behind.
109
110- QFileSystemModel
111   * [254701] QFileSystemModel doesn't sort subfolders when being used in a
112     QTreeView.
113   * [251295] Windows path names incorrectly constructed in calls to
114     updateIcon().
115
116- QFileDialog
117   * [251341] It is not possible to remove a directory in the sidebar if the
118     directory does not exist.
119   * [251321] Hidden path in QFileDialog's sidebar cannot be opened.
120   * [226483] setSidebarUrls() handles the URLs case sensitively so that
121     adding the same directory twice is possible - Windows.
122   * [252068] QFileDialog with QSortFilterProxyModel crashes.
123   * [254490] QFileDialog selectFile() doesn't clear the selection if we
124     call it several times.
125
126- QFontDialog
127    * [252000] Ensure that QFontDialog::getFont() works on Mac OS X.
128
129- QGraphicsItem
130    * [197802] Don't show children when parent is not visible
131    * [252913] QGraphicsItem::setOpacity(0.0) does not trigger an update
132
133- QGraphicsView
134    * [253415] Reset the 'connectedToScene' flag when changing the scene of a view
135
136- QGraphicsWidget
137    * Fixed a bug with Qt::WidgetWithChildren shortcut context.
138
139- QGtkStyle
140    * [250731] Fixed a build issue with glib version lower than 2.3.2
141    * [254342] Fixed a potential crash when system theme changes occur.
142    * [254614] Fixed an assert or warning related to GtkEntry focus handling
143    reported with certain versions of GTK+.
144
145- QLocalSocket
146   * [247144] Correctly handle remote disconnects.
147
148- QMacStyle
149    * [253339] Don't draw arrows on tool buttons that have a menu and text
150      only.
151    * [252301] Ensure that small and mini spin boxes are drawn correctly.
152
153- QMotifStyle
154    * Fix crash when changing style and destroying progress bar.
155
156- QNetworkAccessManager
157   * [248838] Make QNetworkAccessManager reject invalid HTTP input
158     earlier.
159
160- QNetworkCookie
161   * [251959] Fixed parsing of multiple cookies separated by a newline.
162
163- QNetworkCookieJar
164   * [251467] Do not allow cookies for domains like ".com".
165   * [228974] Allow cookies whose domain attribute is missing a leading
166     dot.
167
168- QObject
169    * Fixed possible race condition if two QObject connected together with
170      signals and slots are destroyed in different threads.
171
172- QPainter
173    * [253783] Fixed text shaping bugs when using ligatures and different
174      scripts in a single text item.
175    * Fixed various inconsistencies for image drawing on non-integer
176      coordinates.
177    * Fixed bug with 0-opacity causing images to be drawn fully opaque.
178    * Fixed crash when drawing on a null pixmap.
179    * [251534] Fixed issue where text with non-opaque color from widget
180      palette would be blitted instead of blended.
181    * [253663] Fixed an issue with implicitly closed poly lines when using
182      perspective transforms.
183
184- QPrintDialog
185    * [253135] Crash in QPrintDialog when editing output filename.
186    * [252873] Fixed an issue that could cause QPrintDialog to invalidate
187      a valid QPrinter object.
188    * [224728] Fixed an issue under X11 where QPrintDialog didn't update
189      the print-to-file state if it was passed a QPrinter set up to
190      print PDF or PostScript.
191
192- QPrinter
193    * [252873] Fixed an issue with QPrinter::NativeFormat printers not
194      being valid.
195    * [248881] Fixed an issue under Windows where QPrinter::pageRect()
196      returned the wrong rect when QPrinter::fullPage() was set.
197    * [199271] Fixed an issue with QPrinter::setPrinterName()/printerName()
198      on Mac.
199
200- QProgressBar
201    * [252283] Fixed busy indicator for a QProgressBar with a style sheet
202      applied to it.
203
204- QSelectionModel
205   * [252069] Fix QSelectionModel::rowIntersectsSelection or
206     QSelectionModel::columnsIntersectsSelection not reporting right result
207     if some items are disabled.
208
209- QSortFilterProxyModel
210    * [250023]  Fixes QSortFilterProxyModel not reporting child if the model
211      needs to fetchMore().
212    * [251296] In dynamic filter model, children of temporarily filtered
213      items were not correctly updated.
214    * [252507] Show a warning instead of crashing if invalid indexes are
215      passed.
216    * [254234] Fixed setDynamicSortFilter not working when setting the model
217      initially.
218
219- QString
220    * Fixed reentrancy of QString::squeeze().
221
222- QSvg
223    * [253614] Fixed an issue with parsing the 'stroke-dasharray' SVG
224      attribute.
225
226- QSvgIconEngine
227    * [251106] Fixed an issue that caused QIcon::actualSize() to reparse
228      the SVG file for each acutalSize() call until QIcon::pixmap() was
229      called.
230    * [248848] Fixed an issue that would cause QIcon::pixmap() to reparse
231      the SVG file, even though there was a cached pixmap for that size
232      available.
233
234- QTabBar
235    * [252472] Fixed problem with the current tab not being visible after
236      calling setTabButton() on a scrolled tab bar.
237
238- QToolButton
239    * [252554] Fixed a problem where text labels would be partially clipped
240    when using Qt::ToolButtonTextUnderIcon.
241
242- QTransform
243    * Fixed issue in QTransform::type() causing a projective transform to be
244    treated as a scaling transform.
245
246- QVector
247    * Fixed reentrancy of QVector::reserve().
248
249- QWidget
250    * [250668] Don't send extra wheel events when using the scroll wheel in
251      Cocoa.
252    * [253448] Prevent a crash when using the Qt::WA_MacBrushedMetal
253      attribute in conjunction with style sheets.
254
255- QWizard
256    * [252662] Fixed crash that could happen when compiling on Windows XP
257      and running on older Windows versions like 98 and 2000.
258
259****************************************************************************
260*                      Platform Specific Changes                           *
261****************************************************************************
262
263Qt for Linux/X11
264----------------
265[253186] Fixed compile error in qfontengine_ft.cpp on 64-bit platforms with
266         legacy FreeType headers.
267[241361] Prevented asynchronous access to non-thread safe libfontconfig API.
268[244362] Worked around X server crash when calling XFillPolygon with more
269         than 200000 points by falling back to raster paint engine.
270[250326] Title bar wasn't shown on X11 with Qt::CustomizeWindowHint for
271         fixed-size windows.
272[251925] Improved showing QMessageBox on small screens.
273[252042] Fixed the loading of the OpenSSL libraries on OpenBSD.
274[255311] Fixed an issue with '-graphicssystem raster' on 8 and 16 bit X
275         servers.
276[252328] Fixed an issue when rendering old XLFD fonts on X11 with Xrender
277         and Fontconfig enabled.
278[248720] Fixed an issue with using '-graphicssystem raster' on X servers
279         with BGR color layout.
280[196152] Fixed a problem with QPixmap::toImage() on big endian systems that
281         would cause the R and B channels to be swapped for 32 bit pixmaps.
282[251928] Made the file dialog show suffixes if no filter name is provided
283         when using the GTK+ file dialog.
284
285Qt for Windows
286--------------
287
288Fixed an issue with text rendering in 16 bit mode.
289
290[246196] Fixed an issue with clipped glyphs when rendering text with
291         certain fonts.
292[251259] Switching to another application left text cursor in line edits
293         with QtMfc framework.
294[253367] Fixed a memory leak when loading system icons on Windows.
295
296
297Qt for Mac OS X
298---------------
299[252795] Ensure that we send Apple Events in the Cocoa port even when Cocoa
300         isn't ready.
301[252176] Fix regression in drawing parts of pixmaps on Panther.
302[253402] Fix a crash when a Cocoa window that used to be a QWidget would get
303         events after the QWidget was destroyed.
304[249178] Fixed an issue with drawing text to QImages on Mac/Cocoa.
305[250066] Fixed an issue that caused reparenting of QGLWidgets to output
306         warnings on Mac/Cocoa.
307
308Qt for Windows CE
309-----------------
310[248846] Handle the back soft key on Windows mobile.
311[252319] Fix regression in native menu integration.
312[242484] Fixed crash if Qt::WindowCancelButtonHint is used for a QDialog.
313
314****************************************************************************
315*                          Tools                                           *
316****************************************************************************
317
318- Build System
319    * [253053] Linker in macx-g++42 spec is gcc instead of gcc-4.2.
320
321- Designer
322   * [248769] Fixed a bug affecting the display of keyboard shortcuts in
323     the detailed view of the action editor.
324   * [251092] Fixed a bug preventing entering local file names for QUrl-type
325     properties on Windows.
326   * [251691] Fixed dynamic re-translation of table headers.
327   * [252251] Improved readability of the property editor when using the
328     KDE Obsidian Coast theme.
329   * [253236] Fixed a regression bug triggered by forms with a size policy
330     of 'Fixed' on the main cointainer.
331   * [253278] Made it possible to set QString-type properties using
332     QDesignerFormWindowCursor::setProperty().
333   * [253539] Prevent crash in Designer with the Cocoa port when when using
334     a scroll wheel to change a property.
335   * [252333] Fixed a regression crash in uic triggered when icon was set
336     with different modes than normal off.
337   * [252414, 252416, 252502] Fixed a crash in case of setting invalid point
338     size of font property in property editor.
339
340- uic
341  * [252333] Fixed a regression crash triggered by using icons with
342    different pixmaps for QIcon states.
343
344
345****************************************************************************
346*                          Plugins                                         *
347****************************************************************************
348
349- DirectFB
350  * Make sure we pick an appropriate format for pixmaps. E.g. use the same as
351    the primary surface for opaque pixmaps and pick an appropriate one for
352    transparent pixmaps if the primary surface format is not transparent.
353  * Properly fall back to the raster engine for pens that aren't solid color.
354  * Properly fall back to raster engine with "mirrored" scales.
355  * Make sure window surfaces are in the appropriate pixel format and created
356    in video memory if supported.
357  * Fix clipping bug that would cause painting errors.
358  * Fix various crash bugs.
359  * Fix bugs when transforming/copying pixmaps with alpha channel.
360  * Fix various bugs with regards to painting with alpha channel/porter
361    duff.
362  * Optimize a couple of internal functions to slightly speed up drawing.
363  * Optimize raster fall backs.
364  * Allow more customization for Flipping options.
365  * Fix drawing with opacity != 1.0.
366  * Support for better logging when trying to debug performance problems.
367  * Fix bug in keyboard handling that caused modifiers not to work.
368  * Get rid of some compiler warnings.
369
370