| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The MNG file format is generally abandoned, and libmng has been
unmaintained for several years.
The MNG plugin and bundled libmng has been moved to the
qtimageformats project on Gerrit.
Task-number: QTBUG-21869
Change-Id: I946432347014ffde2b72307a5f8b166ca5553602
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
|
|
|
|
|
|
|
|
|
| |
This provides a general notification of changes that may change the
validity of previously validated input.
Change-Id: I5ec6f127af60fdca68605fee903a08758bc01360
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
|
|
| |
The compile error got introduced due to the
change in QMetaType requiring fully defined
types for pointers.
Change-Id: I6383ff5923fc1d5bd3c1161e2823e83f2a06a99e
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The resetModel() signal indicates that the model is reset. Previously
there was no note that the signal is emitted also when endResetModel()
is called.
Task-number: QTBUG-23755
Change-Id: I6c3c1ccef580e9c1112c3af79912cffca675e140
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Merge it with Q_COMPILER_EXPLICIT_OVERRIDES
No compiler will implement one and not the other,
"overrideS" is a shortcut for the two features
It was even wrongly not defined with clang
Change-Id: I22dcffe6f0c96285c2b409a5ae9ce2f6f1652094
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is broken in most uses because it emits modelAboutToBeReset()
after actually resetting the internal data instead of before.
That is, usually it is used like this:
myData.clear();
reset();
Which should be
beginResetModel();
myData.clear();
endResetModel();
Change-Id: I7b00a1e40c4915930944340764074efc29faaf5a
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The existence of QAbstractItemModel virtual methods
moveRow, moveColumn, moveRows, and moveColumns
is implied by the existence of
beginMoveRows, endMoveRows, beginMoveColumns and endMoveColumns.
However, these were not actually provided by QAbstractItemModel.
With this change, subclasses can implement support for moving rows
and columns following the same pattern as for insert* and remove*.
Change-Id: Iad8b2223d4b9303abb6459c174a82ffed71a0fdf
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
glyphMargin() support for QTextureGlyphCache is implemented in
respective font engines, thus this function is platform dependent.
Before Qt 5 the code is guarded in macros like #ifdef Q_WS_MAC,
now we should move them into QFontEngine and its subclasses.
So far only Windows font engines support it. FreeType and Core Text
based font engines all ignore it.
Change-Id: Ia14016533d8fbfaacf848a7d3bc928f8197318f5
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
If we request a substring starting at the very end of the string,
QString::mid should return an empty string, not a null string.
For instance, QString("abc").mid(3, 0) used to return a null
one, while this patch makes it return an empty one. The
same thing applies to QString::midRef() and QByteArray::mid().
Change-Id: Ie9efd7a0622d429efd0fb682c19856c19e9469af
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously we only had QWindow::setOrientation() which was a hint about
the orientation the window's contents were rendered in.
However, it's necessary to separate between the orientation
corresponding to the window buffer layout and orientation of the
contents. A game for example might typically want to use a landscape
buffer even on a portrait device. Thus, we replace
QWindow::orientation() with QWindow::reportContentOrientationChange() and
QWindow::requestWindowOrientation().
Change-Id: I1f07362192daf36c45519cb05b43ac352f1945b5
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
|
| |
Enable 'Close' of system menu according to whether escape
button is present.
Change-Id: I305e4732f781dbe2d81c2503ee278ec33579acdb
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This imports the JSON support for Qt 5 from
playground/qtbinaryjson.
It adds a fast, fully compliant json parser, a
convenient C++ API, conversion to and from
QVariants and a binary format for JSON that is
extremely fast to use together with the C++ API.
Change-Id: If9e3a21a4241d388d0abaa446b6824f9cc6edb1c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a source incompatible change for Q_DECLARE_METATYPE(T*),
which now requires T to be fully defined.
The consequences of this are:
* Forward declared types can no longer be declared as a metatype.
(though this is a very uncommon thing to do).
There is a trivial workaround where necessary.
Change-Id: Id74c40088b8c0b466fcd7c55abd616f69acc82c8
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
| |
Change-Id: I3c471dff9b46025aab762d36bb3a3adc64ced561
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
URL schemes can only contain alphanumeric characters and all
protocols specify that they are case-insensitive. So instead
of doing case-insensitive comparison everywhere and then get
it wrong sometimes, better to lower-case it here.
Change-Id: I61f51a3f4c85b90af1586ebcf69608987fbe2ec3
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
| |
Change-Id: If7d6ca7af8eb305bd127776a35223d50c1fb4f04
Reviewed-by: Tasuku Suzuki <tasuku.suzuki@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
|
|
|
|
|
| |
Change-Id: I71d5feaa07e8febd6c562be1dc6d7790e3a1606c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
| |
For asynchronous (overlapped) I/O notification on Windows one
can now use the convenience class QWinOverlappedIoNotifier.
It's using one global I/O completion port and a watching thread to
get notified when a read or write operation completes.
Change-Id: If6f904b364be0405580c7e50355529ab136ae3cb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
|
|
|
|
|
| |
Change-Id: I7b7d26da97f82f354d81913eccab46d79ec9e8f0
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This takes out the dependency to the header files
of OpenGl. The ifdef QT_NO_OPENGL in the opengl headers
are needed, as qmake adds depends in the makefiles
for all GUI headers.
Task-number: QTBUG-23207
Change-Id: If31448ee35fd8c39194c7cb7d62273fbc6def883
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
|
|
|
|
|
|
|
| |
Change-Id: Iae377505e36ae1239be7ce52c773dc2a4f4a9767
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
| |
Change-Id: I9abdc674bcfa7bb38ce27c5213c5a672f59e63d5
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
| |
Change-Id: I103abb545d1a5deed7d40c0b50fc3eff0c89d622
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
|
| |
The code is only supposed to be used by iOS, so platform specific code
is removed.
Change-Id: Ibea585dfac9e6a7a87e66a1426793dfd8713fdef
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
| |
Change-Id: Ib221ab078f9ff5c385d35699ee1d093b0e95557c
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
| |
Change-Id: Ic7dea331695fa4653e4b963fef8383f44c3b1fb8
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following methods have been made virtual:
setReadBufferSize()
socketDescriptor()
setSocketDescriptor()
socketOption()
setSocketOption()
waitForConnected()
waitForDisconnected()
Now that these methods are virtual we no longer need the nasty
polymorphism workarounds for QSslSocket.
Change-Id: I319989b6cdb025ba33d7d53ae90f3a6a3b6b1b7b
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The IA-64 architecture supports the actual memory ordering semantics
in many instructions, but not all. We actually implement the functions
for all operations, so we get the best possible output.
It does support proper load-acquire and store-release semantics, but
we don't need instructions for it: the ABI requires that a volatile
load be acquire and a volatile store be release.
The Intel and HP compiler codepaths are rewritten, but untested.
Change-Id: I7aa62a4ec65f63a97d1bbd8418bb2492c2be465f
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The LL/SC instructions are only present on MIPS II and up, so don't
pretend to support MIPS I. The previous implementation emitted the
instructions by telling the assembler to change instruction sets. Now,
the user must pass an -march= option to GCC telling it which
architecture or processor is being targetted.
On MIPS64, the 64-bit implementation allows supporting for long long
too.
Change-Id: I6dae6f8f61e563aba6a663227d91c5ddf554aa6a
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The implementation is divided in two files, as it used to be in the
previous implementation: one for ARMv5, one for ARMv6 and up.
For the ARMv5 implementation:
Drop the non-Linux EABI version of the atomics, as it's not
ABI-compatible with the ARMv6 and ARMv7 implementations. This
means this ARMv5 implementation only works on Linux. If other
systems implement kernel helpers like Linux, they can be added
too.
We use the __kernel_cmpxchg located at 0xffff0fc0 to implement the
operations, except for fetchAndStore, for which we use the SWP
instruction.
Also introduce the use of __kernel_dmb (at 0xffff0fa0) for the
memory barrier. Now this code is SMP-safe even when built with
ARMv5.
The kernel cmpxchg helper was introduced in Linux 2.6.12, whereas
the dmb helper was introduced in 2.6.15. That means 2.6.15 is the
minimum version now.
For ARMv6 and up:
Introduce byte, half-word and doubleword atomics that work on
ARMv6K and up.
For ARMv6 specifically, the memory barrier instruction (DMB) isn't
present, so we need to accomplish the same with the MCR
coprocessor instruction.
Change-Id: Ife7f9b920bcc7d1eef7611761f6c59ea940ec7df
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The input type needs to match the output type, otherwise we get this
error:
src/corelib/arch/qatomic_x86_64.h:288:25: error: unsupported inline asm:
input with type '<dependent type>' matching output with type 'T':
"0" (valueToAdd * QAtomicAdditiveType<T>::AddScale)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Change-Id: I26d4efdbcab089dea71ef08e3e65df5b7482865a
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Both implementations now are very similar to one another, to the point
we could share the code if we wanted to. They are based on assembly
code for the Relaxed functions only, as the i386 and x86-64
architectures only allow for full memory ordering or something that
closely resembles it (see 8.2 "Memory ordering" in the Intel 64 and
IA-32 Architectures Software Developer's Manual Volume 3A). We could
add "lfence/mfence/sfence" in future versions if we wanted to (SSE2+).
Change-Id: I76966d9f8694edfece2c5ebd3387348fac721447
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code is now much simpler and much more complete. Now the bootstrap
atomics (which aren't atomic at all) contain the full set of
operations.
The only integer supported is int, but all others would work too.
Change-Id: Id99f07818f9da059c4ff02520f9cbf2d1a71a514
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This flag has been deprecated since Qt 4.4, so remove it.
tst_QApplication had 2 nearly identical tests, one for testing the
QEventLoop::DeferredDeletion flag, and one to test sendPostedEvents()
with QEvent::DeferredDelete. The latter is the preferred way, so keep
that test, but remove the test for the obsoleted flag.
Change-Id: Icdb7483c32b3c920bda31d2bbb4f7414ece6d826
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Each QCocoaAccessibleElement needs to provide a
unique stable id through the -(NSUnterger)hash
method.
The previous approach of basing the hash on the parent
hash plus the child index is unpractical now that
childAt() can return distant descendants instead
of immediate children only. Use the QObject pointer,
which is set for all accessible interfaces today.
Change-Id: I5868e3a81c1b4da7233504f30003ab8060e9fa3f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is no guarantee the touches will be listed in the same order in
an update: the platform/generic plug-in, the drivers, etc. are all
free to shuffle the list of touch points in each report (even though
the order is fairly stable with most systems).
Therefore, to be safe, move and release events should be generated not
from the first point in the list but from the one with the matching
id.
Change-Id: I6615224cbf2cfdc440143eb3191482a23d85c6a4
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This seems to break a number of tests using the qmltest library.
Functionality will be restored in a future commit, once the breakage has been
identified.
This reverts commit fdedb49b76b8f9ad69611fbfea6b8371ae1ec3a1.
Task-number: QTBUG-23845
Change-Id: I0ca4dbd54132e4250702f06738edbad5e8fc4f36
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
have the same address
If a target object is destroyed QPropertyAnimationPrivate::targetValue
reflects this while QPropertyAnimationPrivate::target stays unchanged.
QPropertyAnimation::setTargetObject() checks if a new target matches
QPropertyAnimationPrivate::target - to bad if the former target has
been destroyed in the meanwhile but the new one has the same memory
address. targetValue is not updated in this case. It will still point
to null and QPropertyAnimation::targetObject() returns 0.
This is not just a theoretical problem - we stubled upon this in
Harmattan when suddenly animations complained that they are having no
target.
Change-Id: Ib4a9c234d04d6f8a3f7aed251d5e79471d95168a
Reviewed-by: Leonardo Sobral Cunha <leo.cunha@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Qt will attempt to create a platform window with the above size and
DirectFB will fail to create the window. Make sure the width/height
is at least 1 before handing it to DirectFB.
According to Samuel it is legitimate to create a QPlatformWindow with
QSize(0, 0) and it is the job of the platform plugin to make it work.
Follow the approach of the XCB plugin and increase the size.
Change-Id: Ifc92780b46f1a73123945988d06bd21a3deb6bb0
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
| |
There is no need to use these, and we are trying to deprecate them.
Change-Id: I70e6f27aca322fe74c31d8ad8496f230cd29e503
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
|
|
|
|
|
| |
Change-Id: Ibdf556428e4dbb9156c87504b923ec9600bcf871
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
|
|
|
|
|
|
|
|
| |
Remove QByteArray-construction and hash lookup in the event
handling; use an enumeration indexing an array instead.
Change-Id: I4d272b32a5ff71c8da58197cf3a0b38c1e61d489
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
|
|
|
|
|
| |
Change-Id: I6083ba122c33769cd4626f2c4a32959e535da8a4
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
|
|
|
|
|
|
|
|
| |
SidCleanup struct must not be in the INCLUDE_NAMESPACE.
Change-Id: Ic51f1734af583c0ba7f715f7b27f314211e698c5
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: hjk <qthjk@ovi.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit e08453f31ae2a195f86a763f0b1c5e617df0e1ce added a check which makes
sure qt prints an error message instead of segfaulting when it can't
connect to the X11 server.
However, libxcb will never return NULL from xcb_connect() and thus that
commit only works if XCB_USE_XLIB is defined and used.
Change-Id: I8cc1496494a94f07055a3ac5093ce362dd347c5b
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
| |
Change-Id: I29979c80e401f5d6c2c2b38c4e502340f2025a12
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
| |
Change-Id: I3fc538862c7334914ec9e4331ef2d3db5c699ea9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The draganddrop examples all crashed here because they were using a
default-constructed QImage() (i.e. one without any content).
I guess this happens here because I don't have any mouse theme set.
To test, one could start a second X server, but without any WM or DE.
The "evil" QImage() came from QGuiApplicationPrivate::getPixmapCursor().
This function seems to just always "return QPixmap();".
This fix is correct because the only caller has another fallback if the
createNonStandardCursor()-fallback didn't work. This caller is
QXcbCursor::createFontCursor().
Change-Id: I7ec7fbcfdf0203e983149b5e73016cc7e85ecf40
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
|
|
|
|
|
|
|
|
| |
Task-number: QTBUG-23524
Change-Id: I6a80af450b599022e9242cccec945887b871f2b0
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|
|
|
|
|
|
|
|
|
|
| |
No point in making this protected: it breaks existing code including
the unit tests, and the base class has this method as public.
Task-number: QTBUG-23524
Change-Id: I8fae019088fc368213ff7caa4b19fe7ab60488dd
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
|