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
|
Qt 4.5.2-tower
---------------
The Qt for S60 "Tower" release is the fifth pre-release from the Qt for
S60 porting project. "Tower" is based on the Qt 4.5 codebase.
Lists just S60 fixes, for general 4.5.0 changes go to:
http://www.qtsoftware.com/developer/changes/changes-4.5.0
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Task Tracker:
http://qtsoftware.com/developer/task-tracker
Each of these identifiers can be entered in the task tracker to obtain
more information about a particular change. Sometimes the task is internal
and cannot be viewed by the public, a lot of them are non-public for Qt for
S60 at the moment.
****************************************************************************
* New features *
****************************************************************************
New modules
-----------
- QtSql
* Implemented QtSql module with sqlite3 backend. For now backend is
provided only in binary format.
- QtWebkit
* Experimental webkit build for s60. Can be enabled by passing -webkit
to configure.
- Phonon
* The Phonon library is now part of Qt, but it comes without a backend.
This means that applications can build and run against the Phonon
library, but there is currently no S60 backend plugin providing actual
multimedia playback. Possible alternatives such as Helix and MMF are
being investigated.
New classes
------------
- todo
* todo
Ported classes
--------------
- QSound
* Implemented CMdaAudioPlayerUtility based Symbian backend for QSound.
- QLocalSocket and QLocalServer
* Added support for QLocalSocket and QLocalServer on Symbian.
Features
--------
- QApplication
* Implemented QApplication::beep() for Symbian.
- QSslSocket
* Added support for -openssl option i.e. runtime resolving of OpenSSL
symbols.
- QWidget
* Basic widgets are now navigatable and usable via keypad on SDK 3
FP 1 and FP 2.
- todo
* todo
Optimizations
-------------
- qdrawhelper
* Optimized drawing operations for RVCT builds, particulary for ARMV6.
- qwidget_s60.cpp
* Avoid unnecessary calls to FocusChanged in Symbian.
****************************************************************************
* Code clean-up *
****************************************************************************
- Cleanup qeventdispatcher_unix.cpp
* 247268: All qeventdispatcher_unix.cpp changes were reverted since
this file is not anymore used in Symbian OS branch.
- Cleanup QtNetwork workarounds implemented earlier due to Open C bugs.
* 247287: Removed getaddrinfo workaround.
* 247288: Removed waitForConnected workaround.
* 247289: Removed qt_socket_accept workaround.
* 247290: Removed qt_socket_connect workaround.
* 247290: Removed E32IONREAD workaround.
* 247293: Removed nativeHasPendingDatagrams workaround.
* 247295: Removed QNativeSocketEnginePrivate::nativeRead EPIPE
workaround.
- Other code clean-ups
* 247278: Removed unnecessary includes from qbackingstore.cpp.
* Fixed Q_OS_SYMBIAN ifdef usage in qfiledialog_p.h.
* 247272: Removed qtestnetworkservers.h dependency, used
network-settings.h.
* Revert "Work around compiler bug on Nokia Metrowerks compiler."
* Remove UI highlights being inverted colors based on highlight text
colors.
****************************************************************************
* Build issues *
****************************************************************************
- QTest
* Fixed testlib export macros for RVCT builds.
- Namespaces
* Now builds when -qtnamespace option is defined.
****************************************************************************
* Changes to existing classes *
****************************************************************************
- QDesktopServices
* Fixed forwardslash/backslash usage as an path separator.
- QPluginLoader
* QPluginLoader will look for plugin stubs from the same folder on other
drives if it can't find them from the indicated drive.
- QNetworkInterface
* Fixed R-handle leak in Symbian version of qnetworkinterface_unix.cpp.
* Introduced a new qnetworkinterface_symbian.cpp, because there wasn't
really anything common to UNIX equivalent.
- QHostInfo
* Added support for host lookups with multiple ipv4 addresses.
- QUdpSocket
* Updated BindFlag documentation to reflect behaviour on Symbian OS.
- QLocale
* Removed workaround for missing tzname symbol, fixes QLocal timeZone
implementation for Symbian.
- QTemporaryFile
* Fixed temporary file rename in Symbian OS.
- QThread
* Fixed thread termination in Symbian OS.
- QIoDevice
* Fixed compilation error when QIODEVICE_DEBUG is defined.
- QS60Style
* Added subElementRect implementation for SE_ItemViewItemCheckIndicator.
* Added support for E90 layouts.
* Added support for QScrollArea, QTextEditor, QGroupBox, QTreeView,
QToolBar and QDial styling.
* Better support for theme and layout changes.
* Better support for themed palettes and themed text colors.
* Better support for multiselection in item views.
* Better theming for QTable and QPanel.
* Better support of highlight graphics and texts for QLists, QTreeViews,
QCalendarWidgets and QComboBoxes.
* Support polishing fonts. Fonts are no longer changed within the drawing
code.
* Draw spinbox arrowbuttons side-by-side, instead one on top of the other.
* Harmonize widget drawing so that widgets are of similar height.
* Support check states for QLists and QPushButtons.
* Support flat QPushButtons.
* Support busy indicator.
* Support QScrollBar pressed state.
* Support QPushButton disabled theme graphics.
* Separate theme background for QDialogs.
* Clarify QToolButton pressed state.
* Removed linedrawing of panels and groupboxes.
* Fix palette-polution for a style that is activated from an application
after S60Style has been in use.
* Fix for frame masks with color depth other than EGrey2.
* Fix for squeezed QTabBars.
* Fix memory leak when color skinning graphics.
* Show focus/Editfocus visualization for KeyPad navigation on
SDK 3 FP 1 and FP 2.
- QDesktopServices
* Switched QDesktopServices mail-to URL handling to RSendAs in Symbian,
due to the fact that CSendUi requires extensive capabilities to work
correctly. Currently e-mail sending with qdesktopservices::openUrl
works in Symbian only if e-mail account already exists.
- QCoeFepInputContext (non-public)
* Fixes FEP crash when changing the focused Qt widget to NULL.
- QApplication
* 252798: Fixed layout when orientation changed via
AknAppUi::SetOrientationL.
* Generating MouseEvents has gone through several changes.
- QUdpSocket
* Wrote hack for QUdpSocket::writeDatagram return value in Symbian OS.
- QNativeSocketEnginePrivate (non-public)
* Socket connect and listen failure is indicated in exception set.
(Workaround to Open C bug)
- QEventDispatcherSymbian (non-public)
* Lowered the timeout for reprioritizing the process to 100ms.
* Fixed ASSERT panic in Symbian event dispatcher.
* 246600: Fix problem in eventdispatcher destructor / AO canceling.
* Fixed active scheduler removal when calling QThread::terminate.
* Fix to Open C bug: select sometimes returns -1 and errno is
ECONNREFUSED.
- QWidget
* Added API for setting softkeys.
- QMenuBar
* Native menus are handled properly even when application has multiple
QMainWindows.
* Fixed a bug causing both native and qt menu to be created.
* Fix for disappearing options menu after coming back from dialog.
- QFontDataBase
* Now, also fonts from the user's /resources/fonts directories are
available.
- QFontMetrics
* Fixed the boundingRect calculation for text.
****************************************************************************
* Examples and demos *
****************************************************************************
- Drilldown
* Added to demonstrate QtSql usage in Symbian OS.
- Deform, Pathstroke, and Wiggly
* Removed Symbian specific animation timer fixes since more generic
fix was made to event dispatcher.
- Ftp
* Enabled default IAP setting for FTP example.
- DesktopServices
* Implemented content filters for desktopservices example.
* Added error handling to qdesktopservices example when openUrl fails.
- SecureSocketClient
* Fixed build issue caused by lack of cursor.
- Fluidlauncher
* Removed ugly workaround to make emulator deployment work correctly,
since the issue has been fixed in qmake.
* Included drilldown to demonstrate QtSql usage.
* Updated screenshots to S60 style.
* Added softkeys example.
- Softkeys
* New example showing how to use softkeys API in QWidget.
****************************************************************************
* Tools *
****************************************************************************
- qmake
* Support for generating Symbian "test" targets: CONFIG += symbian_test.
* Support for Symbian Build System, version 2 (aka Raptor) via
symbian-sbsv2 mkspec.
* PAGED keyword is added to all MMP files by default, except in S60 3.1
builds.
* Read-only flag is no longer preserved when deploying files into
emulator environment.
* Changed the timestamp to ISO format in all files generated
by qmake for symbian-* mkspecs.
* Qt's VERSION variable will now generate VERSION keyword in mmp files.
* Made Open C include paths handling bit more robust.
- configure
* -cetest is no longer a supported switch for configure.
* -stl option is enabled by default for Symbian OS
* -openssl option is enabled by default for Symbian OS.
* -fpu option enables vfpu type selection for ARM targets.
- Release package creation
* Removed the obsolete script to create release package.
- Createpackage script
* Now creates packages with .sis suffix.
- Patch_capabilities script
* Will now patch also vendor id in binaries and the UID in the pkg file.
****************************************************************************
* Documentation *
****************************************************************************
- qmake-manual
* 250370: Added documentation for ICON keyword.
****************************************************************************
* Plugins *
****************************************************************************
- S60 version specific plugins
* Isolated S60 version dependent functionality to S60 version specific
plugins (qts60plugin_x_y.dll) to make it possible for single build to
run on any supported device, even if with reduced functionality on
some.
****************************************************************************
* Important Behavior Changes *
****************************************************************************
- Qt libs
* Qt libs are now built with "All -Tcb" capabilities always. It is now
always necessary to run patch_capabilities.pl script if self-signing
of Qt libs is desired.
* QtCore and QtSql made UNPAGED as workaround for an obscure crash
when they are paged.
- todo
* todo
|