source: trunk/changes-4.5.1@ 555

Last change on this file since 555 was 2, checked in by Dmitry A. Kuminov, 16 years ago

Initially imported qt-all-opensource-src-4.5.1 from Trolltech.

File size: 21.2 KB
Line 
1Qt 4.5.1 is a bug-fix release. It maintains both forward and backward
2compatibility (source and binary) with Qt 4.5.0. For more details,
3refer to the online documentation included in this distribution. The
4documentation is also available online:
5
6 http://doc.trolltech.com/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://www.qtsoftware.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 printing feature for the Spreadsheet demo.
28 * [245675] Clarified the differences between QItemDelegate and
29 QStyledItemDelegate.
30 * [248752] Marked QPrintDialog::printer(), setPrinter() and addButton()
31 as Unix only functions, part of Qt3Support.
32
33- Embedded Dialogs demo
34 * [246517] Fixed warnings and bugs in hover handling on Mac OS X
35
36
37Optimizations
38-------------
39
40- Graphics View Framework has been optimized in several areas
41 * Improved the performance of QGraphicsItem::clipPath().
42 * Improved the performance of QGraphicsItem::setPos().
43 * Improved the performance of QGraphicsItem::effectiveOpacity().
44 * Improved the performance of QGrahicsScene::items(*).
45 * Improved handling of updates.
46 * Reduced the number of floating point operations.
47 * Reduced QVariant overhead.
48
49Third party components
50----------------------
51
52
53****************************************************************************
54* Library *
55****************************************************************************
56
57- QAbstractItemModel
58 * Clarified some warning messages printed if the model is invalid.
59
60- QAbstractEventDispatcher
61 * [248805] Duplicate timerids could occur if a timer is running while the
62 QObject is moved to another thread, stopping timers from working.
63
64- QAbstractSocket
65 * [192037] Emit the disconnected signal only if we were connected before.
66
67- QAccessible
68 * [221731] Fixed a bug where the accessibility plugin could crash if
69 there was an "&" at the end or spin forever if a label had a sequence of
70 "&&".
71 * [241161] Fixed a bug in browsing menus with the keyboard.
72
73- QAtomicInt
74 * [216492] Fixed compilation on 64-bit PowerPC machines with gcc 4.3.
75
76- QAuthenticator
77 * [237979] Fixed implementation of md5-sess.
78
79- QByteArray
80 * [246233] QByteArray::fromHex() fails with input of size 1.
81
82- QColorDialog
83 * [247349] Fixed a bug causing the wrong alpha value to be returned.
84
85- QCombobox
86 * [248094] Fixed scrollbar from appearing when not required.
87
88- QCompleter
89 * [246056] Fixed an assertion failure in setCompletionPrefix().
90 * [250064] Fixed a regression in focus policy propagation.
91
92- QtConcurrent
93 * [244718] Reduced the number of calls to QThread::idealThreadCount().
94
95- QDirIterator
96 * [247645] Fixed a bug that may loose all cached data inside QFileInfo.
97
98- QFile
99 * [244485] Renaming a file does not change QFile::fileName().
100 * [244500] QFile::rename() does not always return false when the method
101 fails
102
103- QFileInfo
104 * [205244] Return valid file info also for relative UNC paths.
105
106- QFileDialog
107 * [221323] Fixed a bug in QFileDialog's programmatical file selection.
108 * [248332] QFileDialog is slow after visiting a large directory.
109 * [250194] Fixed an issue with QFileDialog and QSortFilterProxyModel
110 index mapping.
111
112- QGLFramebufferObject
113 * Framebuffer object extension resolution now works with OpenGL/ES 2.0.
114
115- QGraphicsItem
116 * Fixed a slow down regression in QGraphicsItem::ItemCoordinateCache.
117 * [247890] Cached QGraphicsItems are not updated if update() is called
118 when they are hidden.
119 * [250272] Fixed a crash that could occur when an item is deleted but
120 it does not get removed from the sceneeventfilters.
121
122- QGraphicsGridLayout
123 * [242472] Fixed a bug where the calculation of the maximum width of a
124 column was incorrect.
125
126- QGraphicsScene
127 * [243707] Fixed a crash when adding a child before a parent to the
128 scene.
129
130- QGraphicsView
131 * [245766] Rubber Band drag mode does not update correctly when
132 scrolling.
133
134- QGraphicsWidget
135 * [246215] Fixed a regression where we could cache the wrong size hint
136 because we called the virtual sizeHint() from the constructor.
137
138- QHttp
139 * Compile fixes for QT_BEGIN_NAMESPACE being in the wrong place in some
140 private headers.
141 * [208445] Cancel request upon receiving unknown authentication method.
142
143- QHostAddress
144 * [247330] Fixed compilation on MinGW by adding a missing QPair include.
145
146- QLocalSocket
147 * Fixed a bug that would cause QLocalSocket to disconnect 30 seconds
148 after a succesful delayed connection on UNIX.
149
150- QMacStyle
151 * Adjusted the opacity value for popups.
152 * [248769] Fixed a regression where QMacStyle would only draw tabs when
153 passed a QStyleOptionTabV3.
154
155- QMainWindow
156 * [248048] Fixed a regression that would cause tooltips to disappear when
157 using the unified toolbar.
158
159- QMetaType
160 * [248890] The detailed description of QMetaType no longer contradicts
161 the documentation of QMetaType::type()
162
163- QMutex
164 * Fixed a performance regression for contended mutexes as reported on the
165 qt4-preview-feedback list.
166
167- QPainter
168 * Compile fixes for OpenGL paint engine on OpenGL/ES 1.1 CommonLite and
169 OpenGL/ES 1.0.
170 * [246573] Fixed a very slow stroking of paths in the X11 paint engine.
171 * [247083] Fixed the scale applied to antialiased cosmetic pens in X11
172 paint engine.
173 * [247492] Fixed a rendering bug in the raster paint engine causing
174 * [247505] Fixed missing fills of rectangles with negative width/height
175 in raster paint engine.
176 one-pixel offset when drawing premultiplied ARGB32 images on RGB16
177 images.
178 * [249490] Fixed one-pixel offset between stroke and fills of ellipses in
179 the X11 paint engine.
180 * [249628] Fixed a crash in OpenGL paint engine when filling using
181 Qt::NoBrush.
182
183
184- QPixmap
185 * [249175] Fixed QPixmap::fromImage() of monochrome images to result in
186 black/white pixels and not transparent/white pixels.
187
188- QProcess
189 * [247865] Fixed a crash when calling QProcess::start() and
190 startDetached() with an empty program string.
191
192- QScrollBar
193 * [247985] Stylesheet: added the feature to style scrollbar menus.
194
195- QSharedPointer
196 * [246843] Fixed a crash caused by using QSharedPointer in global statics.
197
198- QSortFilterProxyModel
199 * [247867] Properly sort when calling appendRows().
200 * [248868] Re-sort when the model is reset if dynamicSort is enabled.
201 * [248868] Fixed QSortFilterProxyModel::sort() if dynamicSort was disabled.
202
203- QSSlSocket
204 * [245668] Set also protocol, verifyMode and verifyDepth in
205 setSslConfiguration().
206
207- QString
208 * [249517] Fixed a regression in replace(int, int, QChar) when the string
209 is empty.
210
211- QStyleSheetStyle
212 * Improved support for setting background and foreground roles in styles
213 such as the text color in a combo box popup on Mac and Cleanlooks, or
214 the background of QScrollBar.
215 * Fixed a crash that occured while styling the title bar of a QMdiArea.
216 * [188195] Fixed the background of QAbstractScrollArea losing its color
217 if styled with pseudo-class.
218 * [246542] Fixed a bug in QToolButton::hover{ color:.... }.
219
220- QThread
221 * [249997] Added documentation indicating that the priority set by the
222 programmer may be ignored, for example on Linux.
223
224- QTreeView
225 * Fixed a crash that may occur when events are processed immediately
226 after a QSortFilterProxyModel is invalidated.
227 * [246025] Fixed auto-expand that occured when quickly collapsing an item
228 after clicking on a child.
229 * [248163] Fixed a possible crash in the paintEvent() when spans are used.
230 * [248805] Calling QTreeView::sortByColumn() programmatically was not
231 working if manual sorting was disabled.
232
233- QWidget
234 * [250388] Fixed a potential crash in QWidget::scroll() when using the
235 raster graphics system.
236
237- QWidget
238 * [246852] Improved handling of WindowMaximizeButtonHint for widgets with
239 layouts.
240
241-QLocale
242 * String-to-number conversion functions will now ignore trailing and
243 leading whitespaces in all locales as documented.
244
245- QWizard
246 * [248107] Fixed a bug on Windows Vista causing the Back button to
247 connect to the back() signal twice.
248
249- Q3ListView
250 * [248689] Fixed a bug in Q3ListView that would not update under certain
251 conditions.
252
253- QtWebKit
254 * Fixed a bug in cookie handling (WebKit Bugzilla 24062, Benjamin Meyer).
255 * Fixed a bug in calling from JavaScript into NPAPI plugins on Windows.
256 * Fixed the updating state of WebActions (Erik Bunce)
257 * Fixed a bug in HTML 5 Canvas clearRect() (Dirk Schulze)
258 * Fixed the theming of text fields with KDE 4 Oxygen style (Zack Rusin)
259 * Fixed path fill styles (Zack Rusin)
260 * Fixed pre-edit text handling with input methods.
261 * [248643] Fixed compiling with the "-pedantic" compile option.
262
263- QSqlTableModel
264 * Made setTable() try and use the database's letter case (uppercase/
265 lowercase) of the given tablename.
266 * [189093] QSqlTableModel did not handle updates when one of the fields
267 had a NULL value.
268
269****************************************************************************
270* Database Drivers *
271****************************************************************************
272
273 * Fixed the DB2 driver returning a double field as empty.
274 * Fixed a memory leak in the DB2 driver.
275 * Fixed the DB2 driver not quoting table/field names properly.
276 * Fixed an issue with ODBC & FreeTDS not accepting quotes in statements.
277 * Fixed a bug in the sqlite2 driver not returning false on failing to
278 execute a statement.
279 * PrecisionPolicy now works in the oracle driver.
280 * Fixed a bug in the ODBC driver returning a list of tables when
281 requested.
282 * Fixed Interbase retrieving scale/precision information on numeric/
283 decimal fields.
284 * Stopped drivers from quoting again when escapeIdentifier is called
285 twice.
286 * Fixed a bug in the sqlite2 driver not quoting fields correctly.
287 * [232769] Fixed a memory overflow issue on bound out strings in ODBC
288 Driver
289 * [249059] Fixed a bug that handled QPSQL datetime/time fields with
290 negative timezone offsets incorrectly.
291
292****************************************************************************
293* Platform Specific Changes *
294****************************************************************************
295
296Qt for Linux/X11
297----------------
298
299 * Ensured proper resetting for input contexts when switching between
300 multiple input context plugins.
301 * Input methods preedit strings are now reset properly when user switches
302 focus without commiting a string.
303 * Unicode conversion functions will handle Latin-1 character set only if
304 they are used before a QCoreApplication/QApplication is constructed.
305 * Improved handling of failed unicode conversion.
306 * Fixed clipboard handling when the user manually creates an instance of
307 the QDesktopWidget.
308 * [226048] Ensured that the QDesktopWidget::resized() signal is emitted
309 properly when a new screen appears or the screen geometry is changed
310 without affecting the whole desktop's geometry.
311 * [232632] Fixed a bug in reparenting widgets to a difference X11 screen.
312 * [241888] The background of the drag-n-drop cursor is now respected,
313 according to the stylesheet.
314 * [244337] Improved input method handling when a widget's native window
315 id is recreated.
316 * [244607] Current focus widget is properly set and input method is
317 properly initialized when showing a toplevel widget that accepts
318 keyboard input.
319
320- Phonon/GStreamer
321 * [233188] Fixed a problem where the seek slider reset to 0 while being
322 dragged.
323 * [244259] Fixed a problem where the backend failed to indicate an error
324 when the streaming failed.
325 * [246097] Added support for the MediaController interface to allow audio
326 CD playback.
327 * [246189] Fixed a problem where the backend failed to correctly escape
328 certain file names casuing playback to not start.
329
330
331- QGtkStyle
332 * The system palette is no longer strictly forced. Also improved behavior
333 related to system theme changes.
334 * Fixed palette and styling issues with the background color of combo box
335 popups.
336 * [238196] Allowed middle click to set scrollbar position, following GTK+
337 behavior.
338 * [239829] Disabled alt-key navigation for QGtkStyle following GTK+
339 behavior.
340 * [247653] Fixed a compilation issue on Solaris.
341 * [249363] QFrame is now styled as a GtkScrolledWindow.
342
343- Font rendering
344 * Improved performance of subpixel antialiased text rendering by using a
345 mask in the calls to XRender's text compositing function.
346 * [248387] Properly respect the font config LCD filter settings for
347 subpixel antialiased text rendering when Freetype's native subpixel
348 rendering is disabled.
349 * [248498] Fix garbled rendering of subpixel antialiased text when using
350 Freetype's native subpixel rendering for vertical subpixel layouts.
351 * [248644] Fall back to Qt's subpixel rendering if Freetype's subpixel
352 rendering was available at compile-time but not at run-time.
353
354- QEventDispatcherGlib
355 * Event posted to a thread before it is started are not processed until
356 others events are posted.
357
358- QWidget
359 * [213512] Fixed a bug that caused wrong clipping when using the
360 Qt::WA_PaintOutsidePaintEvent attribute.
361
362
363Qt for Windows
364--------------
365
366 * [240891] Corrected the focus behavior of native file dialogs, when an
367 application has multiple toplevel widgets.
368 * [243583] Improved drag-and-drop handling when switching mouse buttons
369 quickly.
370 * [244875] The system menu will now be shown for a fullscreen window.
371 * [245330] Fixed a bug that caused mouse inputs to be ignored on modal
372 dialogs, when shown from an ActiveQt control.
373 * [249576] Fixed a crash when using a combobox with Qt::NoFocus.
374
375
376- QCoreApplication