summaryrefslogtreecommitdiffstats
path: root/dist/changes-1.0.0-beta1
blob: 834e51fbed1e97eabba2a5d2b431f6d39eb1f7d6 (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
tQ Mobility 1.0.0-beta1 is a beta release. It contains a number of changes,
including API improvements and bug fixes, since the Qt Mobility 1.0.0-tp2
release. For more details, please refer to the online documentation included
in this distribution. The documentation is also available online:

  http://qt.nokia.com/doc/qtmobility-1.0

Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker or the Merge Request queue
of the public source repository.

Qt Bug Tracker: http://bugreports.qt.nokia.com
Merge Request:  http://qt.gitorious.org


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

New features
------

 - SomeClass, SomeOtherClass
    * New classes for foo, bar and baz

Optimizations
------

 - Optimized foo in QSomeClass
    * See list of Important Behavior Changes below


****************************************************************************
*                   Important Behavior Changes                             *
****************************************************************************

 -


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

QtBearer
------

 - Various memory leaks.
 - Documentation fixes.
 - QNetworkSession API changes.
    * Renamed isActive() to isOpen().
    * Renamed property key "ActiveConfigurationIdentifier" to
      "ActiveConfiguration".
    * Renamed property key "UserChoiceConfigurationIdentifier" to
      "UserChoiceConfiguration".
    * bearerName() function moved to QNetworkConfiguration::bearerName().
 - Symbian
    * Add Symbian build time declarations to examples and tests (capabilities,
      UIDs etc).
 - Improved unit test coverage and stability.


QtContacts
------

 - QContactManager (and QContactManagerEngine where applicable)
    * add QContactManager(QObject* parent) ctor
    * deprecate filterSupported(), add isFilterSupported()
    * deprecate synthesizeDisplayLabel(), add synthesizedDisplayLabel()
    * managerFeature - enums as powers of two (deprecation strategy?)
    * deprecate implementationVersion(), add managerVersion()
    * deprecate splitUri(), add parseUri()
    * deprecate contacts() functions, replace with contactIds() functions
    * add new contacts() functions which return QList<QContact> and can be limited to particular details
       - add a restrictToDefinitions/Fields parameter in contacts() and contact()
    * deprecate old batch saveContacts() and removeContacts() functions, replace with new ones
       - return bool, and take new param: map of int (input list index) to error which occurred for the item at that index
       - consistent with async request changes, clearer, and more consistent with single save/remove functions too.

 - QContactManagerEngine
    * deprecated request-related functions in QCME, replaced with better/cleaner ones
       - deprecated updateRequest() functions in QCME, replaced with:
          . updateContactFetchRequest()
          . updateContactSaveRequest()
          . updateContactRemoveRequest()
          . updateContactLocalIdFetchRequest()
          . updateDetailDefinitionSaveRequest()
          . updateDetailDefinitionRemoveRequest()
          . updateDetailDefinitionFetchRequest()
          . updateRelationshipSaveRequest()
          . updateRelationshipFetchRequest()
          . updateRelationshipRemoveRequest()
       - deprecated updateRequestStatus() and replace with a new updateRequestState() function.
       - state and results are now updated separately and a distinct signal is emitted for each.

 - QContactDetail
    * deprecate values(), add variantValues()
    * access constraints now in detail instead of definition (set by backend on a per-detail basis)
       - possible constraints are now: ReadOnly, Irremovable, NoConstraint.  Deprecated CreateOnly constraint.

 - QContactDetailDefinition
    * deprecate fields() returning nonconst reference. (To be removed after transition period has elapsed).
    * Rename QContactDetailDefinitionField class to QContactDetailFieldDefinition (deprecated via typedef).

 - QContactAction
    * deprecate metadata(), add metaData()

 - QContactDetails
    * Deprecate QContactGeolocation, add QContactGeoLocation
    * QContactName -> deprecate first() add firstName(), same for middle() and last().
    * QContactOnlineAccount -> added Capabilities (string list) field

 - QContactAbstractRequest and leaf classes
    * QContactDetailDefinitionFetchRequest: deprecated names()/setNames, add definitionNames()/setDefinitionNames()
    * Deprecate Status enum, add State enum (values suffixed by State; eg, ActiveState)
    * deprecate status(), add state()
    * deprecate waitForProgress() -- to be removed (unnecessary API).
    * add stateChanged() signal to base class
    * deprecate progress() signal, add resultsAvailable() signal to base class
       - note that resultsAvailable() signal does not contain a ptr to self - use sender() instead.
       - state and results are now updated separately in the backend, with distinct signal emitted for each.
    * QContact*RemoveRequest -> take a list of items as input arguments, instead of a filter / filtering values.
       - allows detailed error reporting for remove requests, and is more intuitive / simpler API.
       - current selection criteria functions in RemoveRequests have been deprecated.
       - this change affects QContactRemoveRequest, QContactDetailDefinitionRemoveRequest and QContactRelationshipRemoveRequest.
    * deprecated errors() function from base QContactAbstractRequest class
    * added errorMap() function to various leaf classes where that class' selection input is a list of items
       - errorMap() returns a map of input list index to an error which occurred for the item at that index.
 - SamplePhonebook
    * UI layout refactored to fit small screen better

QtLocation
------

 - QGeoPositionInfoSource
    * Renamed requestTimeout to updateTimeout().
    * updateTimeout() is now emitted during periodic updates if
      the update is late or an error occurs.
 - QGeoCoordinate
    * Renamed QGeoCoordinate:DecimalDegrees to QGeoCoordinate::Degrees.
 - QGeoPositionInfo
    * Renamed property() to attribute().
    * Renamed setProperty() to setAttribute().
    * Renamed hasProperty() to hasAttribute().
    * Renamed removeProperty() to removeAttribute().
    * Renamed QGeoPositionInfo::Heading to QGeoPositionInfo::Direction.
 - QGeoSatelliteInfo
    * Renamed property() to attribute().
    * Renamed setProperty() to setAttribute().
    * Renamed hasProperty() to hasAttribute().
    * Renamed removeProperty() to removeAttribute().
 - QNmeaPositionInfoSource
    * Added protected virtual function parsePosInfoFromNmeaData() to 
      enable clients to handle non-standard NMEA sentences if they need to.

QtMessaging
------

 - Wrap QMessageStore with QMessageManager.
    * In order to provide a consistent interface with other components
      of QtMobility that provide a central data manager interface, the
      existing QMessageStore interface is now private, and replaced in
      the public interface by the QMessageManager class.
    
      The new class provides exactly the same interface as the old class
      except that it is instantiated as a handle rather than accessed as
      a singleton.  Internally the handle object can be instantiated as
      needed, but in documentation or examples the class should be treated
      as if it were potentially expensive to create and destroy; this will
      give a consistent form of use for all Q{x}Manager classes between
      the various QtMobility projects.
    
      The old QMessageStore class is still used internally by the
      QMessageManager, so the latter class need not be reimplemented for
      multiple platforms.

 - Rename Q{X}Ordering to Q{X}SortOrder.
    * For increased consistency between QtMobility APIs.

 - Support ordering via a list of SortOrder objects.
    * For consistency with other QtMobility APIs, allow a composite ordering
      to be specified using a list of Q{X}SortOrder objects rather than
      requiring the objects to be accumulated via the + operator.

 - Rename QMessageDataComparator::Options to MatchFlags.

 - Rename QMessageServiceAction to QMessageService.
    * The term 'action' is already used with conflicting meanings;
      it can represnt a user-input (QAction), or a facility provided
      by a service provider which is exposed to the user (as in
      QContactAction).
    
      QMessageService provides a proxy, dispatcher or broker
      facility, but adding any of these terms to the class name has
      been judged as not constituting an improvement to readability.

 - Return int from size() functions.
    * Consistent with standard Qt practice.

 - Rename write{Text}ContentTo to write{Text}Content.
    * For improved consistentcy with Qt naming.

 - Rename QMessageManager::ErrorCode to QMessageManager::Error.
    * For improved consistency with Qt naming.

 - Reorder the parameters for QMessageAddress(Type, Address).
    * There is a logical dependency of address on type.

 - API improvements to QMessageService.
    * Use the same State enum values as used by the QtMobility Contacts
      API, and provide the same stateChanged() signal signature.
    
      Rename cancelOperation() to cancel() for consistency with Qt.

 - Rename QMessageStore:: and QMessageManager::lastError() to error().
    * This is the more common form in Qt, and in line with the equivalent
      Contacts interface name.

 - Rename QMessageFolder::displayName() to name().
    * DisplayName should be used where the name used for display purposes
      differs from the fundamental name property.

 - Symbian specific fixes
    * Added correct Symbian UID to Messaging DLL
    * Corrected exporting of public headers (to /epoc32/include/)
    * Changed DLL capability to: ALL -TCB (was previously: ALL -TCB -AllFiles -DRM)
    * Fixed "." (application private) folder support (attachments)
      Now all auto tests can use "." folder for test files
    * Fixed auto tests to use "." folder (just like in other backends)
    * Fixed file type recognition bug (.png files)
    * Fixed bug: Messaging queries list unknown (for example bluetooth)
                 messages from Inbox
    * Nested filters support for account, folder & message filters finalized, all auto tests pass
    * MIME type handling related bugs fixed
    * Character set handling bugs fixes
    * Default account bug fixed
    * Message attachment memory usage optimized
    * Standard folder support for emails improved (Inbox filtering)
    * Message size calculation accuracy improved
    * CEikonEnv usages removed (relations to Symbian UI Framework)
    * message type handling improved (if message type is not defined, message type is retrieved from parentAccount)
      Related to bug that prevented MMS message sending from MessagingEx
      (Note: MMS message sending in writemessage example worked)
    * MMS Message content retrieval bug fixed (related to QByteArray QMessageContentContainer::content() const; bug)


QtMultimediaKit
------

 - Added Audio and Video QML elements.
 - Renamed QtMedia::Frequency to QtMedia::SampleRate for consistency and
   clarity.
 - Renamed QtMedia::CoverArtUriSmall to QtMedia::CoverArtUrlSmall,
   QtMedia::CoverArtUriLarge to CoverArtUrlLarge, and  QtMedia::PosterUri
   to QtMedia::PosterUrl.
 - QGraphicsVideoItem
    * Added offset(), size(), nativeSize(), and aspectRatioMode()
      properties.
 - QGraphicsVideoItem, QMediaPlaylist, QVideoWidget
    * Replaced QMediaObject* constructor parameter with setMediaObject()
      function.
 - QMediaContent
    * Renamed canonicalUri() to canonicalUrl().
    * Removed coverArtUriSmall(), coverArtUriLarge(), posterUri(),
      thumbnailUriSmall(), and thumbnailUriLarge() properties.
 - QMediaPlayer
    * Added static supportedMimeTypes() method.
    * Added isAudioAvailable() property.
 - Added QMediaTimeRange and QMediaTimeInterval classes to represent time
   periods in media items.
 - QMediaPlayerControl
    * Renamed seekRanges() to availablePlaybackRanges(). This method now
      returns a QMediaTimeRange, which can contain multiple disjoint time
      intervals representing buffered portions of media.
 - QMediaResource
    * Renamed uri() to url().
    * Renamed channels() to channelCount().
    * Renamed size() to dataSize().
    * Removed duration() and sampleSize().

QtPublishSubscribe
------

 - Rename QValueSpacePublisher::attributeInterestChanged() to
   QValueSpacePublisher::interestChanged().
 - Symbian backend improvements
    * MOBILITY-387: Symbian central repository related compile error fixed
    * Support for removeValue.
    * subPaths only returns the values that are really available.
    * Unsupported data types are published as serialized QByteArrays.
      All QVariant data types can be passed through the Publish and Subscribe.
    * PSPathMapper server added so the QCRML files no longer need to be parsed
      in client-side.
    * QCRML files can now be installed on any drive.
 - Fixed bugs
    * QTMOBILITY-38: The table/list view in the subscriber window of publish
      and subscribe example is now readonly.
    * QTMOBILITY-39: Compile failure with gcc 4.4.
    * QTMOBILITY-43: Rework P&S example to support small screen sizes.
    * Memory leak in Registry Layer.

QtServiceFramework
------

 - QService namespace added
    * Renamed QServiceManager::Scope to QService::Scope
 - QServiceFilter
    * Renamed customPropertyKeys() to customAttributes()
    * Renamed setCustomProperty() to setCustomAttribute()
    * Removed removeCustomProperty()
    * Renamed clearCustomProperties() to clearCustomAttribute()
    * Renamed CapabilityMatchRule::MatchAll to CapabilityMatchRule::MatchMinimum
    * Renamed interfaceMajorVersion() to majorVersion()
    * Renamed interfaceMinorVersion() to minorVersion()
 - QServiceInterfaceDescriptor
    * Renamed inSystemScope() to scope()
    * Renamed PropertyKey to Attribute
    * Renamed property() to attribute()
    * Renamed customProperty() to customAttribute()
    * Renamed customPropertyKeys() to customAttributes()
 - QServiceManager
    * Renamed getInterface() to loadLocalTypedInterface()


 - error reporting for Service XML parsing imporved
 - export macro name changed due to name clash
 - multiple unit test fixes
 - Symbian backend
    * Maturity improvements in emulator environment
    * DB handling server is terminated automatically when any client no
      longer uses it
    * Fixed how library existence is checked in Symbian
    * databasemanager server UID added
    * All emulator processes use common service framework database
    * Multiple QServiceManager instance issue on emulator fixed

QtSystemInfo
------

 - New features for Maemo5 backend
    * simStatus
    * Available languages
    * hasFeatureSupported completed
    * displayBrightness
    * imsi

 - New features for Mac backend
    * added network signaling

 - New features for Linux backend
    * code refactoring



****************************************************************************
*                      Platform Specific Changes                           *
****************************************************************************

Qt Mobility for Embedded Linux
------

 -

Qt Mobility for Unix (X11 and Mac OS X)
------

 - 

Qt Mobility for Linux/X11
------

 -

Qt Mobility for Windows
------

 - Added Direct Show based media player service implementation.

Qt Mobility for Mac OS X
------

 -

Qt Mobility for Windows CE
------

 -

Qt Mobility for Maemo5
------

 - Experimental support for QtLocation
 - Experimental support for QtSystemInfo
 
 Qt Mobility for Symbian
------

 - QContactManager backends
    * QContactAvatar: Added support for pixmap field and VideoRingtone subtype. For pixmap field there is a known issue that it is not always shown in the name list view of S60 platform Phonebook.
    * The display label now uses the same formatting rules as the platform phonebook application, except that "unnamed" contact label is not localised.
    * When filtering with QContactDisplayLabel and match flag MatchStartsWith is set the filtering rules follow the platform Phonebook's name list view filtering rules.
    * When filtering with a phone number detail and match flags MatchPhoneNumber is set the filtering rules follow the platform Phonebook's phone number matching rules. Known issue: the matched phone number needs to be at least 7 digits.
    * Contact filtering: added support for intersection and union filters. This improves performance in those cases where the contained filters give only a sub-set of the contacts.
    * Fixed a bug where modifying the details of a self-contact failed.
    * Added an experimental support for SIM ADN contacts with QContactManager implementation named "symbiansim".
    * Several bug fixes to contact relationships.
    * Fixed the error handling when a client tries to update the contact type. This is not supported.
    * Bugfix: Saving and deleting contacts in quick successive manner caused the contact database server to fail on S60 3.2 devices.
    * Bugfix [QTMOBILITY-54]: Loading a QContact for a contact database contact with an undefined field type caused a crash. 

 - Installpath for Symbian headers changed
    * Contacts and Versit installed to EPOCROOT/include/app
    * All other API headers installed to EPOCROOT/include/mw

 - Multimedia
    * Symbian backend added for 3rd ed FP1, 3rd ed FP2 and 5th ed. Following services supported
      - AudioCapture
        * limited codec support
      - Radio support (needs sim-card when testing)
        * listen radio
        * search channels / frequency
        * change volume
      - Mediaplayer
        * play local files
        * play local video
        * play stream e.g. from youtube working
        * retrieve metadata ( following tags supported: title, artist, comment, genre, ye   ar, copyright, album, composer, albumtrack, audiobitrate, videobitrate, duration, content type)
	* read extended metadata supported
        * writing metada to file not supported by S60
        * codec support depends on device model
        * AudioDeviceControl not implemented for mediaplayer, defaults to device default.

****************************************************************************
*                          Tools                                           *
****************************************************************************

 - ICheck added 
    * Validation tool for meta object defined service framework interfaces