| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
I don't want to link the tst_qsharedpointer test to QtGui, so I
created a new test.
This is testing only the basic manipulations. In special, it's not
testing invalid constructs.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the previous commit, you could create a QWeakPointer from any
QObject-derived object. It's possible because QObject now has a
pointer to the QWeakPointer's d-pointer.
However, if you did:
QSharedPointer<QObject> obj(new QObject);
QWeakPointer<QObject> weak1(obj);
QWeakPointer<QObject> weak2(obj.data());
Then weak1 would shared d-pointers with QSharedPointer, but weak2
wouldn't. Also, weak1.toStrongRef() would work, but
weak2.toStrongRef() wouldn't.
This change makes QObject know where the d-pointer created by
QSharedPointer is, so weak2 would get the same d-pointer.
As a nice side-effect, you can check if a given QObject is shared by
trying to promote its QWeakPointer to QSharedPointer.
Reviewed-by: Bradley T. Hughes
|
|
|
|
| |
with d=value=0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem with QPointer is that it's a simple QObject*. So the only
way for QPointer to do what it's supposed to do is if the object it's
pointing to clears all QPointers when getting deleted. That means the
QObject must know each and every QPointer pointing to it. To make
matters worse, QPointers can be deleted while the object they're
pointing to also gets deleted. So deleting QObjects must do locking.
The solution to the QPointer problem is that both QObject and the
"QPointer" reference something outside the QObject. This way,
QObject doesn't have to lock anything to destroy itself: it's simply
setting a volatile integer to zero when it gets deleted. Since the
integer is outside the QObject, the integer is also refcounted. It's also
O(1), so there's no problem having as many "QPointer".
The two-atomic-ints structure is exactly what QSharedPointer and
QWeakPointer use internally. We just abuse this structure for QObject
needs, setting the strong reference count to -1 to indicate that it's
a QObject that cannot be managed by a QSharedPointer. But QWeakPointer
can still work and replace QPointer neatly.
Reviewed-by: Bradley T. Hughes
Reviewed-by: Jarek Kobus
|
|
|
|
|
|
|
| |
Previously it was only switching between checked and unchecked.
Task-number: 259008
Reviewed-by: ogoffart
|
| |
|
|
|
|
|
|
| |
QPlainText edit does lazy line wrapping only for the visible blocks.
Resizing the editor in the auto test thus has to make it wide enough
that at least some characters are visible for the block to be laid out.
|
|
|
|
|
|
|
| |
GCC has template friends, so I wasn't seeing the error that d is
protected. Thanks to Robert for pointing out.
Reviewed-by: Robert Loehning <robert.loehning@nokia.com>
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
|
|
|
| |
If you only set the position, of the button without setting a geometry,
it did not work.
Task-number: 259226
|
|
|
|
|
|
|
|
|
|
| |
The commit 31edb4d5a63b9b3c28cce1c4ca6eb99f62a09759 introduced
regressions in filters which breaks the mac native dialog, the non
native dialog with HideNameFilterDetails activated.
Task-number:259105
Reviewed-by:olivier
Reviewed-by:prasanth
|
|
|
|
|
|
| |
A non painted (ie. garbage) area could appear if you had a fixed size
dock widget and you moved the separator. The previous place where the
separator was painted was not updated
|
|
|
|
|
|
| |
This was disabled by patch bf305bc2e488ad4f08c49767246f31a81218991e
Reviewed-by: Thomas Hartmann
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
| |
Reviewed-by: TrustMe
|
|
|
|
| |
Caused by an odd number of classes it seems.
|
|
|
|
|
|
|
| |
This is the desktop client for communicating with a Windows CE device
that runs the cetcpsync server.
Reviewed-By: mauricek
|
|
|
|
|
|
|
| |
cetcpsync is our simple ActiveSync replacement for Windows CE devices.
This is the server which has to run on the device.
Reviewed-By: mauricek
|
|
|
|
| |
Reviewed-By: mauricek
|
|
|
|
|
| |
We were calling pixelMetric and sizeFromContents with a NULL styleoption
That crashes on mac and might also with other styles.
|
|
|
|
|
|
| |
The command right now only lists the classes in the group, in alphabetical
order. Not ideal for integrating into overviews, where the list should be
ordered by relevance.
|
| |
|
|
|
|
|
|
|
|
| |
This error was printed if you used a \ingroup xxx,
but there was no \group xxx anywhere. Now we will
stop using the \group command, but we will retain
the \ingroup command for use with the \annotatedlist
command.
|
|
|
|
|
| |
Task-number: 229124
Reviewed-by: TrustMe
|
|
|
|
|
|
|
|
|
|
| |
Ensure we test simple and deep constructs of setParentItem(). These
benchmarks don't cover slowness in ancestor flag updating.
QVariant is already identified as a contributor to this slowness, as is
updating of the depth value (a deep tree crawl).
Reviewed-by: Aaron Kennedy
|
|
|
|
|
|
|
| |
a6ea9ce6990003856ecadcca8ce9ddf37949363d removed this function; the
benchmark was not updated.
Reviewed-by: TrustMe
|
| |
|
|\
| |
| |
| |
| |
| | |
Conflicts:
src/gui/graphicsview/qgraphicsitem.cpp
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Qt dialog treats extension filters as case insensitive where
the default behavior of the Gtk+ file dialog is to be case
sensitive. The GtkFileFilter allows only simple glob syntax to
be used so we basically rewrite the extension string from .xyz
to .[xX][yY][zZ].
Task-number: 259155
Reviewed-by: joao
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The problem was that our glib timers were given too high priority,
effectively starving the Gtk event loop. By assigning our timer source,
G_PRIORITY_DEFAULT_IDLE we ensure that all gtk+ events are handled first,
thus allowing the native dialogs to respond and repaint properly.
Task-number: 258433
Reviewed-by: bhughes
|
| |
| |
| |
| | |
Reviewed-by:TrustMe
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
updateAncestorFlags was not reseting the flags if you change the parent
that have for instance itemsClipChildrenToShape to a new one that
doesn't have that flag.
Task-number:258956
Reviewed-by:bnilsen
|
| |
| |
| |
| |
| |
| | |
Don't error out when building qmake, just let it build a 64-bit binary (even for carbon)
RebBy: Richard Moe Gustavsen
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
Task-number: 254407
Reviewed-by: Gunnar
|
| |/
| |
| |
| | |
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| | |
The record and primaryIndex functions don't take into account
that psql treats different casing as different entities when enquoted.
|
| |
| |
| |
| |
| |
| |
| | |
I renamed deletionNotification back to its original name. I had
forgotten that QWidget needed a similar change.
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
the item lost focus to an unrelated dialog.
The tests against the active modal window was unnecessary.
Task-number: 257859
Reviewed-by: olivier
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we're going to do changes to simplify some of the Declarative UI
enablers, let's do them all at once. That way, the adaptation
necessary happens only once, as opposed to every time we do the
changes.
I tried not to break by leaving a typedef, but obviously the
QObjectPrivate member isn't affected by the typedef...
Reviewed-by: Trust Me
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 128717b171f01c82e5f0fb83f5923d4f7b9cfc10.
The change broke Alien because QWidget no longer has the native window
handle in its own private. It needs to access the top-level window (or
the one with the native handle) in order to perform some operations.
The problem is that it needs to do that in the destructor. And we
cleared the parent before the destructor was run. Technically
speaking, reverting is the correct thing to do, since the parent
*still* exists when the child is deleted.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
changed the QRegExp filter back to the old form plus an additional
piece to allow international characters. the new regular expression now
allows a file type filter to contain a bracketed description prior to the
filter set itself.
259105
Andy Shaw
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
This function allows one to retrieve the pointer out of a QWeakPointer
without promoting it to QSharedPointer first. That means there are no
guarantees that the object won't get deleted.
Reviewed-by: Bradley T. Hughes
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also rename QDeclarativeData to QObjectDeletionNotification, since it
has no relation to declarative UI. It's just notification of the
object's deletion. Make the destructor non-inline and place it in
qobject.cpp, so that the virtual table is emitted there and exported
from QtCore.
Also move the QObjectData destructor to qobject.cpp. This means you
cannot create any class deriving directly from QObjectData outside
QtCore, which is the intention anyways (it's a private class and only
QObjectPrivate derives from it).
Reviewed-by: Bradley T. Hughes
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Accept that we cannot do everything, so users using outdated
toolchains may have threading problems (leaking file descriptors).
It's not like this is a recent problem anyway...
Reviewed-By: Bradley T. Hughes
|
| |
| |
| |
| |
| |
| |
| |
| | |
It doesn't make much sense to have that low-level info neither in the base
QGesture class, nor in the QPanGesture, as the latter one has offset properties
instead.
Reviewed-by: trustme
|
| |
| |
| |
| |
| |
| |
| |
| | |
Moved the gesture implementation to the imageviewer example as it cannot be
fully implemented in a crossplatform way - for example on Windows tap and hold
is a system gesture that is transparent to the application.
Reviewed-by: trustme
|