|
1 Qt 4.5.2-tower |
|
2 --------------- |
|
3 |
|
4 The Qt for S60 "Tower" release is the fifth pre-release from the Qt for |
|
5 S60 porting project. "Tower" is based on the Qt 4.5 codebase (mostly Qt 4.5.2). |
|
6 |
|
7 This list of changes lists S60 specific fixes only, |
|
8 for general 4.5.x changes go to: |
|
9 |
|
10 http://qt.nokia.com/developer/changes/changes-4.5.0 |
|
11 http://qt.nokia.com/developer/changes/changes-4.5.1 |
|
12 http://qt.nokia.com/developer/changes/changes-4.5.2 (partially in Tower) |
|
13 |
|
14 Some of the changes listed in this file include issue tracking numbers |
|
15 corresponding to tasks in the Task Tracker: |
|
16 |
|
17 http://qt.nokia.com/developer/task-tracker |
|
18 |
|
19 Each of these identifiers can be entered in the task tracker to obtain |
|
20 more information about a particular change. Sometimes the task is internal |
|
21 and cannot be viewed by the public, a lot of them are non-public for Qt for |
|
22 S60 at the moment. |
|
23 |
|
24 **************************************************************************** |
|
25 * New features * |
|
26 **************************************************************************** |
|
27 |
|
28 New modules |
|
29 ----------- |
|
30 |
|
31 - Input methods |
|
32 * Added events to support opening and closing the virtual keyboard, called |
|
33 software input panel in Qt. |
|
34 * Added an option to QApplication to choose between single or double click |
|
35 input panel activation. |
|
36 * Added input method hints API to Qt. These can be used to instruct input methods |
|
37 to only allow certain characters or tailor their appearance. |
|
38 * Added Qt::ImAnchorPosition to support querying for selections through input |
|
39 methods. |
|
40 * Added QInputMethodEvent::Selection to support setting the selection through |
|
41 input methods. |
|
42 |
|
43 - Phonon |
|
44 * The Phonon library is now part of Qt, but it comes without a backend. |
|
45 This means that applications can build and run against the Phonon |
|
46 library, but there is currently no S60 backend plugin providing actual |
|
47 multimedia playback. Possible alternatives such as Helix and MMF are |
|
48 being investigated. |
|
49 |
|
50 - QtSql |
|
51 * Implemented QtSql module with sqlite3 backend. For now backend is |
|
52 provided only in binary format. |
|
53 |
|
54 - QtWebkit |
|
55 * Experimental webkit build for S60. Can be enabled by passing -webkit |
|
56 to configure. |
|
57 |
|
58 New classes |
|
59 ------------ |
|
60 |
|
61 - QScopedPointer |
|
62 * Smart pointer, which deletes pointer when destroyed. |
|
63 |
|
64 Ported classes |
|
65 -------------- |
|
66 |
|
67 - QColormap |
|
68 * Added basic implementation of QColormap for Symbian. |
|
69 |
|
70 - QLocalSocket and QLocalServer |
|
71 * Added support for QLocalSocket and QLocalServer on Symbian. |
|
72 |
|
73 - QSound |
|
74 * Implemented CMdaAudioPlayerUtility based Symbian backend for QSound. |
|
75 |
|
76 Features |
|
77 -------- |
|
78 |
|
79 - QApplication |
|
80 * Implemented QApplication::beep() for Symbian. |
|
81 |
|
82 - QPixmap |
|
83 * Added supported for converting to/from CFbsBitmap |
|
84 |
|
85 - QSslSocket |
|
86 * Added support for -openssl option i.e. runtime resolving of OpenSSL |
|
87 symbols. |
|
88 |
|
89 - QWidget |
|
90 * Basic widgets are now navigatable and usable via keypad on SDK 3 |
|
91 FP 1 and FP 2. |
|
92 * Widgets can now be made semi-transparent on systems that support it |
|
93 using Qt::WA_TranslucentBackground. |
|
94 |
|
95 - Exception safety |
|
96 * Improving the exception safety of Qt, not yet complete. |
|
97 * Added support for translating between Symbian leaves and standard C++ |
|
98 exceptions. |
|
99 |
|
100 Optimizations |
|
101 ------------- |
|
102 |
|
103 - qdrawhelper |
|
104 * Optimized drawing operations for RVCT builds, particulary for ARMV6. |
|
105 |
|
106 - QFont |
|
107 * Use cached DPI for metrics. |
|
108 |
|
109 - qwidget_s60.cpp |
|
110 * Avoid unnecessary calls to FocusChanged in Symbian. |
|
111 |
|
112 - qwindowsurface_s60.cpp |
|
113 * Avoid updating raster buffer pointer on window hide |
|
114 |
|
115 Documentation |
|
116 ------------- |
|
117 |
|
118 - exceptionsafety.qdoc |
|
119 * A guide to exception safety in Qt. |
|
120 |
|
121 - symbian-exceptionsafety.qdoc |
|
122 * A guide to integrating exception safety in Qt with Symbian. |
|
123 |
|
124 **************************************************************************** |
|
125 * Code clean-up * |
|
126 **************************************************************************** |
|
127 |
|
128 - Cleanup qeventdispatcher_unix.cpp |
|
129 * 247268: All qeventdispatcher_unix.cpp changes were reverted since |
|
130 this file is not anymore used in Symbian OS branch. |
|
131 |
|
132 - Cleanup QtNetwork workarounds implemented earlier due to Open C bugs. |
|
133 * 247287: Removed getaddrinfo workaround. |
|
134 * 247288: Removed waitForConnected workaround. |
|
135 * 247289: Removed qt_socket_accept workaround. |
|
136 * 247290: Removed qt_socket_connect workaround. |
|
137 * 247290: Removed E32IONREAD workaround. |
|
138 * 247293: Removed nativeHasPendingDatagrams workaround. |
|
139 * 247295: Removed QNativeSocketEnginePrivate::nativeRead EPIPE |
|
140 workaround. |
|
141 |
|
142 - Other code clean-ups |
|
143 * 247278: Removed unnecessary includes from qbackingstore.cpp. |
|
144 * Fixed Q_OS_SYMBIAN ifdef usage in qfiledialog_p.h. |
|
145 * 247272: Removed qtestnetworkservers.h dependency, used |
|
146 network-settings.h. |
|
147 * Revert "Work around compiler bug on Nokia Metrowerks compiler." |
|
148 * Remove UI highlights being inverted colors based on highlight text |
|
149 colors. |
|
150 |
|
151 **************************************************************************** |
|
152 * Build issues * |
|
153 **************************************************************************** |
|
154 |
|
155 - Macros |
|
156 * QT_NO_DEBUG now properly defined in release mode. |
|
157 |
|
158 - QTest |
|
159 * Fixed testlib export macros for RVCT builds. |
|
160 |
|
161 - Namespaces |
|
162 * Now builds when -qtnamespace option is defined. |
|
163 |
|
164 **************************************************************************** |
|
165 * Changes to existing classes * |
|
166 **************************************************************************** |
|
167 |
|
168 - QApplication |
|
169 * 252798: Fixed layout when orientation changed via |
|
170 AknAppUi::SetOrientationL. |
|
171 * Generating MouseEvents has gone through several changes. |
|
172 * qt_init() has been changed: auto flush is always enabled for |
|
173 window server sessions on 3.1 SDK for both UDEB and UREL. |
|
174 * Added support for '-graphics-system' command line option |
|
175 |
|
176 - QCoeFepInputContext (non-public) |
|
177 * Fixes FEP crash when changing the focused Qt widget to NULL. |
|
178 * Fixed a bug where the virtual keyboard could not be opened if there |
|
179 was only one input widget. |
|
180 * Fixed a crash in FEP when exiting application. |
|
181 |
|
182 - QDebug |
|
183 * Fixed debug printing (incl. qWarning, qFatal) for strings longer |
|
184 than 256 characters. |
|
185 * introduce a breakpoint to get the emulator to stop in the debugger |
|
186 when qFatal is called |
|
187 |
|
188 - QDesktopServices |
|
189 * Fixed forwardslash/backslash usage as an path separator. |
|
190 * Switched QDesktopServices mail-to URL handling to RSendAs in Symbian, |
|
191 due to the fact that CSendUi requires extensive capabilities to work |
|
192 correctly. Currently e-mail sending with qdesktopservices::openUrl |
|
193 works in Symbian only if e-mail account already exists. |
|
194 |
|
195 - QDesktopWidget |
|
196 * 253930: Implement proper resize behavior and emit necessary signals. |
|
197 |
|
198 - QEventDispatcherSymbian (non-public) |
|
199 * Lowered the timeout for reprioritizing the process to 100ms. |
|
200 * Fixed ASSERT panic in Symbian event dispatcher. |
|
201 * 246600: Fix problem in eventdispatcher destructor / AO canceling. |
|
202 * Fixed active scheduler removal when calling QThread::terminate. |
|
203 * Fix to Open C bug: select sometimes returns -1 and errno is |
|
204 ECONNREFUSED. |
|
205 * Fix a crash when using QEventLoop::ExcludeSocketNotifiers flag. |
|
206 * Changed to round robin scheduling for Qt's active objects. Other |
|
207 active objects will still be scheduled like before. |
|
208 * Fixed crash if events are posted before QApplication construction |
|
209 |
|
210 - QFontDataBase |
|
211 * Now, also fonts from the user's /resources/fonts directories are |
|
212 available. |
|
213 |
|
214 - QFontEngine |
|
215 * Fix the vertical advance of glyph metrics. |
|
216 |
|
217 - QFontMetrics |
|
218 * Fixed the boundingRect calculation for text. |
|
219 |
|
220 - QGraphicsView |
|
221 * Added support for virtual keyboard to the the viewport. |
|
222 |
|
223 - QGraphicsTextItem |
|
224 * Added support for virtual keyboard. |
|
225 |
|
226 - QHostInfo |
|
227 * Added support for host lookups with multiple ipv4 addresses. |
|
228 |
|
229 - QInputContext |
|
230 * Added QInputContext::s60FilterEvent(). |
|
231 |
|
232 - QIoDevice |
|
233 * Fixed compilation error when QIODEVICE_DEBUG is defined. |
|
234 |
|
235 - QKeyMapper (non-public) |
|
236 * Fixed a broken keymapping where Enter key would be mapped to Tab. |
|
237 |
|
238 - QLocale |
|
239 * Removed workaround for missing tzname symbol, fixes QLocal timeZone |
|
240 implementation for Symbian. |
|
241 |
|
242 - QLocalSocket |
|
243 * Connecting to QLocalServer is always done in blocking mode. |
|
244 |
|
245 - QMenuBar |
|
246 * Native menus are handled properly even when application has multiple |
|
247 QMainWindows. |
|
248 * Fixed a bug causing both native and qt menu to be created. |
|
249 * Fix for disappearing options menu after coming back from dialog. |
|
250 |
|
251 - QNativeSocketEnginePrivate (non-public) |
|
252 * Socket connect and listen failure is indicated in exception set. |
|
253 (Workaround to Open C bug) |
|
254 |
|
255 - QNetworkInterface |
|
256 * Fixed R-handle leak in Symbian version of qnetworkinterface_unix.cpp. |
|
257 * Introduced a new qnetworkinterface_symbian.cpp, because there wasn't |
|
258 really anything common to UNIX equivalent. |
|
259 |
|
260 - QPixmap |
|
261 * Added fromSymbianCFbsBitmap() and toSymbianCFbsBitmap(). |
|
262 |
|
263 - QPlainTextEdit |
|
264 * Added support for virtual keyboard. |
|
265 |
|
266 - QPluginLoader |
|
267 * QPluginLoader will look for plugin stubs from the same folder on other |
|
268 drives if it can't find them from the indicated drive. |
|
269 |
|
270 - QS60Style |
|
271 * Added subElementRect implementation for SE_ItemViewItemCheckIndicator. |
|
272 * Added support for E90 layouts. |
|
273 * Added support for QScrollArea, QTextEditor, QGroupBox, QTreeView, |
|
274 QToolBar and QDial styling. |
|
275 * Better support for theme and layout changes. |
|
276 * Better support for themed palettes and themed text colors. |
|
277 * Better support for multiselection in item views. |
|
278 * Better theming for QTable and QPanel. |
|
279 * Better support of highlight graphics and texts for QLists, QTreeViews, |
|
280 QCalendarWidgets and QComboBoxes. |
|
281 * Support polishing fonts. Fonts are no longer changed within the drawing |
|
282 code. |
|
283 * Draw spinbox arrowbuttons side-by-side, instead one on top of the other. |
|
284 * Harmonize widget drawing so that widgets are of similar height. |
|
285 * Support check states for QLists and QPushButtons. |
|
286 * Support flat QPushButtons. |
|
287 * Support busy indicator. |
|
288 * Support QScrollBar pressed state. |
|
289 * Support QPushButton disabled theme graphics. |
|
290 * Separate theme background for QDialogs. |
|
291 * Clarify QToolButton pressed state. |
|
292 * Removed linedrawing of panels and groupboxes. |
|
293 * Fix palette-polution for a style that is activated from an application |
|
294 after S60Style has been in use. |
|
295 * Fix for frame masks with color depth other than EGrey2. |
|
296 * Fix for squeezed QTabBars. |
|
297 * Fix memory leak when color skinning graphics. |
|
298 * Show focus/Editfocus visualization for KeyPad navigation on |
|
299 SDK 3 FP 1 and FP 2. |
|
300 * Fix for overwriting user specified palettes. |
|
301 |
|
302 - QSelectThread (non-public) |
|
303 * We force monitoring sockets exception status as well, and not |
|
304 just read/write. |
|
305 * Notification related to the particular socket signaled via exception |
|
306 fd_set will be mapped to the appropriate read/write notification. |
|
307 |
|
308 - QTemporaryFile |
|
309 * Fixed temporary file rename in Symbian OS. |
|
310 |
|
311 - QTest |
|
312 * Disable keypad navigation for autotests by default |
|
313 |
|
314 - QTextEdit |
|
315 * Added support for virtual keyboard. |
|
316 |
|
317 - QThread |
|
318 * Fixed thread termination in Symbian OS. |
|
319 |
|
320 - QUdpSocket |
|
321 * Updated BindFlag documentation to reflect behaviour on Symbian OS. |
|
322 * Wrote hack for QUdpSocket::writeDatagram return value in Symbian OS. |
|
323 |
|
324 - QWidget |
|
325 * Added API for setting softkeys. |
|
326 * Fixed background painting. Background can now be overwritten from |
|
327 setting the respective palette role. |
|
328 * Add support for Qt::WA_TranslucentBackground. |
|
329 |
|
330 - Many classes |
|
331 * Improved exception safety. |
|
332 |
|
333 **************************************************************************** |
|
334 * Examples and demos * |
|
335 **************************************************************************** |
|
336 |
|
337 - Anomaly browser |
|
338 * Added to demonstrate QtWebkit usage. |
|
339 |
|
340 - Deform, Pathstroke, and Wiggly |
|
341 * Removed Symbian specific animation timer fixes since more generic |
|
342 fix was made to event dispatcher. |
|
343 |
|
344 - DesktopServices |
|
345 * Implemented content filters for desktopservices example. |
|
346 * Added error handling to qdesktopservices example when openUrl fails. |
|
347 |
|
348 - Drilldown |
|
349 * Added to demonstrate QtSql usage in Symbian OS. |
|
350 |
|
351 - Fluidlauncher |
|
352 * Removed ugly workaround to make emulator deployment work correctly, |
|
353 since the issue has been fixed in qmake. |
|
354 * Included drilldown to demonstrate QtSql usage. |
|
355 * Updated screenshots to S60 style. |
|
356 * Added softkeys example. |
|
357 * Added Anomaly browser to fluidlauncher. |
|
358 |
|
359 - Ftp |
|
360 * Enabled default IAP setting for FTP example. |
|
361 * IAP dialog will show after FTP UI is on screen. |
|
362 * If active IAP exist that one will be used. |
|
363 |
|
364 - SecureSocketClient |
|
365 * Fixed build issue caused by lack of cursor. |
|
366 |
|
367 - Softkeys |
|
368 * New example showing how to use softkeys API in QWidget. |
|
369 |
|
370 **************************************************************************** |
|
371 * Tools * |
|
372 **************************************************************************** |
|
373 |
|
374 - configure |
|
375 * -cetest is no longer a supported switch for configure. |
|
376 * -stl option is enabled by default for Symbian OS |
|
377 * -openssl option is enabled by default for Symbian OS. |
|
378 * -fpu option enables vfpu type selection for ARM targets. |
|
379 |
|
380 - qmake |
|
381 * Support for generating Symbian "test" targets: CONFIG += symbian_test. |
|
382 * Support for Symbian Build System, version 2 (aka Raptor) via |
|
383 symbian-sbsv2 mkspec. |
|
384 * PAGED keyword is added to all MMP files by default, except in S60 3.1 |
|
385 builds. |
|
386 * Read-only flag is no longer preserved when deploying files into |
|
387 emulator environment. |
|
388 * Changed the timestamp to ISO format in all files generated |
|
389 by qmake for symbian-* mkspecs. |
|
390 * Qt's VERSION variable will now generate VERSION keyword in mmp files. |
|
391 * Made Open C include paths handling bit more robust. |
|
392 * Support both Symbian Foundation header structure in /epoc32/include, |
|
393 as well as old Symbian/S60 structure |
|
394 |
|
395 - Release package creation |
|
396 * Removed the obsolete script to create release package. |
|
397 |
|
398 - Createpackage script |
|
399 * Now creates packages with .sis suffix. |
|
400 |
|
401 - Patch_capabilities script |
|
402 * Will now patch also vendor id in binaries and the UID in the pkg file. |
|
403 |
|
404 |
|
405 **************************************************************************** |
|
406 * Documentation * |
|
407 **************************************************************************** |
|
408 |
|
409 - qmake-manual |
|
410 * 250370: Added documentation for ICON keyword. |
|
411 |
|
412 **************************************************************************** |
|
413 * Plugins * |
|
414 **************************************************************************** |
|
415 |
|
416 - S60 version specific plugins |
|
417 * Isolated S60 version dependent functionality to S60 version specific |
|
418 plugins (qts60plugin_x_y.dll) to make it possible for single build to |
|
419 run on any supported device, even if with reduced functionality on |
|
420 some. |
|
421 |
|
422 **************************************************************************** |
|
423 * Important Behavior Changes * |
|
424 **************************************************************************** |
|
425 |
|
426 - Qt libs |
|
427 * Qt libs are now built with "All -Tcb" capabilities always. It is now |
|
428 always necessary to run patch_capabilities.pl script if self-signing |
|
429 of Qt libs is desired. |
|
430 * QtCore and QtSql made UNPAGED when installed via SIS file as a |
|
431 workaround for an obscure crash when they are paged. |
|
432 * qt_libs.pro updated to reflect Open C dependencies, as Qt requires |
|
433 1.5.0 and newer release. |
|
434 * Qt libs are now build with the "STDCPP" mmp flag. On platforms from |
|
435 TB9.2, Qt code will throw std::bad_alloc exceptions on allocation |
|
436 failure. |