summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDavid Boddie <dboddie@trolltech.com>2010-08-16 14:28:33 (GMT)
committerDavid Boddie <dboddie@trolltech.com>2010-08-16 14:28:33 (GMT)
commitbc2a71b317724840c695b39f523ca510c28d15e5 (patch)
treee845e8982c04bb52fa5c34308dbf0adabb695e60 /src
parent2a2aa1b0581911de907f7b950b5cf4acda914170 (diff)
parentd728575ede4fdf3873de71e7cd9a852b9fed4e40 (diff)
downloadQt-bc2a71b317724840c695b39f523ca510c28d15e5.zip
Qt-bc2a71b317724840c695b39f523ca510c28d15e5.tar.gz
Qt-bc2a71b317724840c695b39f523ca510c28d15e5.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7
Conflicts: doc/src/declarative/elements.qdoc
Diffstat (limited to 'src')
-rw-r--r--src/3rdparty/libconninet/Makefile.am49
-rw-r--r--src/3rdparty/libconninet/debian/changelog14
-rw-r--r--src/3rdparty/libconninet/src/Makefile.am36
-rw-r--r--src/3rdparty/libconninet/src/dbusdispatcher.cpp2
-rw-r--r--src/3rdparty/libconninet/src/maemo_icd.cpp63
-rw-r--r--src/3rdparty/libconninet/tests/Makefile.am39
-rw-r--r--src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp3
-rw-r--r--src/declarative/graphicsitems/qdeclarativeborderimage.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativeevents.cpp4
-rw-r--r--src/declarative/graphicsitems/qdeclarativeflickable.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativeflipable.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativefocuspanel.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativefocusscope.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativegridview.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativeimage.cpp2
-rw-r--r--src/declarative/graphicsitems/qdeclarativeitem.cpp7
-rw-r--r--src/declarative/graphicsitems/qdeclarativelayoutitem.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativelistview.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativeloader.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativemousearea.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativepath.cpp7
-rw-r--r--src/declarative/graphicsitems/qdeclarativepathview.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativepositioners.cpp4
-rw-r--r--src/declarative/graphicsitems/qdeclarativerectangle.cpp3
-rw-r--r--src/declarative/graphicsitems/qdeclarativerepeater.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativetext.cpp3
-rw-r--r--src/declarative/graphicsitems/qdeclarativetextedit.cpp1
-rw-r--r--src/declarative/graphicsitems/qdeclarativetextinput.cpp4
-rw-r--r--src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp2
-rw-r--r--src/declarative/qml/qdeclarativecomponent.cpp1
-rw-r--r--src/declarative/qml/qdeclarativeengine.cpp2
-rw-r--r--src/declarative/qml/qdeclarativeworkerscript.cpp1
-rw-r--r--src/declarative/util/qdeclarativeanimation.cpp15
-rw-r--r--src/declarative/util/qdeclarativebehavior.cpp1
-rw-r--r--src/declarative/util/qdeclarativebind.cpp1
-rw-r--r--src/declarative/util/qdeclarativeconnections.cpp1
-rw-r--r--src/declarative/util/qdeclarativefontloader.cpp1
-rw-r--r--src/declarative/util/qdeclarativelistmodel.cpp4
-rw-r--r--src/declarative/util/qdeclarativepackage.cpp1
-rw-r--r--src/declarative/util/qdeclarativepropertychanges.cpp1
-rw-r--r--src/declarative/util/qdeclarativesmoothedanimation.cpp1
-rw-r--r--src/declarative/util/qdeclarativespringanimation.cpp1
-rw-r--r--src/declarative/util/qdeclarativestate.cpp1
-rw-r--r--src/declarative/util/qdeclarativestategroup.cpp1
-rw-r--r--src/declarative/util/qdeclarativestateoperations.cpp3
-rw-r--r--src/declarative/util/qdeclarativesystempalette.cpp1
-rw-r--r--src/declarative/util/qdeclarativetimer.cpp1
-rw-r--r--src/declarative/util/qdeclarativetransition.cpp1
-rw-r--r--src/declarative/util/qdeclarativexmllistmodel.cpp2
-rw-r--r--src/gui/painting/qgrayraster.c36
-rw-r--r--src/gui/util/qcompleter.cpp2
-rw-r--r--src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp1
-rw-r--r--src/imports/gestures/qdeclarativegesturearea.cpp2
-rw-r--r--src/imports/particles/qdeclarativeparticles.cpp4
-rw-r--r--src/network/bearer/qnetworkconfigmanager_p.cpp1
-rw-r--r--src/plugins/bearer/icd/qicdengine.cpp95
-rw-r--r--src/plugins/bearer/icd/qicdengine.h2
-rw-r--r--src/plugins/bearer/icd/qnetworksession_impl.cpp13
59 files changed, 260 insertions, 198 deletions
diff --git a/src/3rdparty/libconninet/Makefile.am b/src/3rdparty/libconninet/Makefile.am
deleted file mode 100644
index 250637a..0000000
--- a/src/3rdparty/libconninet/Makefile.am
+++ /dev/null
@@ -1,49 +0,0 @@
-SUBDIRS = src tests
-
-pkgconfigdir = $(libdir)/pkgconfig
-pkgconfig_DATA = conninet.pc
-
-MAINTAINERCLEANFILES = \
- Makefile.in config.h.in configure \
- install-sh ltmain.sh missing mkinstalldirs \
- config.log config.status config.guess config.sub \
- build-stamp compile depcomp acinclude.m4 aclocal.m4 \
- debian/files \
- debian/libconninet0.postinst.debhelper \
- debian/libconninet0.postrm.debhelper \
- debian/libconninet0.substvars
-
-EXTRA_DIST = \
- debian/changelog \
- debian/compat \
- debian/control \
- debian/copyright \
- debian/libconninet0-dev.dirs \
- debian/libconninet0-dev.files \
- debian/libconninet0.dirs \
- debian/libconninet0.files \
- debian/rules
-
-# get rid of debian build dirs
-maintainer-clean-local:
- -rm -rf debian/build debian/tmp \
- debian/libconninet0 \
- debian/libconninet0-dev \
- debian/libconninet0-dbg
-
-if DOXYGEN_DOCS_ENABLED
- DOXYGEN_LINE = $(DOXYGEN) doxygen.cfg
-else
- DOXYGEN_LINE =
-endif
-
-.PHONY : doc
-
-doc:
- $(DOXYGEN_LINE)
-
-deb: dist
- -mkdir $(top_builddir)/debian-build
- cd $(top_builddir)/debian-build && tar zxf ../$(top_builddir)/$(PACKAGE)-$(VERSION).tar.gz
- cd $(top_builddir)/debian-build/$(PACKAGE)-$(VERSION) && dpkg-buildpackage -rfakeroot -sa -D
- -rm -rf $(top_builddir)/debian-build/$(PACKAGE)-$(VERSION)
diff --git a/src/3rdparty/libconninet/debian/changelog b/src/3rdparty/libconninet/debian/changelog
index 436d318..4063317 100644
--- a/src/3rdparty/libconninet/debian/changelog
+++ b/src/3rdparty/libconninet/debian/changelog
@@ -1,9 +1,17 @@
-libconninet (0.41+0m6) unstable; urgency=low
+libconninet (0.42+0m6) unstable; urgency=low
* This entry has been added by BIFH queue processor
- version has been changed to 0.41+0m6
+ version has been changed to 0.42+0m6
- -- Qing Jin <ext-qing.1.jin@nokia.com> Thu, 15 Jul 2010 15:56:38 +0300
+ -- Qing Jin <ext-qing.1.jin@nokia.com> Thu, 22 Jul 2010 14:04:58 +0300
+
+libconninet (0.42) unstable; urgency=low
+
+ * Fixes: NB#180536 - Uploads to online services are not working.
+ This is a regression caused by fix to bug 175098, the timeout was never
+ expiring when waiting reply from icd.
+
+ -- Jukka Rissanen <jukka.rissanen@nokia.com> Mon, 19 Jul 2010 12:23:30 +0300
libconninet (0.41) unstable; urgency=low
diff --git a/src/3rdparty/libconninet/src/Makefile.am b/src/3rdparty/libconninet/src/Makefile.am
deleted file mode 100644
index be7a1e5..0000000
--- a/src/3rdparty/libconninet/src/Makefile.am
+++ /dev/null
@@ -1,36 +0,0 @@
-DEFS = -DDBUS_API_SUBJECT_TO_CHANGE -DGCONF_DISABLE_DEPRECATED
-INCLUDES = @GLIB_CFLAGS@ @DBUS_CFLAGS@ @GCONF_CFLAGS@ @OSSO_IC_CFLAGS@ @ICD_DEV_CFLAGS@ @QTCORE_CFLAGS@ @QTNETWORK_CFLAGS@ @QTDBUS_CFLAGS@ @QGCONF_CFLAGS@ @CONNSETTINGS_CFLAGS@
-LIBS = @GLIB_LIBS@ @DBUS_LIBS@ @GCONF_LIBS@ @OSSO_IC_LIBS@ @ICD_DEV_LIBS@ @QTCORE_LIBS@ @QTDBUS_LIBS@ @QTNETWORK_CFLAGS@ @QGCONF_LIBS@ @CONNSETTINGS_LIBS@
-
-AM_CFLAGS = $(CONCFLAGS)
-
-lib_LTLIBRARIES = libconninet.la
-libconninet_la_SOURCES = \
- maemo_icd.cpp \
- dbusdispatcher.cpp \
- iapconf.cpp \
- iapmonitor.cpp \
- proxyconf.cpp
-
-#libconninet_la_LDFLAGS = -version-info 0:0:0
-
-conninetincludedir = $(includedir)/conninet
-conninetinclude_HEADERS = \
- maemo_icd.h \
- dbusdispatcher.h \
- iapconf.h \
- iapmonitor.h \
- proxyconf.h
-
-nodist_libconninet_la_SOURCES = \
- moc_maemo_icd.cpp \
- moc_dbusdispatcher.cpp
-
-MAINTAINERCLEANFILES = Makefile.in
-
-# This rule lets GNU make create any moc_*.cpp from the equivalent *.h
-moc_%.cpp: %.h
- moc $< -o $@
-
-# This line ensures that generated moc files are deleted when we make clean.
-CLEANFILES = *_moc.cpp *.loT
diff --git a/src/3rdparty/libconninet/src/dbusdispatcher.cpp b/src/3rdparty/libconninet/src/dbusdispatcher.cpp
index f5b830a..7581982 100644
--- a/src/3rdparty/libconninet/src/dbusdispatcher.cpp
+++ b/src/3rdparty/libconninet/src/dbusdispatcher.cpp
@@ -31,7 +31,7 @@
namespace Maemo {
/*!
- \class Maemo::DBusDispatcher
+ \class DBusDispatcher
\brief DBusDispatcher is a class, which is able to send DBUS method call
messages and receive unicast signals from DBUS object.
diff --git a/src/3rdparty/libconninet/src/maemo_icd.cpp b/src/3rdparty/libconninet/src/maemo_icd.cpp
index bc84fbc..026241c 100644
--- a/src/3rdparty/libconninet/src/maemo_icd.cpp
+++ b/src/3rdparty/libconninet/src/maemo_icd.cpp
@@ -30,9 +30,30 @@
#include <dbus/dbus.h>
#include <dbus/dbus-glib-lowlevel.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <unistd.h>
namespace Maemo {
+#undef PRINT_DEBUGINFO
+#ifdef PRINT_DEBUGINFO
+ static FILE *fdebug = NULL;
+#define PDEBUG(fmt, args...) \
+ do { \
+ struct timeval tv; \
+ gettimeofday(&tv, 0); \
+ fprintf(fdebug, "DEBUG[%d]:%ld.%ld:%s:%s():%d: " fmt, \
+ getpid(), \
+ tv.tv_sec, tv.tv_usec, \
+ __FILE__, __FUNCTION__, __LINE__, args); \
+ fflush(fdebug); \
+ } while(0)
+#else
+#define PDEBUG(fmt...)
+#endif
+
+
/* Reference counting singleton class that creates a single connection
* to icd so that icd reference counting works as expected. This is
* needed because DBusDispatcher uses private dbus connections
@@ -239,6 +260,13 @@ public:
icd = myfriend;
timeout = dbus_timeout;
+
+#ifdef PRINT_DEBUGINFO
+ if (!fdebug) {
+ fdebug = fopen("/tmp/maemoicd.log", "a+");
+ }
+ PDEBUG("created %s\n", "IcdPrivate");
+#endif
}
void clearState()
@@ -672,6 +700,8 @@ uint IcdPrivate::state_non_blocking(QList<IcdStateResult>& state_results)
uint signals_left, total_signals;
IcdStateResult result;
+ PDEBUG("%s\n", "non blocking state");
+
clearState();
reply = mDBus->call(ICD_DBUS_API_STATE_REQ);
if (reply.type() != QVariant::List)
@@ -719,6 +749,7 @@ uint IcdPrivate::state_non_blocking(QList<IcdStateResult>& state_results)
}
timer.stop();
+ PDEBUG("total_signals=%d\n", total_signals);
return total_signals;
}
@@ -731,11 +762,14 @@ uint IcdPrivate::state_non_blocking(QList<IcdStateResult>& state_results)
*/
uint IcdPrivate::state(QList<IcdStateResult>& state_results)
{
- QTimer timer;
QVariant reply;
QVariantList vl;
uint signals_left, total_signals;
IcdStateResult result;
+ time_t started;
+ int timeout_secs = timeout / 1000;
+
+ PDEBUG("%s\n", "state_results");
clearState();
reply = mDBus->call(ICD_DBUS_API_STATE_REQ);
@@ -749,17 +783,16 @@ uint IcdPrivate::state(QList<IcdStateResult>& state_results)
if (!signals_left)
return 0;
- timer.setSingleShot(true);
- timer.start(timeout);
+ started = time(0);
state_results.clear();
mError.clear();
while (signals_left) {
mInterface.clear();
- while (timer.isActive() && mInterface.isEmpty()) {
+ while ((time(0)<=(started+timeout_secs)) && mInterface.isEmpty()) {
mDBus->synchronousDispatch(1000);
}
- if (!timer.isActive()) {
+ if (time(0)>(started+timeout_secs)) {
total_signals = 0;
break;
}
@@ -782,8 +815,8 @@ uint IcdPrivate::state(QList<IcdStateResult>& state_results)
break;
}
}
- timer.stop();
+ PDEBUG("total_signals=%d\n", total_signals);
return total_signals;
}
@@ -956,11 +989,14 @@ static void get_addrinfo_all_result(QList<QVariant>& args,
*/
uint IcdPrivate::addrinfo(QList<IcdAddressInfoResult>& addr_results)
{
- QTimer timer;
QVariant reply;
QVariantList vl;
uint signals_left, total_signals;
IcdAddressInfoResult result;
+ time_t started;
+ int timeout_secs = timeout / 1000;
+
+ PDEBUG("%s\n", "addr_results");
clearState();
reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ);
@@ -976,16 +1012,15 @@ uint IcdPrivate::addrinfo(QList<IcdAddressInfoResult>& addr_results)
if (!signals_left)
return 0;
- timer.setSingleShot(true);
- timer.start(timeout);
+ started = time(0);
addr_results.clear();
while (signals_left) {
mInterface.clear();
- while (timer.isActive() && mInterface.isEmpty()) {
+ while ((time(0)<=(started+timeout_secs)) && mInterface.isEmpty()) {
mDBus->synchronousDispatch(1000);
}
- if (!timer.isActive()) {
+ if (time(0)>(started+timeout_secs)) {
total_signals = 0;
break;
}
@@ -1003,7 +1038,8 @@ uint IcdPrivate::addrinfo(QList<IcdAddressInfoResult>& addr_results)
break;
}
}
- timer.stop();
+
+ PDEBUG("total_signals=%d\n", total_signals);
return total_signals;
}
@@ -1015,6 +1051,8 @@ uint IcdPrivate::addrinfo_non_blocking(QList<IcdAddressInfoResult>& addr_results
uint signals_left, total_signals;
IcdAddressInfoResult result;
+ PDEBUG("%s\n", "non blocking addrinfo");
+
clearState();
reply = mDBus->call(ICD_DBUS_API_ADDRINFO_REQ);
if (reply.type() != QVariant::List)
@@ -1057,6 +1095,7 @@ uint IcdPrivate::addrinfo_non_blocking(QList<IcdAddressInfoResult>& addr_results
}
}
timer.stop();
+ PDEBUG("total_signals=%d\n", total_signals);
return total_signals;
}
diff --git a/src/3rdparty/libconninet/tests/Makefile.am b/src/3rdparty/libconninet/tests/Makefile.am
deleted file mode 100644
index f6f41ea..0000000
--- a/src/3rdparty/libconninet/tests/Makefile.am
+++ /dev/null
@@ -1,39 +0,0 @@
-DEFS = -DDBUS_API_SUBJECT_TO_CHANGE
-INCLUDES = @GLIB_CFLAGS@ @DBUS_CFLAGS@ @CONNSETTINGS_CFLAGS@ @OSSO_IC_CFLAGS@ @ICD_DEV_CFLAGS@ \
- @QTCORE_CFLAGS@ @QTDBUS_CFLAGS@ @QTCORE_CFLAGS@ @QTNETWORK_CFLAGS@ @QTTEST_CFLAGS@ \
- -I$(top_srcdir) \
- -I$(top_srcdir)/src
-
-LIBS = @GLIB_LIBS@ @DBUS_LIBS@ @CONNSETTINGS_LIBS@ @OSSO_IC_LIBS@ @ICD_DEV_LIBS@ \
- @QTCORE_LIBS@ @QTDBUS_LIBS@ @QTCORE_LIBS@ @QTNETWORK_LIBS@ @QTTEST_LIBS@ \
- $(top_builddir)/src/libconninet.la
-
-AM_CFLAGS = $(CONCFLAGS)
-AM_LDFLAGS = -static
-
-bin_PROGRAMS = test_dbusdispatcher test_iapconf test_maemo_icd test_iapmonitor test_proxyconf
-
-test_dbusdispatcher_SOURCES = ut_dbusdispatcher.cpp
-ut_dbusdispatcher.o: ut_dbusdispatcher.moc
-
-test_iapconf_SOURCES = ut_iapconf.cpp
-ut_iapconf.o: ut_iapconf.moc
-
-test_maemo_icd_SOURCES = ut_maemo_icd.cpp
-ut_maemo_icd.o: ut_maemo_icd.moc
-
-test_iapmonitor_SOURCES = ut_iapmonitor.cpp
-ut_iapmonitor.o: ut_iapmonitor.moc
-
-test_proxyconf_SOURCES = ut_proxyconf.cpp
-ut_proxyconf.o: ut_proxyconf.moc
-
-
-MAINTAINERCLEANFILES = Makefile.in
-
-# This rule lets GNU make create any *.moc from the equivalent *.cpp
-%.moc: %.cpp
- moc $< -o $@
-
-# This line ensures that generated moc files are deleted when we make clean.
-CLEANFILES = *.moc
diff --git a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp
index 9dcba60..c1ca23d 100644
--- a/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp
+++ b/src/3rdparty/webkit/WebKit/qt/declarative/qdeclarativewebview.cpp
@@ -139,6 +139,7 @@ void GraphicsWebView::mouseMoveEvent(QGraphicsSceneMouseEvent* event)
/*!
\qmlclass WebView QDeclarativeWebView
+ \ingroup qml-view-elements
\since 4.7
\brief The WebView item allows you to add web content to a canvas.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp b/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp
index d8527d3..e0a2149 100644
--- a/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeanimatedimage.cpp
@@ -62,7 +62,8 @@ QT_BEGIN_NAMESPACE
\qmlclass AnimatedImage QDeclarativeAnimatedImage
\inherits Image
\since 4.7
-
+ \ingroup basic-visual-elements
+
The AnimatedImage element provides for playing animations stored as images containing a series of frames,
such as GIF files.
diff --git a/src/declarative/graphicsitems/qdeclarativeborderimage.cpp b/src/declarative/graphicsitems/qdeclarativeborderimage.cpp
index 4881248..e0c7fc2 100644
--- a/src/declarative/graphicsitems/qdeclarativeborderimage.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeborderimage.cpp
@@ -56,6 +56,7 @@ QT_BEGIN_NAMESPACE
\brief The BorderImage element provides an image that can be used as a border.
\inherits Item
\since 4.7
+ \ingroup qm-basic-visual-elements
A BorderImage breaks an image into 9 sections, as shown below:
diff --git a/src/declarative/graphicsitems/qdeclarativeevents.cpp b/src/declarative/graphicsitems/qdeclarativeevents.cpp
index 81ec6e1..0a35a3f 100644
--- a/src/declarative/graphicsitems/qdeclarativeevents.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeevents.cpp
@@ -45,6 +45,8 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass KeyEvent QDeclarativeKeyEvent
\since 4.7
+ \ingroup qml-event-elements
+
\brief The KeyEvent object provides information about a key event.
For example, the following changes the Item's state property when the Enter
@@ -115,6 +117,8 @@ Item {
/*!
\qmlclass MouseEvent QDeclarativeMouseEvent
\since 4.7
+ \ingroup qml-event-elements
+
\brief The MouseEvent object provides information about a mouse event.
The position of the mouse can be found via the x and y properties.
diff --git a/src/declarative/graphicsitems/qdeclarativeflickable.cpp b/src/declarative/graphicsitems/qdeclarativeflickable.cpp
index 19cabdd..31f7707 100644
--- a/src/declarative/graphicsitems/qdeclarativeflickable.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeflickable.cpp
@@ -345,6 +345,8 @@ void QDeclarativeFlickablePrivate::updateBeginningEnd()
/*!
\qmlclass Flickable QDeclarativeFlickable
\since 4.7
+ \ingroup qml-basic-interaction-elements
+
\brief The Flickable item provides a surface that can be "flicked".
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativeflipable.cpp b/src/declarative/graphicsitems/qdeclarativeflipable.cpp
index b266273..6ce0fa6 100644
--- a/src/declarative/graphicsitems/qdeclarativeflipable.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeflipable.cpp
@@ -70,6 +70,8 @@ public:
/*!
\qmlclass Flipable QDeclarativeFlipable
\since 4.7
+ \ingroup qml-basic-interaction-elements
+
\brief The Flipable item provides a surface that can be flipped.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp b/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp
index bd60e25..5c7959a 100644
--- a/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp
+++ b/src/declarative/graphicsitems/qdeclarativefocuspanel.cpp
@@ -51,6 +51,8 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass FocusPanel QDeclarativeFocusPanel
\since 4.7
+ \ingroup qml-basic-interaction-elements
+
\brief The FocusPanel item explicitly creates a focus panel.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativefocusscope.cpp b/src/declarative/graphicsitems/qdeclarativefocusscope.cpp
index e8e6fa2..4498275 100644
--- a/src/declarative/graphicsitems/qdeclarativefocusscope.cpp
+++ b/src/declarative/graphicsitems/qdeclarativefocusscope.cpp
@@ -48,6 +48,8 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass FocusScope QDeclarativeFocusScope
\since 4.7
+ \ingroup qml-basic-interaction-elements
+
\brief The FocusScope object explicitly creates a focus scope.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativegridview.cpp b/src/declarative/graphicsitems/qdeclarativegridview.cpp
index 68a4c64..d67e69a 100644
--- a/src/declarative/graphicsitems/qdeclarativegridview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativegridview.cpp
@@ -1056,6 +1056,8 @@ void QDeclarativeGridViewPrivate::flick(AxisData &data, qreal minExtent, qreal m
/*!
\qmlclass GridView QDeclarativeGridView
\since 4.7
+ \ingroup qml-view-elements
+
\inherits Flickable
\brief The GridView item provides a grid view of items provided by a model.
diff --git a/src/declarative/graphicsitems/qdeclarativeimage.cpp b/src/declarative/graphicsitems/qdeclarativeimage.cpp
index 37736cc..47a410c 100644
--- a/src/declarative/graphicsitems/qdeclarativeimage.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeimage.cpp
@@ -51,6 +51,8 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Image QDeclarativeImage
\since 4.7
+ \ingroup qml-vasic-visual-elements
+
\brief The Image element allows you to add bitmaps to a scene.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativeitem.cpp b/src/declarative/graphicsitems/qdeclarativeitem.cpp
index cc7c673..0f16a79 100644
--- a/src/declarative/graphicsitems/qdeclarativeitem.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeitem.cpp
@@ -69,6 +69,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Transform QGraphicsTransform
+ \ingroup qml-transform-elements
\since 4.7
\brief The Transform elements provide a way of building advanced transformations on Items.
@@ -90,6 +91,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Translate QDeclarativeTranslate
+ \ingroup qml-transform-elements
\since 4.7
\brief The Translate object provides a way to move an Item without changing its x or y properties.
@@ -131,6 +133,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Scale QGraphicsScale
+ \ingroup qml-transform-elements
\since 4.7
\brief The Scale element provides a way to scale an Item.
@@ -172,6 +175,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Rotation QGraphicsRotation
+ \ingroup qml-transform-elements
\since 4.7
\brief The Rotation object provides a way to rotate an Item.
@@ -419,6 +423,7 @@ void QDeclarativeItemKeyFilter::componentComplete()
/*!
\qmlclass KeyNavigation QDeclarativeKeyNavigationAttached
+ \ingroup qml-basic-interaction-elements
\since 4.7
\brief The KeyNavigation attached property supports key navigation by arrow keys.
@@ -725,6 +730,7 @@ void QDeclarativeKeyNavigationAttached::keyReleased(QKeyEvent *event, bool post)
/*!
\qmlclass Keys QDeclarativeKeysAttached
+ \ingroup qml-basic-interaction-elements
\since 4.7
\brief The Keys attached property provides key handling to Items.
@@ -1310,6 +1316,7 @@ QDeclarativeKeysAttached *QDeclarativeKeysAttached::qmlAttachedProperties(QObjec
/*!
\qmlclass Item QDeclarativeItem
+ \ingroup qml-basic-visual-elements
\since 4.7
\brief The Item is the most basic of all visual items in QML.
diff --git a/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp b/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp
index 38d5f59..8509473 100644
--- a/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp
+++ b/src/declarative/graphicsitems/qdeclarativelayoutitem.cpp
@@ -49,6 +49,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass LayoutItem QDeclarativeLayoutItem
+ \ingroup qml-utility-elements
\since 4.7
\brief The LayoutItem element allows declarative UI elements to be placed inside Qt's Graphics View layouts.
diff --git a/src/declarative/graphicsitems/qdeclarativelistview.cpp b/src/declarative/graphicsitems/qdeclarativelistview.cpp
index e1dd1c0..ec1b6cf 100644
--- a/src/declarative/graphicsitems/qdeclarativelistview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativelistview.cpp
@@ -1357,6 +1357,7 @@ void QDeclarativeListViewPrivate::flick(AxisData &data, qreal minExtent, qreal m
/*!
\qmlclass ListView QDeclarativeListView
+ \ingroup qml-view-elements
\since 4.7
\inherits Flickable
\brief The ListView item provides a list view of items provided by a model.
diff --git a/src/declarative/graphicsitems/qdeclarativeloader.cpp b/src/declarative/graphicsitems/qdeclarativeloader.cpp
index d28181e..4c6268f 100644
--- a/src/declarative/graphicsitems/qdeclarativeloader.cpp
+++ b/src/declarative/graphicsitems/qdeclarativeloader.cpp
@@ -108,6 +108,7 @@ void QDeclarativeLoaderPrivate::initResize()
/*!
\qmlclass Loader QDeclarativeLoader
+ \ingroup qml-utility-elements
\since 4.7
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativemousearea.cpp b/src/declarative/graphicsitems/qdeclarativemousearea.cpp
index dcdb9f6..2823888 100644
--- a/src/declarative/graphicsitems/qdeclarativemousearea.cpp
+++ b/src/declarative/graphicsitems/qdeclarativemousearea.cpp
@@ -180,6 +180,7 @@ QDeclarativeMouseAreaPrivate::~QDeclarativeMouseAreaPrivate()
/*!
\qmlclass MouseArea QDeclarativeMouseArea
+ \ingroup qml-basic-interaction-elements
\since 4.7
\brief The MouseArea item enables simple mouse handling.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativepath.cpp b/src/declarative/graphicsitems/qdeclarativepath.cpp
index c48011d3..62e03e7 100644
--- a/src/declarative/graphicsitems/qdeclarativepath.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepath.cpp
@@ -51,6 +51,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass PathElement QDeclarativePathElement
+ \ingroup qml-view-elements
\since 4.7
\brief PathElement is the base path type.
@@ -67,6 +68,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Path QDeclarativePath
+ \ingroup qml-view-elements
\since 4.7
\brief A Path object defines a path for use by \l PathView.
@@ -497,6 +499,7 @@ void QDeclarativeCurve::setY(qreal y)
/*!
\qmlclass PathAttribute QDeclarativePathAttribute
+ \ingroup qml-view-elements
\since 4.7
\brief The PathAttribute allows setting an attribute at a given position in a Path.
@@ -587,6 +590,7 @@ void QDeclarativePathAttribute::setValue(qreal value)
/*!
\qmlclass PathLine QDeclarativePathLine
+ \ingroup qml-view-elements
\since 4.7
\brief The PathLine defines a straight line.
@@ -627,6 +631,7 @@ void QDeclarativePathLine::addToPath(QPainterPath &path)
/*!
\qmlclass PathQuad QDeclarativePathQuad
+ \ingroup qml-view-elements
\since 4.7
\brief The PathQuad defines a quadratic Bezier curve with a control point.
@@ -713,6 +718,7 @@ void QDeclarativePathQuad::addToPath(QPainterPath &path)
/*!
\qmlclass PathCubic QDeclarativePathCubic
+ \ingroup qml-view-elements
\since 4.7
\brief The PathCubic defines a cubic Bezier curve with two control points.
@@ -828,6 +834,7 @@ void QDeclarativePathCubic::addToPath(QPainterPath &path)
/*!
\qmlclass PathPercent QDeclarativePathPercent
+ \ingroup qml-view-elements
\since 4.7
\brief The PathPercent manipulates the way a path is interpreted.
diff --git a/src/declarative/graphicsitems/qdeclarativepathview.cpp b/src/declarative/graphicsitems/qdeclarativepathview.cpp
index 380c6ad..535fb90 100644
--- a/src/declarative/graphicsitems/qdeclarativepathview.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepathview.cpp
@@ -326,6 +326,7 @@ void QDeclarativePathViewPrivate::regenerate()
/*!
\qmlclass PathView QDeclarativePathView
+ \ingroup qml-view-elements
\since 4.7
\brief The PathView element lays out model-provided items on a path.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativepositioners.cpp b/src/declarative/graphicsitems/qdeclarativepositioners.cpp
index 179f13d..5c21b03 100644
--- a/src/declarative/graphicsitems/qdeclarativepositioners.cpp
+++ b/src/declarative/graphicsitems/qdeclarativepositioners.cpp
@@ -310,6 +310,7 @@ static inline bool isInvisible(QDeclarativeItem *child)
/*!
\qmlclass Column QDeclarativeColumn
+ \ingroup qml-positioning-elements
\since 4.7
\brief The Column item arranges its children vertically.
\inherits Item
@@ -475,6 +476,7 @@ void QDeclarativeColumn::reportConflictingAnchors()
/*!
\qmlclass Row QDeclarativeRow
+ \ingroup qml-positioning-elements
\since 4.7
\brief The Row item arranges its children horizontally.
\inherits Item
@@ -613,6 +615,7 @@ void QDeclarativeRow::reportConflictingAnchors()
/*!
\qmlclass Grid QDeclarativeGrid
+ \ingroup qml-positioning-elements
\since 4.7
\brief The Grid item positions its children in a grid.
\inherits Item
@@ -905,6 +908,7 @@ void QDeclarativeGrid::reportConflictingAnchors()
/*!
\qmlclass Flow QDeclarativeFlow
+ \ingroup qml-positioning-elements
\since 4.7
\brief The Flow item arranges its children side by side, wrapping as necessary.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativerectangle.cpp b/src/declarative/graphicsitems/qdeclarativerectangle.cpp
index c49be46..5990c2d 100644
--- a/src/declarative/graphicsitems/qdeclarativerectangle.cpp
+++ b/src/declarative/graphicsitems/qdeclarativerectangle.cpp
@@ -84,6 +84,7 @@ void QDeclarativePen::setWidth(int w)
/*!
\qmlclass GradientStop QDeclarativeGradientStop
+ \ingroup qml-basic-visual-elements
\since 4.7
\brief The GradientStop item defines the color at a position in a Gradient
@@ -105,6 +106,7 @@ void QDeclarativeGradientStop::updateGradient()
/*!
\qmlclass Gradient QDeclarativeGradient
+ \ingroup qml-basic-visual-elements
\since 4.7
\brief The Gradient item defines a gradient fill.
@@ -152,6 +154,7 @@ void QDeclarativeGradient::doUpdate()
/*!
\qmlclass Rectangle QDeclarativeRectangle
+ \ingroup qml-basic-visual-elements
\since 4.7
\brief The Rectangle item allows you to add rectangles to a scene.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativerepeater.cpp b/src/declarative/graphicsitems/qdeclarativerepeater.cpp
index 68e7e9a..8828d3e 100644
--- a/src/declarative/graphicsitems/qdeclarativerepeater.cpp
+++ b/src/declarative/graphicsitems/qdeclarativerepeater.cpp
@@ -62,6 +62,7 @@ QDeclarativeRepeaterPrivate::~QDeclarativeRepeaterPrivate()
/*!
\qmlclass Repeater QDeclarativeRepeater
+ \ingroup qml-utility-elements
\since 4.7
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativetext.cpp b/src/declarative/graphicsitems/qdeclarativetext.cpp
index ab2be9c..fcd112e 100644
--- a/src/declarative/graphicsitems/qdeclarativetext.cpp
+++ b/src/declarative/graphicsitems/qdeclarativetext.cpp
@@ -162,7 +162,8 @@ QSet<QUrl> QTextDocumentWithImageResources::errors;
/*!
\qmlclass Text QDeclarativeText
- \since 4.7
+ \ingroup qml-basic-visual-elements
+ \since 4.7
\brief The Text item allows you to add formatted text to a scene.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativetextedit.cpp b/src/declarative/graphicsitems/qdeclarativetextedit.cpp
index 8117676..b8e8726 100644
--- a/src/declarative/graphicsitems/qdeclarativetextedit.cpp
+++ b/src/declarative/graphicsitems/qdeclarativetextedit.cpp
@@ -61,6 +61,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass TextEdit QDeclarativeTextEdit
+ \ingroup qml-basic-visual-elements
\since 4.7
\brief The TextEdit item displays multiple lines of editable formatted text.
\inherits Item
diff --git a/src/declarative/graphicsitems/qdeclarativetextinput.cpp b/src/declarative/graphicsitems/qdeclarativetextinput.cpp
index 90f5a70..bd8d404 100644
--- a/src/declarative/graphicsitems/qdeclarativetextinput.cpp
+++ b/src/declarative/graphicsitems/qdeclarativetextinput.cpp
@@ -57,6 +57,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass TextInput QDeclarativeTextInput
+ \ingroup qml-basic-visual-elements
\since 4.7
\brief The TextInput item displays an editable line of text.
\inherits Item
@@ -561,6 +562,7 @@ void QDeclarativeTextInput::setAutoScroll(bool b)
/*!
\qmlclass IntValidator QIntValidator
+ \ingroup qml-basic-visual-elements
This element provides a validator for integer values.
*/
@@ -579,6 +581,7 @@ void QDeclarativeTextInput::setAutoScroll(bool b)
/*!
\qmlclass DoubleValidator QDoubleValidator
+ \ingroup qml-basic-visual-elements
This element provides a validator for non-integer numbers.
*/
@@ -617,6 +620,7 @@ void QDeclarativeTextInput::setAutoScroll(bool b)
/*!
\qmlclass RegExpValidator QRegExpValidator
+ \ingroup qml-basic-visual-elements
This element provides a validator, which counts as valid any string which
matches a specified regular expression.
diff --git a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp
index a489b5a..764676a 100644
--- a/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp
+++ b/src/declarative/graphicsitems/qdeclarativevisualitemmodel.cpp
@@ -128,6 +128,7 @@ public:
/*!
\qmlclass VisualItemModel QDeclarativeVisualItemModel
+ \ingroup qml-working-with-data
\since 4.7
\brief The VisualItemModel allows items to be provided to a view.
@@ -644,6 +645,7 @@ QDeclarativeVisualDataModelData *QDeclarativeVisualDataModelPrivate::data(QObjec
/*!
\qmlclass VisualDataModel QDeclarativeVisualDataModel
+ \ingroup qml-working-with-data
\brief The VisualDataModel encapsulates a model and delegate
A VisualDataModel encapsulates a model and the delegate that will
diff --git a/src/declarative/qml/qdeclarativecomponent.cpp b/src/declarative/qml/qdeclarativecomponent.cpp
index 72de04d..15cef16 100644
--- a/src/declarative/qml/qdeclarativecomponent.cpp
+++ b/src/declarative/qml/qdeclarativecomponent.cpp
@@ -104,6 +104,7 @@ class QByteArray;
/*!
\qmlclass Component QDeclarativeComponent
+ \ingroup qml-utility-elements
\since 4.7
\brief The Component element encapsulates a QML component definition.
diff --git a/src/declarative/qml/qdeclarativeengine.cpp b/src/declarative/qml/qdeclarativeengine.cpp
index 8aab4c2..513fc65 100644
--- a/src/declarative/qml/qdeclarativeengine.cpp
+++ b/src/declarative/qml/qdeclarativeengine.cpp
@@ -114,6 +114,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass QtObject QObject
+ \ingroup qml-utility-elements
\since 4.7
\brief The QtObject element is the most basic element in QML.
@@ -185,6 +186,7 @@ void QDeclarativeEnginePrivate::defineModule()
/*!
\qmlclass QML:Qt QDeclarativeEnginePrivate
+ \ingroup qml-utility-elements
\brief The QML global Qt object provides useful enums and functions from Qt.
\keyword QmlGlobalQtObject
diff --git a/src/declarative/qml/qdeclarativeworkerscript.cpp b/src/declarative/qml/qdeclarativeworkerscript.cpp
index aec84a6..789116e 100644
--- a/src/declarative/qml/qdeclarativeworkerscript.cpp
+++ b/src/declarative/qml/qdeclarativeworkerscript.cpp
@@ -514,6 +514,7 @@ void QDeclarativeWorkerScriptEngine::run()
/*!
\qmlclass WorkerScript QDeclarativeWorkerScript
+ \ingroup qml-utility-elements
\brief The WorkerScript element enables the use of threads in QML.
Use WorkerScript to run operations in a new thread.
diff --git a/src/declarative/util/qdeclarativeanimation.cpp b/src/declarative/util/qdeclarativeanimation.cpp
index a747706..3b8cb37 100644
--- a/src/declarative/util/qdeclarativeanimation.cpp
+++ b/src/declarative/util/qdeclarativeanimation.cpp
@@ -74,6 +74,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Animation QDeclarativeAbstractAnimation
+ \ingroup qml-animation-transition
\since 4.7
\brief The Animation element is the base of all QML animations.
@@ -554,6 +555,7 @@ void QDeclarativeAbstractAnimation::timelineComplete()
/*!
\qmlclass PauseAnimation QDeclarativePauseAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The PauseAnimation element provides a pause for an animation.
@@ -630,6 +632,7 @@ QAbstractAnimation *QDeclarativePauseAnimation::qtAnimation()
/*!
\qmlclass ColorAnimation QDeclarativeColorAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits PropertyAnimation
\brief The ColorAnimation element animates changes in color values.
@@ -730,6 +733,7 @@ void QDeclarativeColorAnimation::setTo(const QColor &t)
/*!
\qmlclass ScriptAction QDeclarativeScriptAction
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The ScriptAction element allows scripts to be run during an animation.
@@ -878,6 +882,7 @@ QAbstractAnimation *QDeclarativeScriptAction::qtAnimation()
/*!
\qmlclass PropertyAction QDeclarativePropertyAction
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The PropertyAction element allows immediate property changes during animation.
@@ -1129,6 +1134,7 @@ void QDeclarativePropertyAction::transition(QDeclarativeStateActions &actions,
/*!
\qmlclass NumberAnimation QDeclarativeNumberAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits PropertyAnimation
\brief The NumberAnimation element animates changes in qreal-type values.
@@ -1238,6 +1244,7 @@ void QDeclarativeNumberAnimation::setTo(qreal t)
/*!
\qmlclass Vector3dAnimation QDeclarativeVector3dAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits PropertyAnimation
\brief The Vector3dAnimation element animates changes in QVector3d values.
@@ -1311,6 +1318,7 @@ void QDeclarativeVector3dAnimation::setTo(QVector3D t)
/*!
\qmlclass RotationAnimation QDeclarativeRotationAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits PropertyAnimation
\brief The RotationAnimation element animates changes in rotation values.
@@ -1540,6 +1548,7 @@ QDeclarativeListProperty<QDeclarativeAbstractAnimation> QDeclarativeAnimationGro
/*!
\qmlclass SequentialAnimation QDeclarativeSequentialAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The SequentialAnimation element allows animations to be run sequentially.
@@ -1613,6 +1622,7 @@ void QDeclarativeSequentialAnimation::transition(QDeclarativeStateActions &actio
/*!
\qmlclass ParallelAnimation QDeclarativeParallelAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The ParallelAnimation element allows animations to be run in parallel.
@@ -1731,6 +1741,7 @@ void QDeclarativePropertyAnimationPrivate::convertVariant(QVariant &variant, int
/*!
\qmlclass PropertyAnimation QDeclarativePropertyAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The PropertyAnimation element animates changes in property values.
@@ -2392,12 +2403,15 @@ void QDeclarativePropertyAnimation::transition(QDeclarativeStateActions &actions
d->actions = &data->actions;
} else {
delete data;
+ d->va->setFromSourcedValue(0); //clear previous data
+ d->va->setAnimValue(0, QAbstractAnimation::DeleteWhenStopped); //clear previous data
d->actions = 0;
}
}
/*!
\qmlclass ParentAnimation QDeclarativeParentAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The ParentAnimation element animates changes in parent values.
@@ -2757,6 +2771,7 @@ QAbstractAnimation *QDeclarativeParentAnimation::qtAnimation()
/*!
\qmlclass AnchorAnimation QDeclarativeAnchorAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits Animation
\brief The AnchorAnimation element animates changes in anchor values.
diff --git a/src/declarative/util/qdeclarativebehavior.cpp b/src/declarative/util/qdeclarativebehavior.cpp
index 1e7f81a..f1b6f9a 100644
--- a/src/declarative/util/qdeclarativebehavior.cpp
+++ b/src/declarative/util/qdeclarativebehavior.cpp
@@ -72,6 +72,7 @@ public:
/*!
\qmlclass Behavior QDeclarativeBehavior
+ \ingroup qml-animation-transition
\since 4.7
\brief The Behavior element allows you to specify a default animation for a property change.
diff --git a/src/declarative/util/qdeclarativebind.cpp b/src/declarative/util/qdeclarativebind.cpp
index 5fab631..86d08f5 100644
--- a/src/declarative/util/qdeclarativebind.cpp
+++ b/src/declarative/util/qdeclarativebind.cpp
@@ -72,6 +72,7 @@ public:
/*!
\qmlclass Binding QDeclarativeBind
+ \ingroup qml-working-with-data
\since 4.7
\brief The Binding element allows arbitrary property bindings to be created.
diff --git a/src/declarative/util/qdeclarativeconnections.cpp b/src/declarative/util/qdeclarativeconnections.cpp
index b364821..293928e 100644
--- a/src/declarative/util/qdeclarativeconnections.cpp
+++ b/src/declarative/util/qdeclarativeconnections.cpp
@@ -71,6 +71,7 @@ public:
/*!
\qmlclass Connections QDeclarativeConnections
+ \ingroup qml-utility-elements
\since 4.7
\brief A Connections element describes generalized connections to signals.
diff --git a/src/declarative/util/qdeclarativefontloader.cpp b/src/declarative/util/qdeclarativefontloader.cpp
index 83bdb17..291583c 100644
--- a/src/declarative/util/qdeclarativefontloader.cpp
+++ b/src/declarative/util/qdeclarativefontloader.cpp
@@ -78,6 +78,7 @@ public:
/*!
\qmlclass FontLoader QDeclarativeFontLoader
+ \ingroup qml-utility-elements
\since 4.7
\brief The FontLoader element allows fonts to be loaded by name or URL.
diff --git a/src/declarative/util/qdeclarativelistmodel.cpp b/src/declarative/util/qdeclarativelistmodel.cpp
index 20fe3a9..1f66f0f 100644
--- a/src/declarative/util/qdeclarativelistmodel.cpp
+++ b/src/declarative/util/qdeclarativelistmodel.cpp
@@ -68,6 +68,7 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM
/*!
\qmlclass ListModel QDeclarativeListModel
+ \ingroup qml-working-with-data
\since 4.7
\brief The ListModel element defines a free-form list data source.
@@ -129,7 +130,7 @@ QDeclarativeListModelParser::ListInstruction *QDeclarativeListModelParser::ListM
\snippet examples/declarative/threading/threadedlistmodel/dataloader.js 0
- The application's \tt Timer object periodically sends a message to the
+working-with-data
worker script by calling \l WorkerScript::sendMessage(). When this message
is received, \l {WorkerScript::onMessage}{WorkerScript.onMessage()} is invoked in
\tt dataloader.js, which appends the current time to the list model.
@@ -769,6 +770,7 @@ bool QDeclarativeListModelParser::definesEmptyList(const QString &s)
/*!
\qmlclass ListElement
+ \ingroup qml-working-with-data
\since 4.7
\brief The ListElement element defines a data item in a ListModel.
diff --git a/src/declarative/util/qdeclarativepackage.cpp b/src/declarative/util/qdeclarativepackage.cpp
index 1a4f2a7..a5ec9b3 100644
--- a/src/declarative/util/qdeclarativepackage.cpp
+++ b/src/declarative/util/qdeclarativepackage.cpp
@@ -48,6 +48,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Package QDeclarativePackage
+ \ingroup qml-working-with-data
\brief Package provides a collection of named items.
The Package class is used in conjunction with
diff --git a/src/declarative/util/qdeclarativepropertychanges.cpp b/src/declarative/util/qdeclarativepropertychanges.cpp
index 12c6353..25edd35 100644
--- a/src/declarative/util/qdeclarativepropertychanges.cpp
+++ b/src/declarative/util/qdeclarativepropertychanges.cpp
@@ -61,6 +61,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass PropertyChanges QDeclarativePropertyChanges
+ \ingroup qml-state-elements
\since 4.7
\brief The PropertyChanges element describes new property bindings or values for a state.
diff --git a/src/declarative/util/qdeclarativesmoothedanimation.cpp b/src/declarative/util/qdeclarativesmoothedanimation.cpp
index 30e1491..b2f02e6 100644
--- a/src/declarative/util/qdeclarativesmoothedanimation.cpp
+++ b/src/declarative/util/qdeclarativesmoothedanimation.cpp
@@ -249,6 +249,7 @@ void QSmoothedAnimation::init()
/*!
\qmlclass SmoothedAnimation QDeclarativeSmoothedAnimation
+ \ingroup qml-animation-transition
\since 4.7
\inherits NumberAnimation
\brief The SmoothedAnimation element allows a property to smoothly track a value.
diff --git a/src/declarative/util/qdeclarativespringanimation.cpp b/src/declarative/util/qdeclarativespringanimation.cpp
index 6f4ac51..fce4097 100644
--- a/src/declarative/util/qdeclarativespringanimation.cpp
+++ b/src/declarative/util/qdeclarativespringanimation.cpp
@@ -228,6 +228,7 @@ void QDeclarativeSpringAnimationPrivate::updateMode()
/*!
\qmlclass SpringAnimation QDeclarativeSpringAnimation
+ \ingroup qml-animation-transition
\inherits Animation
\since 4.7
diff --git a/src/declarative/util/qdeclarativestate.cpp b/src/declarative/util/qdeclarativestate.cpp
index 028bacb..6e17cf2 100644
--- a/src/declarative/util/qdeclarativestate.cpp
+++ b/src/declarative/util/qdeclarativestate.cpp
@@ -133,6 +133,7 @@ QDeclarativeStateOperation::QDeclarativeStateOperation(QObjectPrivate &dd, QObje
/*!
\qmlclass State QDeclarativeState
+ \ingroup qml-state-elements
\since 4.7
\brief The State element defines configurations of objects and properties.
diff --git a/src/declarative/util/qdeclarativestategroup.cpp b/src/declarative/util/qdeclarativestategroup.cpp
index 1c1e964..fc90baa 100644
--- a/src/declarative/util/qdeclarativestategroup.cpp
+++ b/src/declarative/util/qdeclarativestategroup.cpp
@@ -88,6 +88,7 @@ public:
/*!
\qmlclass StateGroup QDeclarativeStateGroup
+ \ingroup qml-state-elements
\since 4.7
\brief The StateGroup element provides state support for non-Item elements.
diff --git a/src/declarative/util/qdeclarativestateoperations.cpp b/src/declarative/util/qdeclarativestateoperations.cpp
index 2291c16..6e6f0cb 100644
--- a/src/declarative/util/qdeclarativestateoperations.cpp
+++ b/src/declarative/util/qdeclarativestateoperations.cpp
@@ -161,6 +161,7 @@ void QDeclarativeParentChangePrivate::doChange(QDeclarativeItem *targetParent, Q
/*!
\preliminary
\qmlclass ParentChange QDeclarativeParentChange
+ \ingroup qml-state-elements
\brief The ParentChange element allows you to reparent an Item in a state change.
ParentChange reparents an item while preserving its visual appearance (position, size,
@@ -589,6 +590,7 @@ public:
/*!
\qmlclass StateChangeScript QDeclarativeStateChangeScript
+ \ingroup qml-state-elements
\brief The StateChangeScript element allows you to run a script in a state.
A StateChangeScript is run upon entering a state. You can optionally use
@@ -693,6 +695,7 @@ QString QDeclarativeStateChangeScript::typeName() const
/*!
\qmlclass AnchorChanges QDeclarativeAnchorChanges
+ \ingroup qml-state-elements
\brief The AnchorChanges element allows you to change the anchors of an item in a state.
The AnchorChanges element is used to modify the anchors of an item in a \l State.
diff --git a/src/declarative/util/qdeclarativesystempalette.cpp b/src/declarative/util/qdeclarativesystempalette.cpp
index c334859..7b80736 100644
--- a/src/declarative/util/qdeclarativesystempalette.cpp
+++ b/src/declarative/util/qdeclarativesystempalette.cpp
@@ -58,6 +58,7 @@ public:
/*!
\qmlclass SystemPalette QDeclarativeSystemPalette
+ \ingroup qml-utility-elements
\since 4.7
\brief The SystemPalette element provides access to the Qt palettes.
diff --git a/src/declarative/util/qdeclarativetimer.cpp b/src/declarative/util/qdeclarativetimer.cpp
index 838a8f3..56320e6 100644
--- a/src/declarative/util/qdeclarativetimer.cpp
+++ b/src/declarative/util/qdeclarativetimer.cpp
@@ -70,6 +70,7 @@ public:
/*!
\qmlclass Timer QDeclarativeTimer
+ \ingroup qml-utility-elements
\since 4.7
\brief The Timer item triggers a handler at a specified interval.
diff --git a/src/declarative/util/qdeclarativetransition.cpp b/src/declarative/util/qdeclarativetransition.cpp
index aa1426c..21d7ded 100644
--- a/src/declarative/util/qdeclarativetransition.cpp
+++ b/src/declarative/util/qdeclarativetransition.cpp
@@ -53,6 +53,7 @@ QT_BEGIN_NAMESPACE
/*!
\qmlclass Transition QDeclarativeTransition
+ \ingroup qml-animation-transition
\since 4.7
\brief The Transition element defines animated transitions that occur on state changes.
diff --git a/src/declarative/util/qdeclarativexmllistmodel.cpp b/src/declarative/util/qdeclarativexmllistmodel.cpp
index 8bd829e..7b3d4a8 100644
--- a/src/declarative/util/qdeclarativexmllistmodel.cpp
+++ b/src/declarative/util/qdeclarativexmllistmodel.cpp
@@ -72,6 +72,7 @@ typedef QPair<int, int> QDeclarativeXmlListRange;
/*!
\qmlclass XmlRole QDeclarativeXmlListModelRole
+ \ingroup qml-working-with-data
\since 4.7
\brief The XmlRole element allows you to specify a role for an XmlListModel.
@@ -505,6 +506,7 @@ void QDeclarativeXmlListModelPrivate::clear_role(QDeclarativeListProperty<QDecla
/*!
\qmlclass XmlListModel QDeclarativeXmlListModel
+ \ingroup qml-working-with-data
\since 4.7
\brief The XmlListModel element is used to specify a model using XPath expressions.
diff --git a/src/gui/painting/qgrayraster.c b/src/gui/painting/qgrayraster.c
index 5e7c67a..539a33c 100644
--- a/src/gui/painting/qgrayraster.c
+++ b/src/gui/painting/qgrayraster.c
@@ -956,53 +956,49 @@
const QT_FT_Vector* control2,
const QT_FT_Vector* to )
{
- TPos dx, dy, da, db;
int top, level;
int* levels;
QT_FT_Vector* arc;
+ int mid_x = ( DOWNSCALE( ras.x ) + to->x +
+ 3 * (control1->x + control2->x ) ) / 8;
+ int mid_y = ( DOWNSCALE( ras.y ) + to->y +
+ 3 * (control1->y + control2->y ) ) / 8;
+ TPos dx = DOWNSCALE( ras.x ) + to->x - ( mid_x << 1 );
+ TPos dy = DOWNSCALE( ras.y ) + to->y - ( mid_y << 1 );
- dx = DOWNSCALE( ras.x ) + to->x - ( control1->x << 1 );
if ( dx < 0 )
dx = -dx;
- dy = DOWNSCALE( ras.y ) + to->y - ( control1->y << 1 );
if ( dy < 0 )
dy = -dy;
if ( dx < dy )
dx = dy;
- da = dx;
-
- dx = DOWNSCALE( ras.x ) + to->x - 3 * ( control1->x + control2->x );
- if ( dx < 0 )
- dx = -dx;
- dy = DOWNSCALE( ras.y ) + to->y - 3 * ( control1->x + control2->y );
- if ( dy < 0 )
- dy = -dy;
- if ( dx < dy )
- dx = dy;
- db = dx;
level = 1;
- da = da / ras.cubic_level;
- db = db / ras.conic_level;
- while ( da > 0 || db > 0 )
+ dx /= ras.cubic_level;
+ while ( dx > 0 )
{
- da >>= 2;
- db >>= 3;
+ dx >>= 2;
level++;
}
if ( level <= 1 )
{
- TPos to_x, to_y, mid_x, mid_y;
+ TPos to_x, to_y;
to_x = UPSCALE( to->x );
to_y = UPSCALE( to->y );
+
+ /* Recalculation of midpoint is needed only if */
+ /* UPSCALE and DOWNSCALE have any effect. */
+
+#if ( PIXEL_BITS != 6 )
mid_x = ( ras.x + to_x +
3 * UPSCALE( control1->x + control2->x ) ) / 8;
mid_y = ( ras.y + to_y +
3 * UPSCALE( control1->y + control2->y ) ) / 8;
+#endif
gray_render_line( RAS_VAR_ mid_x, mid_y );
gray_render_line( RAS_VAR_ to_x, to_y );
diff --git a/src/gui/util/qcompleter.cpp b/src/gui/util/qcompleter.cpp
index 04d6de9..e718212 100644
--- a/src/gui/util/qcompleter.cpp
+++ b/src/gui/util/qcompleter.cpp
@@ -921,10 +921,12 @@ void QCompleterPrivate::showPopup(const QRect& rect)
void QCompleterPrivate::_q_fileSystemModelDirectoryLoaded(const QString &path)
{
Q_Q(QCompleter);
+#ifndef QT_NO_LINEEDIT
QLineEdit *lineEdit = qobject_cast<QLineEdit *>(widget);
//the path given by QFileSystemModel does not end with /
if (lineEdit && !lineEdit->text().isEmpty() && !q->completionPrefix().isEmpty() && q->completionPrefix() != path + QLatin1Char('/'))
q->complete();
+#endif
}
/*!
diff --git a/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp b/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp
index 2f4d1df..6c38911 100644
--- a/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp
+++ b/src/imports/folderlistmodel/qdeclarativefolderlistmodel.cpp
@@ -94,6 +94,7 @@ public:
/*!
\qmlclass FolderListModel QDeclarativeFolderListModel
+ \ingroup qml-working-with-data
\brief The FolderListModel provides a model of the contents of a folder in a filesystem.
FolderListModel provides access to the local filesystem. The \e folder property
diff --git a/src/imports/gestures/qdeclarativegesturearea.cpp b/src/imports/gestures/qdeclarativegesturearea.cpp
index ed936d5..500c6bf 100644
--- a/src/imports/gestures/qdeclarativegesturearea.cpp
+++ b/src/imports/gestures/qdeclarativegesturearea.cpp
@@ -79,6 +79,8 @@ public:
/*!
\qmlclass GestureArea QDeclarativeGestureArea
+ \ingroup qml-basic-interaction-elements
+
\brief The GestureArea item enables simple gesture handling.
\inherits Item
diff --git a/src/imports/particles/qdeclarativeparticles.cpp b/src/imports/particles/qdeclarativeparticles.cpp
index b842109..5cd9c0c 100644
--- a/src/imports/particles/qdeclarativeparticles.cpp
+++ b/src/imports/particles/qdeclarativeparticles.cpp
@@ -154,6 +154,7 @@ void QDeclarativeParticleMotion::destroy(QDeclarativeParticle &particle)
/*!
\qmlclass ParticleMotionLinear QDeclarativeParticleMotionLinear
+ \ingroup qml-particle-elements
\since 4.7
\brief The ParticleMotionLinear object moves particles linearly.
@@ -180,6 +181,7 @@ void QDeclarativeParticleMotionLinear::advance(QDeclarativeParticle &p, int inte
/*!
\qmlclass ParticleMotionGravity QDeclarativeParticleMotionGravity
+ \ingroup qml-particle-elements
\since 4.7
\brief The ParticleMotionGravity object moves particles towards a point.
@@ -271,6 +273,7 @@ void QDeclarativeParticleMotionGravity::advance(QDeclarativeParticle &p, int int
/*!
\qmlclass ParticleMotionWander QDeclarativeParticleMotionWander
+ \ingroup qml-particle-elements
\since 4.7
\brief The ParticleMotionWander object moves particles in a somewhat random fashion.
@@ -634,6 +637,7 @@ void QDeclarativeParticlesPrivate::updateOpacity(QDeclarativeParticle &p, int ag
/*!
\qmlclass Particles QDeclarativeParticles
+ \ingroup qml-particle-elements
\since 4.7
\brief The Particles object generates and moves particles.
\inherits Item
diff --git a/src/network/bearer/qnetworkconfigmanager_p.cpp b/src/network/bearer/qnetworkconfigmanager_p.cpp
index c4f7c00..dd174bf 100644
--- a/src/network/bearer/qnetworkconfigmanager_p.cpp
+++ b/src/network/bearer/qnetworkconfigmanager_p.cpp
@@ -63,6 +63,7 @@ QNetworkConfigurationManagerPrivate::QNetworkConfigurationManagerPrivate()
: pollTimer(0), mutex(QMutex::Recursive), forcedPolling(0), firstUpdate(true)
{
qRegisterMetaType<QNetworkConfiguration>("QNetworkConfiguration");
+ qRegisterMetaType<QNetworkConfigurationPrivatePointer>("QNetworkConfigurationPrivatePointer");
moveToThread(QCoreApplicationPrivate::mainThread());
updateConfigurations();
diff --git a/src/plugins/bearer/icd/qicdengine.cpp b/src/plugins/bearer/icd/qicdengine.cpp
index 0900329..3264f15 100644
--- a/src/plugins/bearer/icd/qicdengine.cpp
+++ b/src/plugins/bearer/icd/qicdengine.cpp
@@ -275,6 +275,8 @@ void QIcdEngine::initialize()
userChoiceConfigurations.insert(cpPriv->id, ptr);
doRequestUpdate();
+
+ getIcdInitialState();
}
static inline QString network_attrs_to_security(uint network_attrs)
@@ -623,7 +625,11 @@ void QIcdEngine::doRequestUpdate(QList<Maemo::IcdScanResult> scanned)
changed = true;
}
- if (ptr->state != QNetworkConfiguration::Discovered) {
+ /* If this config is the current active one, we do not set it
+ * to discovered.
+ */
+ if ((ptr->state != QNetworkConfiguration::Discovered) &&
+ (ptr->state != QNetworkConfiguration::Active)) {
ptr->state = QNetworkConfiguration::Discovered;
changed = true;
}
@@ -786,10 +792,48 @@ void QIcdEngine::startListeningStateSignalsForAllConnections()
ICD_DBUS_API_INTERFACE,
ICD_DBUS_API_STATE_SIG,
this, SLOT(connectionStateSignalsSlot(QDBusMessage)));
+}
+
+void QIcdEngine::getIcdInitialState()
+{
+ /* Instead of requesting ICD status asynchronously, we ask it synchronously.
+ * It ensures that we always get right icd status BEFORE initialize() ends.
+ * If not, initialize() might end before we got icd status and
+ * QNetworkConfigurationManager::updateConfigurations()
+ * call from user might also end before receiving icd status.
+ * In such case, we come up to a bug:
+ * QNetworkConfigurationManagerPrivate::isOnline() will be false even
+ * if we are connected.
+ */
+ Maemo::Icd icd;
+ QList<Maemo::IcdStateResult> state_results;
+ QNetworkConfigurationPrivatePointer ptr;
- // Calling ICD_DBUS_API_STATE_REQ makes sure that initial state will be updated immediately
- m_gettingInitialConnectionState = true;
- m_dbusInterface->call(ICD_DBUS_API_STATE_REQ);
+ if (icd.state(state_results) && !state_results.isEmpty()) {
+
+ if (!(state_results.first().params.network_attrs == 0 &&
+ state_results.first().params.network_id.isEmpty())) {
+
+ switch (state_results.first().state) {
+ case ICD_STATE_CONNECTED:
+ m_onlineIapId = state_results.first().params.network_id;
+
+ ptr = accessPointConfigurations.value(m_onlineIapId);
+ if (ptr) {
+ QMutexLocker configLocker(&ptr->mutex);
+ ptr->state = QNetworkConfiguration::Active;
+ configLocker.unlock();
+
+ mutex.unlock();
+ emit configurationChanged(ptr);
+ mutex.lock();
+ }
+ break;
+ default:
+ break;
+ }
+ }
+ }
}
void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg)
@@ -814,12 +858,12 @@ void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg)
ptr->type = QNetworkConfiguration::InternetAccessPoint;
if (ptr->state != QNetworkConfiguration::Active) {
ptr->state = QNetworkConfiguration::Active;
- if (!m_gettingInitialConnectionState) {
- configLocker.unlock();
- locker.unlock();
- emit configurationChanged(ptr);
- locker.relock();
- }
+
+ configLocker.unlock();
+ locker.unlock();
+ emit configurationChanged(ptr);
+ locker.relock();
+
m_onlineIapId = iapid;
}
} else {
@@ -840,22 +884,21 @@ void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg)
ptr->type = QNetworkConfiguration::InternetAccessPoint;
if (ptr->state == QNetworkConfiguration::Active) {
ptr->state = QNetworkConfiguration::Discovered;
- if (!m_gettingInitialConnectionState) {
- configLocker.unlock();
- locker.unlock();
- emit configurationChanged(ptr);
- locker.relock();
- // Note: If ICD switches used IAP from one to another:
- // 1) new IAP is reported to be online first
- // 2) old IAP is reported to be offline then
- // => Device can be reported to be offline only
- // if last known online IAP is reported to be disconnected
- if (iapid == m_onlineIapId) {
- // It's known that there is only one global ICD connection
- // => Because ICD state was reported to be DISCONNECTED, Device is offline
- m_onlineIapId.clear();
- }
+ configLocker.unlock();
+ locker.unlock();
+ emit configurationChanged(ptr);
+ locker.relock();
+
+ // Note: If ICD switches used IAP from one to another:
+ // 1) new IAP is reported to be online first
+ // 2) old IAP is reported to be offline then
+ // => Device can be reported to be offline only
+ // if last known online IAP is reported to be disconnected
+ if (iapid == m_onlineIapId) {
+ // It's known that there is only one global ICD connection
+ // => Because ICD state was reported to be DISCONNECTED, Device is offline
+ m_onlineIapId.clear();
}
}
} else {
@@ -876,8 +919,6 @@ void QIcdEngine::connectionStateSignalsSlot(QDBusMessage msg)
locker.unlock();
emit iapStateChanged(iapid, icd_connection_state);
locker.relock();
-
- m_gettingInitialConnectionState = false;
}
void QIcdEngine::requestUpdate()
diff --git a/src/plugins/bearer/icd/qicdengine.h b/src/plugins/bearer/icd/qicdengine.h
index a768d84..0d5ba27 100644
--- a/src/plugins/bearer/icd/qicdengine.h
+++ b/src/plugins/bearer/icd/qicdengine.h
@@ -152,6 +152,7 @@ private:
void startListeningStateSignalsForAllConnections();
void doRequestUpdate(QList<Maemo::IcdScanResult> scanned = QList<Maemo::IcdScanResult>());
void cancelAsyncConfigurationUpdate();
+ void getIcdInitialState();
private:
IapMonitor *iapMonitor;
@@ -162,7 +163,6 @@ private:
QList<Maemo::IcdScanResult> m_scanResult;
bool firstUpdate;
- bool m_gettingInitialConnectionState;
bool m_scanGoingOn;
};
diff --git a/src/plugins/bearer/icd/qnetworksession_impl.cpp b/src/plugins/bearer/icd/qnetworksession_impl.cpp
index 2583b28..3170bf6 100644
--- a/src/plugins/bearer/icd/qnetworksession_impl.cpp
+++ b/src/plugins/bearer/icd/qnetworksession_impl.cpp
@@ -339,8 +339,6 @@ void QNetworkSessionPrivateImpl::syncStateWithInterface()
isOpen = false;
opened = false;
- connect(&manager, SIGNAL(updateCompleted()), this, SLOT(networkConfigurationsChanged()));
-
connect(engine, SIGNAL(iapStateChanged(const QString&, uint)),
this, SLOT(iapStateChanged(const QString&, uint)));
@@ -460,14 +458,15 @@ void QNetworkSessionPrivateImpl::syncStateWithInterface()
else
ptr->name = ptr->id;
+ const QString identifier = ptr->id;
+
+ configLocker.unlock();
+
// Add the new active configuration to manager or update the old config
- if (!engine->hasIdentifier(ptr->id)) {
- configLocker.unlock();
+ if (!engine->hasIdentifier(identifier))
engine->addSessionConfiguration(ptr);
- } else {
- configLocker.unlock();
+ else
engine->changedSessionConfiguration(ptr);
- }
}
break;