Merge remote-tracking branch 'origin/api_changes'
authorLars Knoll <lars.knoll@nokia.com>
Tue, 17 Apr 2012 14:35:19 +0000 (16:35 +0200)
committerLars Knoll <lars.knoll@nokia.com>
Tue, 17 Apr 2012 20:32:42 +0000 (22:32 +0200)
Change-Id: I39905acde16ba6bb0ba39401cb73082a73dd9167

1  2 
src/qml/qml/v4/qv4bindings.cpp
src/qml/qml/v8/qv8qobjectwrapper.cpp
src/quick/items/qquickcanvas.cpp
src/quick/util/qquickanimation.cpp
sync.profile
tests/auto/quick/qquickcanvas/tst_qquickcanvas.cpp
tests/auto/quick/qquickpositioners/qquickpositioners.pro
tests/auto/quick/qquickpositioners/tst_qquickpositioners.cpp
tests/auto/quick/qquicktext/tst_qquicktext.cpp

@@@ -93,12 -94,13 +94,11 @@@ struct Register 
      inline QVariant *getvariantptr() { return (QVariant *)typeDataPtr(); }
      inline QString *getstringptr() { return (QString *)typeDataPtr(); }
      inline QUrl *geturlptr() { return (QUrl *)typeDataPtr(); }
--    inline QColor *getcolorptr() { return (QColor *)typeDataPtr(); }
      inline const QVariant *getvariantptr() const { return (QVariant *)typeDataPtr(); }
      inline const QString *getstringptr() const { return (QString *)typeDataPtr(); }
      inline const QUrl *geturlptr() const { return (QUrl *)typeDataPtr(); }
--    inline const QColor *getcolorptr() const { return (QColor *)typeDataPtr(); }
  
+     size_t dataSize() { return sizeof(data); }
      inline void *typeDataPtr() { return (void *)&data; }
      inline void *typeMemory() { return (void *)data; }
      inline const void *typeDataPtr() const { return (void *)&data; }
@@@ -506,12 -508,6 +506,12 @@@ static void testBindingResult(const QSt
          case QMetaType::Double:
              v4value = result.getnumber();
              break;
-             v4value = *result.getcolorptr();
 +        case QMetaType::QColor:
++            v4value = QVariant(QMetaType::QColor, result.typeDataPtr());
 +            break;
 +        case QMetaType::QVariant:
 +            v4value = *result.getvariantptr();
 +            break;
          default:
              if (resultType == QQmlMetaType::QQuickAnchorLineMetaTypeId()) {
                  v4value = QVariant(QQmlMetaType::QQuickAnchorLineMetaTypeId(), result.typeDataPtr());
@@@ -1202,25 -1114,6 +1195,25 @@@ void QV4Bindings::run(int instrIndex, q
      }
      QML_V4_END_INSTR(ConvertColorToString, unaryop)
  
-             const QColor tmp(*src.getcolorptr());
 +    QML_V4_BEGIN_INSTR(ConvertColorToVariant, unaryop)
 +    {
 +        const Register &src = registers[instr->unaryop.src];
 +        Register &output = registers[instr->unaryop.output];
 +        // ### NaN
 +        if (src.isUndefined()) {
 +            output.setUndefined();
 +        } else {
++            QVariant tmp(QMetaType::QColor, src.typeDataPtr());
 +            if (instr->unaryop.src == instr->unaryop.output) {
 +                output.cleanupColor();
 +                MARK_CLEAN_REGISTER(instr->unaryop.output);
 +            }
 +            new (output.getvariantptr()) QVariant(tmp);
 +            VARIANT_REGISTER(instr->unaryop.output);
 +        }
 +    }
 +    QML_V4_END_INSTR(ConvertColorToVariant, unaryop)
 +
      QML_V4_BEGIN_INSTR(ConvertObjectToBool, unaryop)
      {
          const Register &src = registers[instr->unaryop.src];
Simple merge
Simple merge
Simple merge
diff --cc sync.profile
Simple merge
@@@ -266,7 -234,7 +266,7 @@@ void tst_qquickcanvas::touchEvent_basic
  
      QQuickCanvas *canvas = new QQuickCanvas;
      canvas->resize(250, 250);
--    canvas->move(100, 100);
++    canvas->setPos(100, 100);
      canvas->show();
  
      TestTouchItem *bottomItem = new TestTouchItem(canvas->rootItem());
@@@ -387,7 -355,7 +387,7 @@@ void tst_qquickcanvas::touchEvent_propa
  
      QQuickCanvas *canvas = new QQuickCanvas;
      canvas->resize(250, 250);
--    canvas->move(100, 100);
++    canvas->setPos(100, 100);
      canvas->show();
  
      TestTouchItem *bottomItem = new TestTouchItem(canvas->rootItem());
@@@ -515,7 -483,7 +515,7 @@@ void tst_qquickcanvas::touchEvent_cance
  
      QQuickCanvas *canvas = new QQuickCanvas;
      canvas->resize(250, 250);
--    canvas->move(100, 100);
++    canvas->setPos(100, 100);
      canvas->show();
  
      TestTouchItem *item = new TestTouchItem(canvas->rootItem());
@@@ -561,7 -529,7 +561,7 @@@ void tst_qquickcanvas::mouseFiltering(
  
      QQuickCanvas *canvas = new QQuickCanvas;
      canvas->resize(250, 250);
--    canvas->move(100, 100);
++    canvas->setPos(100, 100);
      canvas->show();
  
      TestTouchItem *bottomItem = new TestTouchItem(canvas->rootItem());
@@@ -618,7 -586,7 +618,7 @@@ void tst_qquickcanvas::clearColor(
      //### Can we examine rendering to make sure it is really blue?
      QQuickCanvas *canvas = new QQuickCanvas;
      canvas->resize(250, 250);
--    canvas->move(100, 100);
++    canvas->setPos(100, 100);
      canvas->setClearColor(Qt::blue);
      canvas->show();
      QTest::qWaitForWindowShown(canvas);
@@@ -1,4 -1,4 +1,5 @@@
  CONFIG += testcase
++CONFIG += insignificant_test
  TARGET = tst_qquickpositioners
  SOURCES += tst_qquickpositioners.cpp
  
@@@ -1875,11 -1875,11 +1875,15 @@@ void tst_qquickpositioners::test_attach
  QQuickView *tst_qquickpositioners::createView(const QString &filename, bool wait)
  {
      QQuickView *canvas = new QQuickView(0);
++    qDebug() << "1";
  
      canvas->setSource(QUrl::fromLocalFile(filename));
++    qDebug() << "2";
      canvas->show();
++    qDebug() << "3";
      if (wait)
          QTest::qWaitForWindowShown(canvas); //It may not relayout until the next frame, so it needs to be drawn
++    qDebug() << "4";
  
      return canvas;
  }