summaryrefslogtreecommitdiffstats
path: root/dist/changes-3.3.3
blob: 8dde96a628384c92726e50ed21dafbb7dd551763 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
Qt 3.3.3 is a bugfix release. It maintains both forward and backward
compatibility (source and binary) with Qt 3.3.2, Qt 3.3.1 and Qt 3.3.0.


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

Compilers
---------
Added support for GNU gcc on AIX 64-bit.

Fixed the issue of some compilers that produced bad output when
compiling qlocale.cpp with -O2.

Fixed include path problem with MinGW.

Meta Object Compiler (moc)
--------------------------
Allow classnames containing the substring 'const' in signal
parameters.

Qt Assistant
------------
Fixed crash when an empty file is part of the profile.

Qt Designer
-----------
Fixed occasional crash when closing the form window.

Fixed bug that removed '@' characters from .pro files.

Fixed bug resulting in invalid code for radio buttons with strong
focus.

Fixed crash when custom widget plugins based on QComboBox were edited or
previewed in certain styles.

Fixed bug in loading enum properties (e.g. slider tickmarks).

Handle comments of the form '# {' correctly.

Handle '$${}' variable expansion correctly.

Fixed missing actions in drop down action groups created with the menu
editor.

Made sure that the item labels for toolboxes can be translated.

Added CTRL + Key_Q as a shortcut to quit.

Do not add unnecessary blank lines in .pro files.


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

General Fixes
-------------
- Drag and drop
	Handle filenames with '#' characters properly.

- QAccel
	Fixed bug where Alt + non-ASCII letter would require an additional
	Shift.

- QButtonGroup
	Don't navigate out of the button group with the arrow keys.

- QComboBox
	Don't close the combobox when holding space down while clicking.
	(Fixes GUI lock-up on Windows.)

- QDateTimeEdit
	Propagate enabled state correctly when adding a QDateEdit/QTimeEdit
	to a disabled parent.

- QDataStream
	Fixed bug involving the output of doubles/floats in printable mode.

- QFileDialog
	Fixed crash when calling setContentsPreview() twice.

- QFontDatabase
	Made Tibetan text work even without OpenType tables.
	When using XLFD fonts, make sure that the size selected actually
	supports the script.
	Fixed bug that caused fixed-pitch XLFD fonts to be reported as
	variable pitch.
	Fixed some issues in the CJK compatibility area, where we did
	not always pick the correct CJK font.
	Made isSmoothlyScalable() work when a font only exists in bold.
	Fixed bug where font metrics for Asian fonts were wrong in some
	circumstances.
	Fixed bug involving certain open source Arabic fonts.

- QFontDialog
	Resize OK/Cancel buttons properly with large font sizes.

- QFtp
	Allow connection to FTP servers that return lower-case month
	names.

- QImage
	Included fix for buffer overflow in libPNG.
	Fixed bug that made copy constructor not copy the entire image.
	Allow XPM images with colors that have more than one word in the
	name.
	Fixed crash when trying to load a corrupt/invalid BMP image.
	Fixed crash when trying to load a corrupt/invalid GIF image.
	Fixed crash when trying to load a JPEG image that is too big.
	Fixed bug that caused dotsPerMeter() to be ignored when saving
        JPEG images.

- QLineEdit
	Fixed memory leak for line edits with masks.
	Fixed bug where QLineEdit::text() would return a null QString when
	an input mask was set on an empty line edit.
	Don't scroll when the text is wider than the widget.

- QListView
	Don't select a non-visible item when Right arrow key is pressed.
	Fixed crash in setOpen(QListViewItem*, bool).

- QLocale 
	Now supports string-to-int conversions with base up to 36.
	Handle space as a separator for large numbers in toDouble().

- QMovie
	Fixed offset bug.

- QPainter
	Don't crash if setWorldMatrix() is called on a painter that is not
	active.

- QPicture
	Fixed bounding rect calculation.

- QPixmap
	Fixed rounding errors in xForm().

- QPopupMenu
	Fixed updateSize().
	Fixed a crash when clearing and inserting new items while the tear
	off is visible.

- QRichText
	Clear the focusIndicator paragraph when clearing the text.
	Fixed bug with <td valign="middle">.

- QSemaphore
	Fixed possible starvation in operator-=().

- QSlider
	Fixed mouse handling for vertical sliders in reverse mode.

- QSocket
	Preserve readBufferSize() when doing connectToHost().

- QSql
	Fixed crash in ODBC-Driver in connection with Informix SE.

- QSqlCursor
	Fixed bug in del(true)

- QSqlQuery
	Fixed thread reentrancy bug.

- QString
	Made toFloat() fail if the number is too large for a float.
	Fixed crash in fromUtf8 when argument is not 0-terminated.
	Don't end up in an endless loop when setLength() is called with a
	ridiculously large value (> 2^31).

- QSvgDevice
	Fixed some clipping issues.

- QTable
	Fixed memory leak in key event handling.
	Fixed bug where calling setNumRows() or setNumCols() would not
	change the sizeHint().
	Improved speed of deleting rows/columns in big tables.

- QTextEdit
	Hide the cursor again when a drag leaves the text edit.
	Don't crash if the text edit is deleted while the popup menu is
	active.
	Fixed undo/redo bug in overwrite mode.
	Fixed crash when entering text in overwrite mode when entire text is
	selected, on a single line, and the cursor is at the start of the
	text.

- QTextEngine
	Fixed a small bug in the bidi engine.
	Fixed two small issues with Bengali rendering.
	Fixed small issue with Khmer rendering.
	Fixed an issue with ideographic space (U+0x3000).

- QThread
	Fixed bug on HP-UX when starting a thread with LowPriority.
	Provide a safety mechanism when trying to use QThreadStorage from
	non-QThread threads: spit out a warning and do nothing.

- QToolBar
	Create a disabled popup menu when a disabled combobox is added to
	the extension menu.

- QWidget
	Fixed bug that would sometimes make showMaximized() fail.

- QWidgetStack
	Set background properly when the current page has a maximum size
	that is less than the size of the QWidgetStack.

- QWorkspace
	Fixed problems involving widgets with size constraints.
	Don't normalize minimized widgets when cascading and tiling.

- QXml
	Speed optimizations.

Platform-Specific Issues
------------------------
Windows:

- Drag and drop
	Ignore drag and drop events for modally shadowed windows.

- Build system
	Fixed qmake problem with QMAKE_EXTRA_WIN_TARGETS.

- QApplication
	Fixed restoring of windows when minimized using something other than
	the window menu.
	When restoring a modally blocked application after using "Minimize
	All Windows" from the task bar, activate the modal dialog rather
	than the blocked window.
	Support Unicode application directories in applicationFilePath()
	independently of the current locale.
	Fixed accelerators with Ctrl+@ and Ctrl+[ to Ctrl+_ instead.

- QAxWidget 
	Fixed bug that could lead to windows no longer responding to mouse
	events.
	Fixed bug that would eat a mouse release event in some cases.

- QFileDialog
	Don't let getOpenFileName() fail immediately, even if passed invalid
	characters.
	Fixed bug that gave spurious mouse move events to other widgets when
	closing a file (or printer) dialog.

- QFontDatabase
	Select correct font when family is empty and style hint is set.
	Fixed problem where Chinese fonts were a pixel smaller than with
	older Qt versions.

- QFtp
	Improved performance by increasing buffer sizes.

- QLocale
	Obtain correct locale information on Win95, so that
	QTextCodec::locale() works properly.

- QPixmap
	Fixed problems when alpha blending in 32bpp depth.

- QPrinter
	Fixed problems caused by printing without first calling setup() when
	using certain printers.

- QSettings
	Fixed bug that would add unnecessary size to the registry on Win98
	in some circumstances.

- QSocket
	Worked around Windows bug which caused bytesAvailable() to be 1,
	even if no data was available.

- QSound
	Removed race condition.

- QTextEngine
	Draw CJK compatibility characters in the 0xffxx range correctly.
	Fixed crash on invalid UTF-8 when using the newest Uniscribe library
	on XP.

- QWidget
	Don't clear the maximized state when moving a maximized window.
	Don't move the widget to a silly position when showMinimized() is
	called on a visible widget.
	Let the size grip respect the same size limits as the window
	manager.
	Fixed bug where a widget with an empty region as mask would still
	have one visible pixel.

- QWindowsStyle
	Always underline accelerator cues on Windows 98.

- QWindowsXPStyle
	Draw up/down buttons of QDateTimeEdit disabled when the widget is
	disabled.
	Draw toggle-toolbuttons as toggled even if they are not in a
	toolbar.

Mac:

- Drag and drop
	Fixed bug that would disrupt drag and drop when toggling
	full-screen status.
	Ignore drag and drop events for modally shadowed windows.
        Show the correct cursor when copying.

- QApplication
	Fixed bug that could cause crash when allocating and deleting
	QApplication repeatedly.
	Properly animate the toolbar button.

- QAquaStyle
	Made sure that OK and Cancel buttons are big enough when icons are
	added.
	Fixed bug that would show focus rectangles around hidden widgets in
	a QScrollView.
	Fixed drawing errors in QComboBox and QSpinBox when building on
	Panther and deploying on Jaguar.
	Fixed bug that caused artifacts on the focus widget when embedded
	inside a widget with a background pixmap.

- QComboBox
	Fixed crash when calling setListBox() and later popping up the popup
	list.
	Fixed size hint problems.

- QFileDialog
	Made the filter functionality work in getSaveFileName().

- QFontEngine
	Fixed bug showing strikeout text.

- QHeader
	Fixed drawing errors when moving columns.

- QListView
	Don't draw the disclosure triangle for items that aren't visible.

- QMenuBar
        Disable the quit option when there is a modal dialog.

- QPixmap
	Made copyBlt() copy the alpha channel properly again.

- QPrinter
	Fixed page range bug.

- QProgressBar
	Show something for indeterminate progress bars.

- QScrollView
	Fixed colors for the scrollview frame.

- QSettings
	Fixed bug that caused settings files to end up in the wrong place.

- QTableHeader
	Fixed sizing bug.

- QWidget
	Don't disable children of WStyle_Tool widgets.
        The window proxy icon is only set for document windows.

X11:

- QApplication
	Made the '-inputstyle' command line option override the ~/.qt/qtrc
	setting.
	Fixed crash when using the QApplication( Display *,...) constructor
	without any settings file in ~/.qt/.
	Fixed bug when passing a Tk Visual* to the QApplication constructor.

- QClipboard
	Fixed race condition in clear().

- QFontDatabase
	Fixed bug that caused some special TTF fonts to display incorrectly.
	Fixed bug where Qt would not find some non-scalable fonts.

- QFontEngine
	Fixed bug that caused incorrect metrics and drawing in some cases
	when a painter scales down very large fonts for display.

- QMotif
	Fixed crash when passing X11 command line parameters.
	Fixed GUI freeze when using the system close menu on a QMotifWidget
	window with some window managers.

- QPainter
	Fixed memory leak when more than 256 GCs are allocated.

- QPrinter
	Allow multiple space-separated options in
	setPrinterSelectionOption().
	Fixed printing to A3 sized paper.
	Fixed printing using certain PFB fonts (e.g. the ones generated from
	TeX).

- QWidget
	Fixed restoration from fullscreen/maximize on non-EWMH supporting
	window managers.
	Do not clear the fullscreen/maximize state if the window manager
	ignores a resize request from Qt.
	Worked around bugs in window placement for the SGI 4Dwm window
	manager.

Embedded:

Makeqpf tool
	Use the same way of finding the font directory as the rest of Qt.

- QVNCServer
	It is now possible to have several different VNC servers active on
	the same machine (and even in the same process).
	Fixed bug connecting a little-endian client to a big-endian server.

- QPainter
	Fixed bug making thick vertical lines one pixel too wide.
	Worked around compiler bug in gcc 3.3.1 and 3.3.3 (but apparently
	not in 3.3.2), causing artifacts when drawing anti-aliased text on
	16-bpp displays in release mode. 

- QWidget
	Avoid creating a paint event in setMask() if the new mask is the
	same as the old.

- QWSManager
	Fixed crash when widget is deleted during a window system mouse
	grab.
	Only move window on left mouse press.

- QWSServer
	Avoid possible race condition in sendPropertyNotifyEvent()
	when client quits.