1
Qt 4.5.2 is a bug-fix release. It maintains both forward and backward
2
compatibility (source and binary) with Qt 4.5.1. For more details,
3
refer to the online documentation included in this distribution. The
4
documentation is also available online:
5
6
  http://qt.nokia.com/doc/4.5
7
8
The Qt version 4.5 series is binary compatible with the 4.4.x series.
9
Applications compiled for 4.4 will continue to run with 4.5.
10
11
Some of the changes listed in this file include issue tracking numbers
12
corresponding to tasks in the Task Tracker:
13
14
  http://qt.nokia.com/developer/task-tracker
15
16
Each of these identifiers can be entered in the task tracker to obtain more
17
information about a particular change.
18
19
****************************************************************************
20
*                           General                                        *
21
****************************************************************************
22
23
General 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
263
Qt 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
285
Qt for Windows
286
--------------
287
288
Fixed 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
297
Qt 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
308
Qt 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.