dist/changes-1.0.0-beta1
changeset 0 876b1a06bc25
equal deleted inserted replaced
-1:000000000000 0:876b1a06bc25
       
     1 tQ Mobility 1.0.0-beta1 is a beta release. It contains a number of changes,
       
     2 including API improvements and bug fixes, since the Qt Mobility 1.0.0-tp2
       
     3 release. For more details, please refer to the online documentation included
       
     4 in this distribution. The documentation is also available online:
       
     5 
       
     6   http://qt.nokia.com/doc/qtmobility-1.0
       
     7 
       
     8 Some of the changes listed in this file include issue tracking numbers
       
     9 corresponding to tasks in the Qt Bug Tracker or the Merge Request queue
       
    10 of the public source repository.
       
    11 
       
    12 Qt Bug Tracker: http://bugreports.qt.nokia.com
       
    13 Merge Request:  http://qt.gitorious.org
       
    14 
       
    15 
       
    16 ****************************************************************************
       
    17 *                           General                                        *
       
    18 ****************************************************************************
       
    19 
       
    20 New features
       
    21 ------
       
    22 
       
    23  - SomeClass, SomeOtherClass
       
    24     * New classes for foo, bar and baz
       
    25 
       
    26 Optimizations
       
    27 ------
       
    28 
       
    29  - Optimized foo in QSomeClass
       
    30     * See list of Important Behavior Changes below
       
    31 
       
    32 
       
    33 ****************************************************************************
       
    34 *                   Important Behavior Changes                             *
       
    35 ****************************************************************************
       
    36 
       
    37  -
       
    38 
       
    39 
       
    40 ****************************************************************************
       
    41 *                          Library                                         *
       
    42 ****************************************************************************
       
    43 
       
    44 QtBearer
       
    45 ------
       
    46 
       
    47  - Various memory leaks.
       
    48  - Documentation fixes.
       
    49  - QNetworkSession API changes.
       
    50     * Renamed isActive() to isOpen().
       
    51     * Renamed property key "ActiveConfigurationIdentifier" to
       
    52       "ActiveConfiguration".
       
    53     * Renamed property key "UserChoiceConfigurationIdentifier" to
       
    54       "UserChoiceConfiguration".
       
    55     * bearerName() function moved to QNetworkConfiguration::bearerName().
       
    56  - Symbian
       
    57     * Add Symbian build time declarations to examples and tests (capabilities,
       
    58       UIDs etc).
       
    59  - Improved unit test coverage and stability.
       
    60 
       
    61 
       
    62 QtContacts
       
    63 ------
       
    64 
       
    65  - QContactManager (and QContactManagerEngine where applicable)
       
    66     * add QContactManager(QObject* parent) ctor
       
    67     * deprecate filterSupported(), add isFilterSupported()
       
    68     * deprecate synthesizeDisplayLabel(), add synthesizedDisplayLabel()
       
    69     * managerFeature - enums as powers of two (deprecation strategy?)
       
    70     * deprecate implementationVersion(), add managerVersion()
       
    71     * deprecate splitUri(), add parseUri()
       
    72     * deprecate contacts() functions, replace with contactIds() functions
       
    73     * add new contacts() functions which return QList<QContact> and can be limited to particular details
       
    74        - add a restrictToDefinitions/Fields parameter in contacts() and contact()
       
    75     * deprecate old batch saveContacts() and removeContacts() functions, replace with new ones
       
    76        - return bool, and take new param: map of int (input list index) to error which occurred for the item at that index
       
    77        - consistent with async request changes, clearer, and more consistent with single save/remove functions too.
       
    78 
       
    79  - QContactManagerEngine
       
    80     * deprecated request-related functions in QCME, replaced with better/cleaner ones
       
    81        - deprecated updateRequest() functions in QCME, replaced with:
       
    82           . updateContactFetchRequest()
       
    83           . updateContactSaveRequest()
       
    84           . updateContactRemoveRequest()
       
    85           . updateContactLocalIdFetchRequest()
       
    86           . updateDetailDefinitionSaveRequest()
       
    87           . updateDetailDefinitionRemoveRequest()
       
    88           . updateDetailDefinitionFetchRequest()
       
    89           . updateRelationshipSaveRequest()
       
    90           . updateRelationshipFetchRequest()
       
    91           . updateRelationshipRemoveRequest()
       
    92        - deprecated updateRequestStatus() and replace with a new updateRequestState() function.
       
    93        - state and results are now updated separately and a distinct signal is emitted for each.
       
    94 
       
    95  - QContactDetail
       
    96     * deprecate values(), add variantValues()
       
    97     * access constraints now in detail instead of definition (set by backend on a per-detail basis)
       
    98        - possible constraints are now: ReadOnly, Irremovable, NoConstraint.  Deprecated CreateOnly constraint.
       
    99 
       
   100  - QContactDetailDefinition
       
   101     * deprecate fields() returning nonconst reference. (To be removed after transition period has elapsed).
       
   102     * Rename QContactDetailDefinitionField class to QContactDetailFieldDefinition (deprecated via typedef).
       
   103 
       
   104  - QContactAction
       
   105     * deprecate metadata(), add metaData()
       
   106 
       
   107  - QContactDetails
       
   108     * Deprecate QContactGeolocation, add QContactGeoLocation
       
   109     * QContactName -> deprecate first() add firstName(), same for middle() and last().
       
   110     * QContactOnlineAccount -> added Capabilities (string list) field
       
   111 
       
   112  - QContactAbstractRequest and leaf classes
       
   113     * QContactDetailDefinitionFetchRequest: deprecated names()/setNames, add definitionNames()/setDefinitionNames()
       
   114     * Deprecate Status enum, add State enum (values suffixed by State; eg, ActiveState)
       
   115     * deprecate status(), add state()
       
   116     * deprecate waitForProgress() -- to be removed (unnecessary API).
       
   117     * add stateChanged() signal to base class
       
   118     * deprecate progress() signal, add resultsAvailable() signal to base class
       
   119        - note that resultsAvailable() signal does not contain a ptr to self - use sender() instead.
       
   120        - state and results are now updated separately in the backend, with distinct signal emitted for each.
       
   121     * QContact*RemoveRequest -> take a list of items as input arguments, instead of a filter / filtering values.
       
   122        - allows detailed error reporting for remove requests, and is more intuitive / simpler API.
       
   123        - current selection criteria functions in RemoveRequests have been deprecated.
       
   124        - this change affects QContactRemoveRequest, QContactDetailDefinitionRemoveRequest and QContactRelationshipRemoveRequest.
       
   125     * deprecated errors() function from base QContactAbstractRequest class
       
   126     * added errorMap() function to various leaf classes where that class' selection input is a list of items
       
   127        - errorMap() returns a map of input list index to an error which occurred for the item at that index.
       
   128  - SamplePhonebook
       
   129     * UI layout refactored to fit small screen better
       
   130 
       
   131 QtLocation
       
   132 ------
       
   133 
       
   134  - QGeoPositionInfoSource
       
   135     * Renamed requestTimeout to updateTimeout().
       
   136     * updateTimeout() is now emitted during periodic updates if
       
   137       the update is late or an error occurs.
       
   138  - QGeoCoordinate
       
   139     * Renamed QGeoCoordinate:DecimalDegrees to QGeoCoordinate::Degrees.
       
   140  - QGeoPositionInfo
       
   141     * Renamed property() to attribute().
       
   142     * Renamed setProperty() to setAttribute().
       
   143     * Renamed hasProperty() to hasAttribute().
       
   144     * Renamed removeProperty() to removeAttribute().
       
   145     * Renamed QGeoPositionInfo::Heading to QGeoPositionInfo::Direction.
       
   146  - QGeoSatelliteInfo
       
   147     * Renamed property() to attribute().
       
   148     * Renamed setProperty() to setAttribute().
       
   149     * Renamed hasProperty() to hasAttribute().
       
   150     * Renamed removeProperty() to removeAttribute().
       
   151  - QNmeaPositionInfoSource
       
   152     * Added protected virtual function parsePosInfoFromNmeaData() to 
       
   153       enable clients to handle non-standard NMEA sentences if they need to.
       
   154 
       
   155 QtMessaging
       
   156 ------
       
   157 
       
   158  - Wrap QMessageStore with QMessageManager.
       
   159     * In order to provide a consistent interface with other components
       
   160       of QtMobility that provide a central data manager interface, the
       
   161       existing QMessageStore interface is now private, and replaced in
       
   162       the public interface by the QMessageManager class.
       
   163     
       
   164       The new class provides exactly the same interface as the old class
       
   165       except that it is instantiated as a handle rather than accessed as
       
   166       a singleton.  Internally the handle object can be instantiated as
       
   167       needed, but in documentation or examples the class should be treated
       
   168       as if it were potentially expensive to create and destroy; this will
       
   169       give a consistent form of use for all Q{x}Manager classes between
       
   170       the various QtMobility projects.
       
   171     
       
   172       The old QMessageStore class is still used internally by the
       
   173       QMessageManager, so the latter class need not be reimplemented for
       
   174       multiple platforms.
       
   175 
       
   176  - Rename Q{X}Ordering to Q{X}SortOrder.
       
   177     * For increased consistency between QtMobility APIs.
       
   178 
       
   179  - Support ordering via a list of SortOrder objects.
       
   180     * For consistency with other QtMobility APIs, allow a composite ordering
       
   181       to be specified using a list of Q{X}SortOrder objects rather than
       
   182       requiring the objects to be accumulated via the + operator.
       
   183 
       
   184  - Rename QMessageDataComparator::Options to MatchFlags.
       
   185 
       
   186  - Rename QMessageServiceAction to QMessageService.
       
   187     * The term 'action' is already used with conflicting meanings;
       
   188       it can represnt a user-input (QAction), or a facility provided
       
   189       by a service provider which is exposed to the user (as in
       
   190       QContactAction).
       
   191     
       
   192       QMessageService provides a proxy, dispatcher or broker
       
   193       facility, but adding any of these terms to the class name has
       
   194       been judged as not constituting an improvement to readability.
       
   195 
       
   196  - Return int from size() functions.
       
   197     * Consistent with standard Qt practice.
       
   198 
       
   199  - Rename write{Text}ContentTo to write{Text}Content.
       
   200     * For improved consistentcy with Qt naming.
       
   201 
       
   202  - Rename QMessageManager::ErrorCode to QMessageManager::Error.
       
   203     * For improved consistency with Qt naming.
       
   204 
       
   205  - Reorder the parameters for QMessageAddress(Type, Address).
       
   206     * There is a logical dependency of address on type.
       
   207 
       
   208  - API improvements to QMessageService.
       
   209     * Use the same State enum values as used by the QtMobility Contacts
       
   210       API, and provide the same stateChanged() signal signature.
       
   211     
       
   212       Rename cancelOperation() to cancel() for consistency with Qt.
       
   213 
       
   214  - Rename QMessageStore:: and QMessageManager::lastError() to error().
       
   215     * This is the more common form in Qt, and in line with the equivalent
       
   216       Contacts interface name.
       
   217 
       
   218  - Rename QMessageFolder::displayName() to name().
       
   219     * DisplayName should be used where the name used for display purposes
       
   220       differs from the fundamental name property.
       
   221 
       
   222  - Symbian specific fixes
       
   223     * Added correct Symbian UID to Messaging DLL
       
   224     * Corrected exporting of public headers (to /epoc32/include/)
       
   225     * Changed DLL capability to: ALL -TCB (was previously: ALL -TCB -AllFiles -DRM)
       
   226     * Fixed "." (application private) folder support (attachments)
       
   227       Now all auto tests can use "." folder for test files
       
   228     * Fixed auto tests to use "." folder (just like in other backends)
       
   229     * Fixed file type recognition bug (.png files)
       
   230     * Fixed bug: Messaging queries list unknown (for example bluetooth)
       
   231                  messages from Inbox
       
   232     * Nested filters support for account, folder & message filters finalized, all auto tests pass
       
   233     * MIME type handling related bugs fixed
       
   234     * Character set handling bugs fixes
       
   235     * Default account bug fixed
       
   236     * Message attachment memory usage optimized
       
   237     * Standard folder support for emails improved (Inbox filtering)
       
   238     * Message size calculation accuracy improved
       
   239     * CEikonEnv usages removed (relations to Symbian UI Framework)
       
   240     * message type handling improved (if message type is not defined, message type is retrieved from parentAccount)
       
   241       Related to bug that prevented MMS message sending from MessagingEx
       
   242       (Note: MMS message sending in writemessage example worked)
       
   243     * MMS Message content retrieval bug fixed (related to QByteArray QMessageContentContainer::content() const; bug)
       
   244 
       
   245 
       
   246 QtMultimediaKit
       
   247 ------
       
   248 
       
   249  - Added Audio and Video QML elements.
       
   250  - Renamed QtMedia::Frequency to QtMedia::SampleRate for consistency and
       
   251    clarity.
       
   252  - Renamed QtMedia::CoverArtUriSmall to QtMedia::CoverArtUrlSmall,
       
   253    QtMedia::CoverArtUriLarge to CoverArtUrlLarge, and  QtMedia::PosterUri
       
   254    to QtMedia::PosterUrl.
       
   255  - QGraphicsVideoItem
       
   256     * Added offset(), size(), nativeSize(), and aspectRatioMode()
       
   257       properties.
       
   258  - QGraphicsVideoItem, QMediaPlaylist, QVideoWidget
       
   259     * Replaced QMediaObject* constructor parameter with setMediaObject()
       
   260       function.
       
   261  - QMediaContent
       
   262     * Renamed canonicalUri() to canonicalUrl().
       
   263     * Removed coverArtUriSmall(), coverArtUriLarge(), posterUri(),
       
   264       thumbnailUriSmall(), and thumbnailUriLarge() properties.
       
   265  - QMediaPlayer
       
   266     * Added static supportedMimeTypes() method.
       
   267     * Added isAudioAvailable() property.
       
   268  - Added QMediaTimeRange and QMediaTimeInterval classes to represent time
       
   269    periods in media items.
       
   270  - QMediaPlayerControl
       
   271     * Renamed seekRanges() to availablePlaybackRanges(). This method now
       
   272       returns a QMediaTimeRange, which can contain multiple disjoint time
       
   273       intervals representing buffered portions of media.
       
   274  - QMediaResource
       
   275     * Renamed uri() to url().
       
   276     * Renamed channels() to channelCount().
       
   277     * Renamed size() to dataSize().
       
   278     * Removed duration() and sampleSize().
       
   279 
       
   280 QtPublishSubscribe
       
   281 ------
       
   282 
       
   283  - Rename QValueSpacePublisher::attributeInterestChanged() to
       
   284    QValueSpacePublisher::interestChanged().
       
   285  - Symbian backend improvements
       
   286     * MOBILITY-387: Symbian central repository related compile error fixed
       
   287     * Support for removeValue.
       
   288     * subPaths only returns the values that are really available.
       
   289     * Unsupported data types are published as serialized QByteArrays.
       
   290       All QVariant data types can be passed through the Publish and Subscribe.
       
   291     * PSPathMapper server added so the QCRML files no longer need to be parsed
       
   292       in client-side.
       
   293     * QCRML files can now be installed on any drive.
       
   294  - Fixed bugs
       
   295     * QTMOBILITY-38: The table/list view in the subscriber window of publish
       
   296       and subscribe example is now readonly.
       
   297     * QTMOBILITY-39: Compile failure with gcc 4.4.
       
   298     * QTMOBILITY-43: Rework P&S example to support small screen sizes.
       
   299     * Memory leak in Registry Layer.
       
   300 
       
   301 QtServiceFramework
       
   302 ------
       
   303 
       
   304  - QService namespace added
       
   305     * Renamed QServiceManager::Scope to QService::Scope
       
   306  - QServiceFilter
       
   307     * Renamed customPropertyKeys() to customAttributes()
       
   308     * Renamed setCustomProperty() to setCustomAttribute()
       
   309     * Removed removeCustomProperty()
       
   310     * Renamed clearCustomProperties() to clearCustomAttribute()
       
   311     * Renamed CapabilityMatchRule::MatchAll to CapabilityMatchRule::MatchMinimum
       
   312     * Renamed interfaceMajorVersion() to majorVersion()
       
   313     * Renamed interfaceMinorVersion() to minorVersion()
       
   314  - QServiceInterfaceDescriptor
       
   315     * Renamed inSystemScope() to scope()
       
   316     * Renamed PropertyKey to Attribute
       
   317     * Renamed property() to attribute()
       
   318     * Renamed customProperty() to customAttribute()
       
   319     * Renamed customPropertyKeys() to customAttributes()
       
   320  - QServiceManager
       
   321     * Renamed getInterface() to loadLocalTypedInterface()
       
   322 
       
   323 
       
   324  - error reporting for Service XML parsing imporved
       
   325  - export macro name changed due to name clash
       
   326  - multiple unit test fixes
       
   327  - Symbian backend
       
   328     * Maturity improvements in emulator environment
       
   329     * DB handling server is terminated automatically when any client no
       
   330       longer uses it
       
   331     * Fixed how library existence is checked in Symbian
       
   332     * databasemanager server UID added
       
   333     * All emulator processes use common service framework database
       
   334     * Multiple QServiceManager instance issue on emulator fixed
       
   335 
       
   336 QtSystemInfo
       
   337 ------
       
   338 
       
   339  - New features for Maemo5 backend
       
   340     * simStatus
       
   341     * Available languages
       
   342     * hasFeatureSupported completed
       
   343     * displayBrightness
       
   344     * imsi
       
   345 
       
   346  - New features for Mac backend
       
   347     * added network signaling
       
   348 
       
   349  - New features for Linux backend
       
   350     * code refactoring
       
   351 
       
   352 
       
   353 
       
   354 ****************************************************************************
       
   355 *                      Platform Specific Changes                           *
       
   356 ****************************************************************************
       
   357 
       
   358 Qt Mobility for Embedded Linux
       
   359 ------
       
   360 
       
   361  -
       
   362 
       
   363 Qt Mobility for Unix (X11 and Mac OS X)
       
   364 ------
       
   365 
       
   366  - 
       
   367 
       
   368 Qt Mobility for Linux/X11
       
   369 ------
       
   370 
       
   371  -
       
   372 
       
   373 Qt Mobility for Windows
       
   374 ------
       
   375 
       
   376  - Added Direct Show based media player service implementation.
       
   377 
       
   378 Qt Mobility for Mac OS X
       
   379 ------
       
   380 
       
   381  -
       
   382 
       
   383 Qt Mobility for Windows CE
       
   384 ------
       
   385 
       
   386  -
       
   387 
       
   388 Qt Mobility for Maemo5
       
   389 ------
       
   390 
       
   391  - Experimental support for QtLocation
       
   392  - Experimental support for QtSystemInfo
       
   393  
       
   394  Qt Mobility for Symbian
       
   395 ------
       
   396 
       
   397  - QContactManager backends
       
   398     * 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.
       
   399     * The display label now uses the same formatting rules as the platform phonebook application, except that "unnamed" contact label is not localised.
       
   400     * When filtering with QContactDisplayLabel and match flag MatchStartsWith is set the filtering rules follow the platform Phonebook's name list view filtering rules.
       
   401     * 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.
       
   402     * 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.
       
   403     * Fixed a bug where modifying the details of a self-contact failed.
       
   404     * Added an experimental support for SIM ADN contacts with QContactManager implementation named "symbiansim".
       
   405     * Several bug fixes to contact relationships.
       
   406     * Fixed the error handling when a client tries to update the contact type. This is not supported.
       
   407     * Bugfix: Saving and deleting contacts in quick successive manner caused the contact database server to fail on S60 3.2 devices.
       
   408     * Bugfix [QTMOBILITY-54]: Loading a QContact for a contact database contact with an undefined field type caused a crash. 
       
   409 
       
   410  - Installpath for Symbian headers changed
       
   411     * Contacts and Versit installed to EPOCROOT/include/app
       
   412     * All other API headers installed to EPOCROOT/include/mw
       
   413 
       
   414  - Multimedia
       
   415     * Symbian backend added for 3rd ed FP1, 3rd ed FP2 and 5th ed. Following services supported
       
   416       - AudioCapture
       
   417         * limited codec support
       
   418       - Radio support (needs sim-card when testing)
       
   419         * listen radio
       
   420         * search channels / frequency
       
   421         * change volume
       
   422       - Mediaplayer
       
   423         * play local files
       
   424         * play local video
       
   425         * play stream e.g. from youtube working
       
   426         * retrieve metadata ( following tags supported: title, artist, comment, genre, ye   ar, copyright, album, composer, albumtrack, audiobitrate, videobitrate, duration, content type)
       
   427 	* read extended metadata supported
       
   428         * writing metada to file not supported by S60
       
   429         * codec support depends on device model
       
   430         * AudioDeviceControl not implemented for mediaplayer, defaults to device default.
       
   431 
       
   432 ****************************************************************************
       
   433 *                          Tools                                           *
       
   434 ****************************************************************************
       
   435 
       
   436  - ICheck added 
       
   437     * Validation tool for meta object defined service framework interfaces
       
   438