[meego-commits] 8456: Changes to MeeGo:1.1:Core/qt-mobility

Peter Zhu no_reply at build.meego.com
Thu Oct 14 14:47:07 UTC 2010


Hi,
I have made the following changes to qt-mobility in project MeeGo:1.1:Core. Please review and accept ASAP.

Thank You,
Peter Zhu

[This message was auto-generated]

---

Request #8456:

  submit:   MeeGo:1.1:Core:Testing/qt-mobility(r2) -> MeeGo:1.1:Core/qt-mobility


Message:
    Move to MeeGo:1.1:Core

State:   new          2010-10-14T07:47:07 peter
Comment: None



changes files:
--------------
--- qt-mobility.changes
+++ qt-mobility.changes
@@ -0,0 +1,7 @@
+* Mon Oct 04 2010 Fathi Boudra <fathi.boudra at nokia.com> - 1.0.2
+- Remove 01_qtcontacts_api_1.1.0_tp1.patch.bz2 and
+  02_qtcontacts_api_1.1.0~git20100825.patch.bz2 patches. They're replaced by
+  qtcontacts_api_1.1.0-beta2.patch.bz2 to restore ABI between Qt Contacts 1.0.x
+  and 1.1.x (BMC#6374, BMC#7821)
+- Update qt-mobility-devel %files
+

old:
----
  01_qtcontacts_api_1.1.0_tp1.patch.bz2
  02_qtcontacts_api_1.1.0~git20100825.patch.bz2

new:
----
  qtcontacts_api_1.1.0-beta2.patch.bz2

spec files:
-----------
--- qt-mobility.spec
+++ qt-mobility.spec
@@ -1,6 +1,6 @@
 # 
 # Do NOT Edit the Auto-generated Part!
-# Generated by: spectacle version 0.19
+# Generated by: spectacle version 0.20
 # 
 # >> macros
 # << macros
@@ -22,11 +22,10 @@
 Patch5:     default_subtitle_loading.patch
 Patch6:     add-meego-build-flag.patch
 Patch7:     0001_do_not_use_imageprovider.h_in_declarative_plugin.patch
-Patch8:     01_qtcontacts_api_1.1.0_tp1.patch.bz2
-Patch9:     02_qtcontacts_api_1.1.0~git20100825.patch.bz2
-Patch10:     03_ftbfs_synthesizedDisplayLabel.patch
-Patch11:     06_enable_sensorfw_support.patch
-Patch12:     07_add_location_api_meego_implementation_using_geoclue.patch
+Patch8:     qtcontacts_api_1.1.0-beta2.patch.bz2
+Patch9:     03_ftbfs_synthesizedDisplayLabel.patch
+Patch10:     06_enable_sensorfw_support.patch
+Patch11:     07_add_location_api_meego_implementation_using_geoclue.patch
 Requires:   libqtcontacts1 = %{version}
 Requires:   libqtlocation1 = %{version}
 Requires:   libqtmessaging1 = %{version}
@@ -312,16 +311,14 @@
 %patch6 -p1
 # 0001_do_not_use_imageprovider.h_in_declarative_plugin.patch
 %patch7 -p1
-# 01_qtcontacts_api_1.1.0_tp1.patch.bz2
+# qtcontacts_api_1.1.0-beta2.patch.bz2
 %patch8 -p1
-# 02_qtcontacts_api_1.1.0~git20100825.patch.bz2
-%patch9 -p1
 # 03_ftbfs_synthesizedDisplayLabel.patch
-%patch10 -p1
+%patch9 -p1
 # 06_enable_sensorfw_support.patch
-%patch11 -p1
+%patch10 -p1
 # 07_add_location_api_meego_implementation_using_geoclue.patch
-%patch12 -p1
+%patch11 -p1
 # >> setup
 # << setup
 
@@ -463,6 +460,7 @@
 %{_includedir}/QtContacts/QContactActionDescriptor
 %{_includedir}/QtContacts/QContactActionFactory
 %{_includedir}/QtContacts/QContactActionFilter
+%{_includedir}/QtContacts/QContactActionTarget
 %{_includedir}/QtContacts/QContactAddress
 %{_includedir}/QtContacts/QContactAnniversary
 %{_includedir}/QtContacts/QContactAvatar
@@ -480,6 +478,7 @@
 %{_includedir}/QtContacts/QContactDisplayLabel
 %{_includedir}/QtContacts/QContactEmailAddress
 %{_includedir}/QtContacts/QContactFamily
+%{_includedir}/QtContacts/QContactFavorite
 %{_includedir}/QtContacts/QContactFetchHint
 %{_includedir}/QtContacts/QContactFetchRequest
 %{_includedir}/QtContacts/QContactFilter
@@ -524,6 +523,7 @@
 %{_includedir}/QtContacts/qcontactactiondescriptor.h
 %{_includedir}/QtContacts/qcontactactionfactory.h
 %{_includedir}/QtContacts/qcontactactionfilter.h
+%{_includedir}/QtContacts/qcontactactiontarget.h
 %{_includedir}/QtContacts/qcontactaddress.h
 %{_includedir}/QtContacts/qcontactanniversary.h
 %{_includedir}/QtContacts/qcontactavatar.h
@@ -542,6 +542,7 @@
 %{_includedir}/QtContacts/qcontactdisplaylabel.h
 %{_includedir}/QtContacts/qcontactemailaddress.h
 %{_includedir}/QtContacts/qcontactfamily.h
+%{_includedir}/QtContacts/qcontactfavorite.h
 %{_includedir}/QtContacts/qcontactfetchhint.h
 %{_includedir}/QtContacts/qcontactfetchrequest.h
 %{_includedir}/QtContacts/qcontactfilter.h
@@ -834,6 +835,7 @@
 %{_includedir}/QtVersit/qversitreader.h
 %{_includedir}/QtVersit/qversitresourcehandler.h
 %{_includedir}/QtVersit/qversitwriter.h
+%{_includedir}/qlatin1constant.h
 %{_includedir}/qmobilityglobal.h
 %{_libdir}/libQtContacts.prl
 %{_libdir}/libQtContacts.so

other changes:
--------------

++++++ qt-mobility.yaml
--- qt-mobility.yaml
+++ qt-mobility.yaml
@@ -16,8 +16,7 @@
     - default_subtitle_loading.patch
     - add-meego-build-flag.patch
     - 0001_do_not_use_imageprovider.h_in_declarative_plugin.patch
-    - 01_qtcontacts_api_1.1.0_tp1.patch.bz2
-    - 02_qtcontacts_api_1.1.0~git20100825.patch.bz2
+    - qtcontacts_api_1.1.0-beta2.patch.bz2
     - 03_ftbfs_synthesizedDisplayLabel.patch
     - 06_enable_sensorfw_support.patch
     - 07_add_location_api_meego_implementation_using_geoclue.patch

++++++ qtcontacts_api_1.1.0-beta2.patch.bz2 (new)
--- qtcontacts_api_1.1.0-beta2.patch.bz2
+++ qtcontacts_api_1.1.0-beta2.patch.bz2
+--- /dev/null
++++ b/src/contacts/contactconnection_simulator.cpp
+@@ -0,0 +1,228 @@
++/****************************************************************************
++**
++** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
++** All rights reserved.
++** Contact: Nokia Corporation (qt-info at nokia.com)
++**
++** This file is part of the Qt Mobility Components.
++**
++** $QT_BEGIN_LICENSE:LGPL$
++** Commercial Usage
++** Licensees holding valid Qt Commercial licenses may use this file in
++** accordance with the Qt Solutions Commercial License Agreement provided
++** with the Software or, alternatively, in accordance with the terms
++** contained in a written agreement between you and Nokia.
++**
++** GNU Lesser General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU Lesser
++** General Public License version 2.1 as published by the Free Software
++** Foundation and appearing in the file LICENSE.LGPL included in the
++** packaging of this file.  Please review the following information to
++** ensure the GNU Lesser General Public License version 2.1 requirements
++** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
++**
++** In addition, as a special exception, Nokia gives you certain additional
++** rights.  These rights are described in the Nokia Qt LGPL Exception
++** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
++**
++** GNU General Public License Usage
++** Alternatively, this file may be used under the terms of the GNU
++** General Public License version 3.0 as published by the Free Software
++** Foundation and appearing in the file LICENSE.GPL included in the
++** packaging of this file.  Please review the following information to
++** ensure the GNU General Public License version 3.0 requirements will be
++** met: http://www.gnu.org/copyleft/gpl.html.
++**
++** Please note Third Party Software included with Qt Solutions may impose
++** additional restrictions and it is the user's responsibility to ensure
++** that they have met the licensing requirements of the GPL, LGPL, or Qt
++** Solutions Commercial license and the relevant license of the Third
++** Party Software they are using.
++**
++** If you are unsure which license is appropriate for your use, please
++** contact the sales department at qt-sales at nokia.com.
++** $QT_END_LICENSE$
++**
++****************************************************************************/
++
++#include "contactconnection_simulator_p.h"
++
++#include <mobilityconnection_p.h>
++#include <qcontactmemorybackenddata_simulator_p.h>
++#include <qcontactsimulatorbackend_p.h>
++#include <qcontactdetail_p.h>
++#include <private/qsimulatordata_p.h>
++
++#include <QtNetwork/QLocalSocket>
++
++QTM_BEGIN_NAMESPACE
++
++using namespace QtSimulatorPrivate;
++
++namespace Simulator {
++
++ContactConnection::ContactConnection(MobilityConnection *mobilityCon)
++    : QObject(mobilityCon)
++    , mConnection(mobilityCon)
++    , mRegisteredWithSimulator(false)
++    , mInitialDataReceived(false)
++{
++    qt_registerContactsTypes();
++    mobilityCon->addMessageHandler(this);
++}
++
++ContactConnection *ContactConnection::instance()
++{
++    static ContactConnection *contactConnection = 0;
++
++    if (!contactConnection)
++        contactConnection = new ContactConnection(MobilityConnection::instance());
++    return contactConnection;
++}
++
++void ContactConnection::setEngine(QContactSimulatorEngine *engine)
++{
++    if (!mRegisteredWithSimulator) {
++        RemoteMetacall<void>::call(mConnection->sendSocket(), NoSync, "setRequestsContactInfo");
++        mRegisteredWithSimulator = true;
++    }
++
++    mEngine = engine;
++    getInitialData();
++}
++
++QLocalSocket *ContactConnection::sendSocket()
++{
++    return mConnection->sendSocket();
++}
++
++void ContactConnection::getInitialData()
++{
++    mInitialDataReceived = false;
++    RemoteMetacall<void>::call(mConnection->sendSocket(), NoSync, "triggerContactDataResend");
++
++    // blockingly handle all remote calls until the simulator signals the initial data
++    // sending is done
++    QByteArray readBuffer;
++    QLocalSocket *readSocket = mConnection->receiveSocket();
++    while (!mInitialDataReceived) {
++        readSocket->waitForReadyRead(100);
++        readBuffer += readSocket->readAll();
++        forever {
++            IncomingRemoteMetacall rpc;
++            if (rpc.read(&readBuffer)) {
++                if (rpc.call(readSocket, this))
++                    continue;
++                qWarning("Ignoring a call to %s,", rpc.signature().data());
++            }
++            break;
++        }
++    }
++}
++
++void ContactConnection::initialContactDataSent()
++{
++    mInitialDataReceived = true;
++}
++
++void ContactConnection::setContactData(const QContactSimulatorData &data)
++{
++    QContactMemoryEngineData *edata = QContactMemoryEngineData::data(mEngine);
++    edata->m_selfContactId = data.m_selfContactId;
++    edata->m_contacts = data.m_contacts;
++    edata->m_contactIds = data.m_contactIds;
++    edata->m_relationships = data.m_relationships;
++    edata->m_orderedRelationships = data.m_orderedRelationships;
++    edata->m_definitionIds = data.m_definitionIds;
++    edata->m_definitions = data.m_definitions;
++    edata->m_nextContactId = data.m_nextContactId;
++    QContactDetailPrivate::lastDetailKey = data.m_lastDetailId;
++}
++
++void ContactConnection::addContact(QContact contact)
++{
++    mEngine->setNotifySimulator(false);
++    QContactManager::Error error;
++    QContactChangeSet changeSet;
++
++    // if the created contact would get a too high id, delete
++    // the contacts that the simulator knows nothing about
++    QContactMemoryEngineData *edata = QContactMemoryEngineData::data(mEngine);
++    if (edata->m_nextContactId + 1 > contact.localId()) {
++        for (QContactLocalId id = contact.localId(); id <= edata->m_nextContactId; ++id)
++            mEngine->removeContact(id, changeSet, &error);
++    }
++
++    // make sure the inserted contact gets the same id as in the simulator
++    edata->m_nextContactId = contact.localId() - 1;
++
++    // add (set localid to 0 first, otherwise the engine thinks we want to update a contact)
++    QContactId newId = contact.id();
++    newId.setLocalId(0);
++    contact.setId(newId);
++    mEngine->saveContact(&contact, changeSet, &error);
++
++    mEngine->setNotifySimulator(true);
++}
++
++void ContactConnection::changeContact(QContact contact)
++{
++    QContactChangeSet changeSet;
++    mEngine->setNotifySimulator(false);
++    QContactManager::Error error;
++    mEngine->saveContact(&contact, changeSet, &error);
++    mEngine->setNotifySimulator(true);
++}
++
++void ContactConnection::removeContact(uint contactId)
++{
++    QContactChangeSet changeSet;
++    mEngine->setNotifySimulator(false);
++    QContactManager::Error error;
++    mEngine->removeContact(contactId, changeSet, &error);
++    mEngine->setNotifySimulator(true);
++}
++
++void ContactConnection::setRelationships(uint id, const QVariantList &relationships)
++{
++    QContactManager::Error error;
++    QContactChangeSet changeSet;
++    QContact contact = mEngine->contact(id, QContactFetchHint(), &error);
++    if (error != QContactManager::NoError)
++        return;
++
++    // adjust relationships to be in sync
++    QList<QContactRelationship> clientRelationships(
(7135 more lines skipped)

++++++ deleted files:
--- 01_qtcontacts_api_1.1.0_tp1.patch.bz2
--- 02_qtcontacts_api_1.1.0~git20100825.patch.bz2




More information about the MeeGo-commits mailing list