Commit Graph

2894 Commits

Author SHA1 Message Date
Shane Kearns
ddf21c384f Fix unintended source compatiblity break in QSslSocket
QSslSocket overrides one version of QAbstractSocket::connectToHost.
Since these functions were made virtual, this now hides the other
overloads.
Added a using statement to make the other overloads visible.

Change-Id: Ia48fdc9bd67936c75c25bb24dabd26a723bb7a05
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-02-02 17:11:37 +01:00
Teemu Katajisto
ea8e048e1d Various documentation fixes ported from Qt 4.8
Selected fixes for qtbase from 4.8 commit
3826203f744a2147bebf5f088de0d524156f59fd

Task-number: QTBUG-9466
Task-number: QTBUG-7924
Task-number: QTBUG-20355
Task-number: QTBUG-19367
Task-number: QTBUG-14554

Change-Id: I551251dd8a87d7dd837e5927050ffd14bce9a97c
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
2012-02-02 16:03:30 +01:00
Morten Johan Sorvig
ae664f7dc7 Move QString <-> NSString conversion to QtCore
Add (private) API to QCFString:
	static QString toQString(NSString *)
	static NSString *toNSString(const QString &)

Add implementation to qcore_mac_objc.mm. Keep the
mac_cpp since it's used for building qmake as well
as bootstrapping.

Replace usage of NSString conversion functions
in the cocoa and corewlan plugin with QCFString.

Change-Id: I9f34edd5231255aef9d8d6e9a60306174bb279b3
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-02-02 14:18:36 +01:00
Xizhi Zhu
319ba95c76 Call start() even when bearer is not compiled.
Otherwise, the HTTP request won't be sent if bearer is not compiled.

Change-Id: I9a8171fde6fe5b2db0405b4af6e1d52ac4528502
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
2012-02-02 14:18:36 +01:00
Xizhi Zhu
3acbb12d2d Remove one un-used variant.
Change-Id: I325451f2f346cc75f23703118b451b9c7398baea
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
2012-02-02 14:18:36 +01:00
Morten Johan Sørvig
cecec2e2ce Fix qmlscene segfault on startup on Mac OS 10.6.
Task-number: QTBUG-23982

The platform plugin loader was searching for plugins
in qtbase/bin and would segfault when checking if
the qmlscene binary was a plugin.

Test if "../Plugins" actually exists before setting
it as the platform plugin path.

Change-Id: Ibd887b5c5045d23e3eb62867dc7598e09d3918ad
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-by: Sarah Jane Smith <sarah.j.smith@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-02-02 12:49:19 +01:00
jian liang
b852b01958 speed up font enumeration in windows platform
Currently, font enumeration is very slow in windows platform, it will take
several seconds to enumerate all fonts for the first time. This patch
cache the font information queried from font registry, it can
significantly speed up font enumeration.

Change-Id: Ic783877b7f3db3facf24965b0c5d669b22d40c61
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-02-02 11:10:04 +01:00
Kent Hansen
4b1ba7c792 Fix QString::operator=(QLatin1String) for substrings
QLatin1String now has a constructor that takes explicit length, which
makes it possible to create a QLatin1String that isn't null-terminated.
Made QString::operator=(QLatin1String) work in that case.

Change-Id: Ie77eabd2f8f036531d67cd8051a7b6305b386ccf
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-02 11:10:04 +01:00
Kent Hansen
7edd623957 Fix QTextStream and QDebug operator<< for QLatin1String
QLatin1String now has a constructor that takes explicit length, which
makes it possible to create a QLatin1String that isn't null-terminated.
Made the QTextStream and QDebug << operators work in that case.

Change-Id: I94d051ce2ebfb2d2a403b96d25e040c80a54bf7c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-02 11:10:04 +01:00
Kent Hansen
35b19be478 Fix QString(QLatin1String) constructor for substrings
QLatin1String now has a constructor that takes explicit length, which
makes it possible to create a QLatin1String that isn't null-terminated.
Made the QString(QLatin1String) constructor work in that case.

Change-Id: I4f4f07a956144b7ea4aa9c58a61c755fb99ef1b3
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-02 11:10:04 +01:00
Kent Hansen
ec9833388f Fix operator==(QLatin1String, QLatin1String) and friends for substrings
QLatin1String now has a constructor that takes explicit length, which
makes it possible to create a QLatin1String that isn't null-terminated.
Made the QLatin1String comparison operators work in that case.

Change-Id: I234ba851e67a6f5cfbb46fb6f0b22623ce40be28
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-02 11:10:04 +01:00
Bradley T. Hughes
307c034973 Port the Windows atomic implementation to use QGenericAtomicOps
First, we do not need to have the QT_INTERLOCKED_REMOVE_VOLATILE(a)
macro anymore either, since the value stored in QBasicAtomicInteger is
not volatile.

Windows provides Interlocked*Pointer() functions in some configurations,
so we provide a partial specialization of QAtomicOps for pointer types.
For integer types, QAtomicOps selects an implementation based on the
size of the type. At the moment, we only support 32-bit types, but it
will be possible to add 64-bit later.

Note that the 32-bit specialization of QAtomicOpsBySize declares the
Type typedef as long, not int, since the Windows Interlocked*() API
takes parameters as longs and long pointers. Since this typedef differs
from the type given to QBasicAtomicInteger<T> by the QBasicAtomicInt
typedef, we need to templatise the _q_value parameter separately from
the other arguments in QGenericAtomicOps.

This templatisation would be necessary to port other architectures, such
as PA_RISC, where we need to have an int[4] array in the atomic type
while the arguments do not need this array.

Change-Id: Id71fa1ae334da2023553cb402b45e6c285f1d344
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-02-02 11:10:04 +01:00
Pekka Vuorela
71726ccf67 Renamed QInputPanel as QInputMethod
QInputMethod better describes what the class is about, input methods
in general, be they panels or just composing input from key events.

Compatability headers added for old name. Not bulletproof but should be
enough to get transition done.

Change-Id: Iefde6e7ccb1ec4a3b226cef3469089e751c60fc1
Reviewed-by: Joona Petrell <joona.t.petrell@nokia.com>
2012-02-02 11:10:04 +01:00
Bradley T. Hughes
b2b3abe0eb Remove duplicated function from QCocoaEventDispatcher
The qt_mac_waitForMoreModalSessionEvents() is identical to
qt_mac_waitForMoreEvents(), except that it passes a different inMode
parameter to [NSApp nextEventMatchingMask]. Change the latter function
to take the mode as a parameter itself, defaulting to the default mode.

Change the dequeue parameter to [NSApp nextEventMatchingMask] from YES
to NO. Having the function dequeue the event, and then immediately
reposting the event is not necessary.

Change-Id: Iba45d41ad3ff4d5721d1068e6d5c78585cb15810
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
2012-02-02 09:27:25 +01:00
Bradley T. Hughes
8fad23f326 Don't include config.tests/unix/openssl/openssl.pri
This file was removed in commit ba9302b8a9

Change-Id: Ib3a70877f6f6848c8cf072faf13da93abbe186f2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-02-02 09:27:25 +01:00
Jian Liang
fe999022af fix memory leak of QAccessibleWidget
in topLevelObjects() we should use "root->object()" instead of
"w->accessibleRoot()->object() to get the object attached to the
accessible interface. This is because "w->accessibleRoot()"
will create a new QAccessibleWidget(or its subclass) object
and this object is never released.

Change-Id: I34292b467b51d6cc439f0a1a45cd74d5f8a6a5a8
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2012-02-02 09:27:25 +01:00
Kent Hansen
d30515104d Avoid duplicating flags/types in qmetaobjectbuilder
Presumably the contents from qmetaobject_p.h were copied
because qmetaobjectbuilder originally lived outside of qtbase,
and private headers could not be included from other modules.
But now we can just include the right headers.

Change-Id: I975df1ea94455f1bf0db1d8024de8f5379fc9fc7
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Lorn Potter <lorn.potter@nokia.com>
2012-02-02 07:50:42 +01:00
Kurt Korbatits
aa5ff68476 qopenglcontext not checking for null and failing with platform minimal
- The minimal platform plugin returns null and was causing segfault.

Change-Id: Ied262692f77e9801c3d3451de7f21539f7686ca4
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-02-02 01:56:03 +01:00
Holger Hans Peter Freyther
9cbbd38f22 pixmap: Add QPlatformPixmap::fromData null check for the image
QPlatformPixmap::fromFile is doing the null check,
QRasterPlatformPixmap::fromData is doing the null check as
well. Add the null check to QPlatformPixmap::fromData as
well. This would have avoided a crash in the directfb plugin.

Change-Id: Ifc904b2df2424e86bf0992d4e28dc256530be02d
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-02-02 01:56:03 +01:00
Lars Knoll
bd8ef8d073 Fix some warnings from clang
One of them was a real error, that could
lead to Data::alloc containing wrong values.

Change-Id: I48315ef6fd59188630107ebbe7bf8dbaa5da689e
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-02-02 01:56:03 +01:00
Thorbjørn Lund Martsum
15f253a46a Introduce QItemDelegate::destroyEditor virtual invoked at editor close
This provides a stronger mechanism e.g when inheriting QItemDelegate.

It makes some things much easier e.g avoid delete of an editor
and maybe only delete depending on what the editor says itself.

This introduces a new virtual function.

Task-number: QTBUG-2299

Change-Id: I8410f8199775987dbacffd99e4c354fdadcdd21f
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-02-02 01:56:03 +01:00
Jani Uusi-Rantala
efecd01189 Trivial fix in qjsonobject.h for -Werror=shadow
There was a few errors coming from other components
using qtbase - error: declaration of 'o' shadows a
member of 'this' [-Werror=shadow].

Change-Id: Ib394f404370f001e68fde8b424cd5fff527d8fe7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-02 00:00:45 +01:00
Friedemann Kleint
40fa7a816f Move QPlatformDialogs from QtWidgets to QtGui.
- Remove dependency of the Windows platform plugin on
  QtWidgets.

Change-Id: Iceb876ba7df46b49966af0fc101816654eedb5c5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-02-01 23:57:21 +01:00
Friedemann Kleint
a31e3f9b8a qabstractitemmodel.cpp: Fix warnings.
Change-Id: I10ef89e2fab31c7f1c9ac67b2234f509fb3f28ab
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-02-01 23:57:21 +01:00
Olivier Goffart
b69bb01f11 Use QBasicMutex instead of Q_GLOBAL_STATIC QMutex
QBasicMutex is a POD and can be used as a static global object.

in qpicture.cpp factoryLoader is used only once, and under the mutex, so
there is no need for Q_GLOBAL_STATIC for it, it can be a function static

in qhostinfo_unix.cpp the code seemed wrong while compiled with
namespace and QT_NO_GETADDRINFO.  I also could get rid of one include
because it was included earlier.

Change-Id: I3c700203c3e067266c20733f4bda8031446dbb86
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-02-01 22:23:55 +01:00
David Faure
c094891db3 Fix parsingMode not used anymore, detected by compiler warning
This came from replacing d->parsingMode with parsingMode when moving
the method to the Private class.

Change-Id: I5a025ea1128dacda97d265d401a329dbbbfb0ff7
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-02-01 22:23:55 +01:00
Gunnar Sletta
ae1d0048d6 Added WindowOverridesSystemGesturesHint to our window flags.
Change-Id: I42c3d3e5ef71960d16f85969b66380999fb15922
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-02-01 20:54:44 +01:00
Shane Kearns
c5aba0ac17 Prevent data loss when an ssl socket is closed by remote
SSL context was destroyed on disconnect. This makes it impossible to
decrypt buffered encrypted data. So if there is encrypted data in the
receive buffers, then don't destroy the ssl context until the socket is
destroyed.

Task-Number: QTBUG-23607
Change-Id: I16a7b4fa006647ec73049c90cdbc72686696850f
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-02-01 19:18:12 +01:00
Xizhi Zhu
755cd58f9c Remove Symbian specific code in 3rdparty.
Symbian specific code in libtiff was added by commit
6ddf09085f1e8a3cc83c4ee0c77c433d26819c35 in Qt4, code in libpng was
added by commit 66fb4038649cfd1d660204bf7c70f99a409ede4f in Qt4, so
they are removed.

Symbian specific code in freetype was copied from upstream, so kept
untouched.

Change-Id: I74f169d9283eefd91ec2e97cbd1b8f03dc449380
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-02-01 19:06:18 +01:00
Jeremy Lainé
7b449abde2 Fix QDnslookup build on FreeBSD
Unify the includes for resolver function on unix-like platforms
to avoid build failures on BSD platforms.

Change-Id: I9accd7077d5a319a2c93642e011492d0fc779394
Reviewed-by: Holger Freyther <holger+qt@freyther.de>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-02-01 16:33:04 +01:00
Thorbjørn Lund Martsum
6cab0bed1d QHeaderView - Do not try to remove non-existing section
The end parameter passed to removeSectionsFromSpans is off by one.
removeSectionsFromSpans can currently handle/ignore it, but it is
still wrong.

Change-Id: I9148bd106504a37a5c8fd72928ab84c669eebcdb
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-02-01 16:25:37 +01:00
Torben Dannhauer
5caa75f665 SQL driver implementation to signal notification sources
Implements the new notification signal in all QSql drivers which use notifcation.
In qt5 only ibase and psql have a notification implementation.
PSQL differentiates correctly between 'SelfSource' and 'OtherSource' whereas
ibase only signals 'UnknownSource' as a default implementation.

Change-Id: Ifcaa139b7a980ed852cf817b3f93284609360ca7
Reviewed-by: Torben Dannhauer <torben@dannhauer.info>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
2012-02-01 16:25:15 +01:00
Torben Dannhauer
84f4b81499 Interface definition to provide notifications with a source information.
To differentiate between signals of different sources types, this submission adds an enum and extra signal to provide it.

Change-Id: Iad711739c41894e9c74d83072c50ae17edc695f2
Reviewed-by: Torben Dannhauer <torben@dannhauer.info>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
2012-02-01 16:25:09 +01:00
Stephen Kelly
e03b77d1a6 Remove the API duplication from QApplication.
The quitOnLastWindowClosed API is present in the base
class QGuiApplication.

Change-Id: Ib2f78e48a198aa835302dcb9a31637a2c3655532
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: David Faure <faure@kde.org>
2012-02-01 16:24:10 +01:00
João Abecasis
632840cb0f Make clear() use the shared null inline
There isn't a good reason to impose the additional library call and
using the shared null here matches existing behavior in QByteArray,
QString and QVector.

Change-Id: Idd0bb9c7411db52630402534a11d87cbf2b1e7ba
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-02-01 12:59:32 +01:00
Friedemann Kleint
b44e67e1ca Windows: Fix inclusion of <windows.h>
- Always use <qt_windows.h> as the last file to be included.
- Remove it from some headers, use Qt::HANDLE instead of HANDLE.
- Clean up #ifdef, use Q_OS_WIN for Windows/Windows CE.
- Add NOMINMAX to qt_windows.h to avoid problems with the
  min/max macros.
- Remove <windows.h> from qplatformdefs.h (VS2005)

Change-Id: Ic44e2cb3eafce38e1ad645c3bf85745439398e50
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-02-01 11:06:19 +01:00
Bradley T. Hughes
f6f1a2dbc1 Revert "Put the generated <module>version.h into build tree"
After discussion with Liang, I'm reverting it as he requested. This change put every header into the SYNCQT.HEADER_FILES twice for in-source builds, and the qtMODULEversion.h header did not include a path component.

This reverts commit 2fbc45b58bba860abf67fb28aa1319c9f4ededaf

Change-Id: Ie84cef19193ce5e49072f1f67a41140d9d2673b8
Reviewed-by: Liang Qi <liang.qi@nokia.com>
2012-02-01 10:48:09 +01:00
Friedemann Kleint
e33e761bb5 Accessibility: Use new updateAccessibility() API in widgets.
Change-Id: Id69cc28a54abc675a991f2c657a446f38313ac6e
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2012-02-01 10:38:23 +01:00
Gunnar Sletta
7518adbb13 Introduced BufferQueueingOpenGL capability in platofrm integration
Change-Id: Iedb7255862fd3a11aceae0e06e90a5539febc7e7
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-02-01 08:25:45 +01:00
Kai Koehne
d394ca7f27 QtDebug: Include file, line, function information
Record the file, line, and function where a qDebug, qWarning, qCritical
or qFatal call happens, and make this information available in a custom
message handler.

The patch uses the C preprocessor to replace qDebug, qWarning, ... with
a line that also records the current file, line, and function. Custom
message handlers can access this information via a new QMessageLogContext
argument.

Change-Id: I0a9b89c1d137e41775932d3b1a35da4ebf12d18d
Reviewed-by: David Faure <faure@kde.org>
2012-02-01 02:16:32 +01:00
Morten Johan Sorvig
ea783ff51f Compile with clang
Add back friend declaration removed in e8105e4.
QListViewPrivate uses QAbstractItemView::
DropIndicatorPosition, which is protected.

Change-Id: Ie9fa9422bf4fb7846637dac24a644d4814cfe622
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2012-02-01 02:16:19 +01:00
Jonas M. Gastal
695dded37b Emit QSslSocket::error in case of openssl gives an error.
Create new QAbstractSocket::SocketError value that denotes a error in
the SSL library: SslInternalError
Create QAbstractSocket::SocketError value that denotes a error in data
provided by user cauding an SSL library error: SslInvalidUserDataError

Change-Id: I466a9389d9d7052efd8eddd1a2d6067ba26dfddb
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
2012-02-01 02:16:14 +01:00
Thorbjørn Lund Martsum
96f1fe8855 QHeaderView - preventing negative section sizes.
This patch removes the posibility to call resizeSection
with negative sizes.

Sections with negative sizes affect the other sections,
and it does not seem to have a useful, well-defined semantic.

The length can also become negative - and visualIndexAt
work strange.

Change-Id: I632beb160649fa10e2106314557b8c5a106aa3cf
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-02-01 02:16:08 +01:00
Stephen Kelly
a512e210ac Add the event loop quitlock feature to QtCore.
A feature of a ref-counted quit (managed by a quit-lock class)
is added to both QEventLoop and QCoreApplication.

This allows, for example, an event loop to quit() when there is
no more work for it to do.

quitOnLastWindowClosed is implemented in terms of the refcount in
QCoreApplication so that jobs can be completed before the
application quits.

Change-Id: I14c8f4e7ee12bbf81a6e5849290d4c8ff37fa110
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-01-31 23:22:15 +01:00
Tor Arne Vestbø
36a590c90d Don't compile UIC with -O2 inside Scratchbox
It makes QEMU crash when running the resulting binary.

Change-Id: I94e5d703205827dea88770336a8c5201e7333486
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2012-01-31 21:48:23 +01:00
jian liang
4ab6860172 add virtual destructor to QWindowSystemInterfacePrivate::WindowSystemEvent
Add a virtual destructor to
QWindowSystemInterfacePrivate::WindowSystemEvent class. Otherwise, in
QWindowSystemInterface::sendWindowSystemEvents() "delete event" can't
destruct the subclass of WindowSystemEvent properly.

Change-Id: Ic708f4ab61de88cd0015aa6e472d356b2de64583
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-31 21:48:23 +01:00
Thorbjørn Lund Martsum
a5201007f2 QHeaderView - fix to resizeSection patch (Ia812a747)
A minor simple adjustment to the update-patch for resizeSection.
( http://codereview.qt-project.org/#change,11267 )

We can't just return and ignore that we might needed to call
d->doDelayedResizeSections

Just because the header does not have updates enabled does not
mean that the view hasn't updates enabled - and even in
that situation we actually still wanted to keep this.

(It is only if the parent is not visible we safe can/should
skip this - but I will look into that later)

Change-Id: I771de086a07d1e7612a6bfea132d4d15f277ceb3
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-01-31 20:01:10 +01:00
Thorbjørn Lund Martsum
c47b028749 QHeaderView::setOffsetToSectionPosition documentation update
The documentation has used the word visualIndex for the argument
to this function. That is however very misleading since this
visualIndex is not the same as 'visualIndex' as we have in

visualIndex(int logicalIndex)
logicalIndex(int visualIndex)
or visualIndexAt(int position)

Beside the above a variable name has also been changed from
visualIndex to actualVisualIndex.

Change-Id: I43808adfd7c287a349474ab1e2656c417c8cf3e9
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-01-31 20:01:06 +01:00
Jonas M. Gastal
c22be73168 QDir::NoDotAndDotDot is now QDir::NoDot|QDir::NoDotDot.
Change-Id: I8ef7782258c2ec02ad2ec2a5d5cab90f53c62aa3
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-31 20:01:02 +01:00
Simon Hausmann
fe7265a0bb Maliit: Fix enter on VKB not resulting in text input field acceptance
Pressing enter on the VKB should result in the emission of the accepted()
for text input fields in QML or the returnPressed() signal in QLineEdit.
In that case the Maliit input server calls our keyEvent method over DBus,
which this patch implements.

Change-Id: I46170c30315adaf21db0e232f53780ccaa67e4bf
Reviewed-by: Jan Arne Petersen <jpetersen@openismus.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
2012-01-31 19:57:33 +01:00
Jan Arne Petersen
b27bf9bb94 Rename meego to maliit platforminputcontext
Also build the plugin on linux systems with D-Bus. There is nothing
MeeGo or Maemo specific about this plugin or Maliit.

Task-number: QTBUG-22994
Change-Id: Idcccfb01f79166a54c5809741389b29ccac05a15
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2012-01-31 19:57:12 +01:00
Simon Hausmann
298330bd43 Add support for cleanup functions for data-constructed QImages
A QImage can be constructed with a provided buffer, that has to be
kept alive for the live-time of the QImage and all its copies.
Frameworks like CoreGraphics or Cairo offer a similar method of
creating image objects and also offer the ability to provide a callback
function that is called when the image is destroyed.

This patch adds this functionality to QImage by extending the
QImage constructors that take a raw image buffer pointer.

Change-Id: Ia6342408c560ef49b498c9e4664b4602febb0fcd
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Michalina Ziemba <michalina.ziemba@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-01-31 16:21:17 +01:00
João Abecasis
2bf186a2e5 Allow function types to be registered without workarounds
Commit 4b8ceb41ae added the requirement
that pointed-to types need to be registered when registering pointer
types. Unfortunately, the implementation also affects function pointer
types.

This change whitelists 0, 1, 2 and 3 argument functions as not deriving
from QObject, forgoing the need to workaround details of the type
registration implementation when registering those function pointer
types.

Change-Id: I4d855e9d70a8179a6e31b84623ad5bf063e0d6d8
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-01-31 16:17:55 +01:00
Lars Knoll
3855233dab Remove many deprecated methods
Remove methods that have been marked as deprecated
before Qt 4.6. Keep others, but inline them
where possible and mark them as QT_DEPRECATED_SINCE(5, 0).

Change-Id: If881821ae095f054b31cc13464f19e2007c20ed7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-01-31 16:17:55 +01:00
Joerg Bornemann
9a4d30d999 MinGW build fixes for QWindowsPipeReader and friends
Change-Id: Ie4d6017c6fb918e7796d1a5e8863e9368e4e1894
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-01-31 16:17:55 +01:00
Kai Koehne
20beb5ff53 Windows: Fix compilation with -qtnamespace
Change-Id: Ib006d74299d65e5872a5a524eaa937e127306ec7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-01-31 16:17:55 +01:00
Kai Koehne
ef63b7befd Mac: Fix compilation with -qtnamespace set
Change-Id: Id3b9f4e3edf2caeac32c8a44278cdf05a1fc70fb
Reviewed-by: hjk <qthjk@ovi.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-01-31 16:17:55 +01:00
Rafael Roquetto
eb60e93d34 mkdtemp() support for QNX platform
Change-Id: I30feebbbcdbe065e899a048da20ac887d4d48a4f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2012-01-31 16:17:55 +01:00
aavit
4fce5d1795 Moving tiff image format support and libtiff out of qtbase
The tiff plugin and bundled libtiff is moving to the qtimageformats
project on Gerrit.

Task-number: QTBUG-23887
Change-Id: I4c848232fdccddd7e7f54215f9eaa78dc4c3a53d
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-31 14:31:04 +01:00
Frederik Gladhorn
bf9bdf5328 Use events for accessibility updates.
The problem with the old updates is that it was impossible
to send details about the update.
For the Linux implementation to work properly with AT-SPI I need to know
which state changed (currently I only get a generic "state changed" event)
or which part of the text was changed for long texts (imagine a word processor sending updates).

This also gives us more options when updating with events generated from not QObject based objects.

Change-Id: If0b6c83c523092565eb48e79f3f6de5a1b905ea8
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
2012-01-31 12:02:33 +01:00
Chris Adams
cf52c268b0 Add public role names setter to QStandardItemModel
This allows QStandardItemModel to be usable in QML without requiring
clients to subclass it.

Task-number: QTBUG-15067
Change-Id: I867fcd8137132affdf21f37a9fa293e855a09a13
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-01-31 12:00:31 +01:00
Jonas M. Gastal
0e4fac3fbd Removing bad ###Qt5 note.
Implementating this would cause massive SC breakage and give little
gain.

Change-Id: I56a6d302fdd0e8b53d1f9154f3eaf9e1ee429f9d
Reviewed-by: Giuseppe D'Angelo <dangelog@gmail.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-01-31 11:43:40 +01:00
Xizhi Zhu
d1a2b53aaf Remove Symbian specific code from QtGui.
Change-Id: I450a78863462936d0b18e211763f274b59497109
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-31 07:08:20 +01:00
Anselmo L. S. Melo
8839a0a001 Fix QGuiApplication::topLevelWindows(), introducing allWindows()
As discussed on the development mailing list, the window list returned
by QGuiApplication::topLevellWindows() included all QWindows, even the
non top-level ones.
This commit introduces the new method allWindows(), which returns the list
of all QWindows, fixes the list returned by topLevelWindows() and also
introduces tests for both methods.

Change-Id: I761f0fcdec79f83949012c628655ed12cd18572c
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-31 07:05:09 +01:00
Xizhi Zhu
e8105e4783 Remove Symbian and Maemo 5 code from QtWidgets.
Change-Id: I715c0ec70cbad05a6ba9737e49be9da7cbd65bf9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-31 07:05:00 +01:00
John Layt
0436281771 QValidator: Don't fallback to C Locale when validating input
QIntValidator and QDoubleValidator used to accept C formatted input if
the input wasn't valid in the default locale.  This change removes this,
only the default locale is now used.

Change-Id: I8b2d8f9f3849abe3fcb5c12083aae542a76eaf90
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-01-31 07:02:11 +01:00
jian liang
9c1f3bce4d fix memory leak in QGuiApplicationPrivate
delete app_font object in QGuiApplicationPrivate's destructor

Change-Id: Iad0c5a69e03477f6c93fcf76c58bac001cbdffb8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-01-31 04:56:17 +01:00
Lars Knoll
0f48d1a523 Remove QIconEngineV2 and fold it into QIconEngine
Change-Id: Ife590b7639f4aadcfbd4d77ca170285b623c14ae
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
2012-01-31 04:56:14 +01:00
Uli Schlachter
9464458098 xcb: Check for SHM extension before using it
If we call any xcb_shm_*() function, libxcb will have to figure out
SHM's major number. However, if that fails because the SHM extension is
not available, xcb will disconnect from the server. Obviously, that's
not what we want and must be avoided.

Change-Id: I8eba5ff9e84e0e2017a5c0d88fda4efd0459bd1e
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-31 04:56:04 +01:00
Uli Schlachter
98d34beb03 xcb: Check for SYNC extension before using it
If we call any xcb_sync_*() function, libxcb will have to figure out
SYNC's major number. However, if that fails because the SYNC extension
is not available, xcb will disconnect from the server. Obviously,
that's not what we want and must be avoided.

Change-Id: I9a1032e1cfac074a52bafcb0772304bfd423e770
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-31 04:55:50 +01:00
Lars Knoll
7aac54d67f Remove non existant features from qfeature.h
This doesn't clean it all up, but at least removes
things that are clearly gone from Qt. We still
have way too many individual feature switches.

Change-Id: I7926ee8cf72567a86257f1e7b0d852f11ff5f4bb
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-31 04:55:33 +01:00
Kurt Korbatits
0790756c93 Changed debug output to option in qminimalbackingstore.
- Added QT_DEBUG_BACKINGSTORE environment variable to enable
  debug output. Defaulting to no output if not set.

Change-Id: Id9c369031f946d77605321c8b28ab3378da8fbf9
Reviewed-by: Kurt Korbatits  <kurt.korbatits@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-31 04:55:05 +01:00
Robin Burchell
e24021691f Revert "Revert "Blow up earlier when adding test rows without columns.""
The problem in qmltest has now been fixed by adding a dummy column, so this
should be good to re-add. See qtdeclarative change id
I1bfed663fa7b58d71e0cf898db6bd8ae61dae46b.

This reverts commit 963958b4f62513cbc76fb06920de80f7f906f523.

Task-number: QTBUG-23845
Change-Id: I4b6755d3ea97a4624480cc008d280fc8e33743a6
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
2012-01-31 04:55:02 +01:00
Holger Hans Peter Freyther
8f6ee81ee9 directfb: Use QPlatformPixmap::fromFile for Qt resources
Move to fromFile to load Qt resources for two reasons. The
first is that ::fromData creates a QBuffer on our raw data
and is passing that to the QImageReaders. Right now we there
is a QFile -> QByteArray -> QBuffer transition that wastes
cycles. The other reason is that QPlatformPixmap::fromData
did/does not check if the decoded image is null and might
cause a crash because of that.

Change-Id: I7cb92d84874323e7205ab28883cc0fe9ecca1e27
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
2012-01-31 04:55:00 +01:00
Jason McDonald
e03386945f Update contact address in license headers.
Change-Id: I35bf916087511f26bfeb49ceb3256d9a20fbc1c0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-31 04:54:56 +01:00
John Layt
0e62fc73c9 QDateTime: Add validity checks
Check the validity of date/time before attempting to perform maths.

Change-Id: Ia6a2caf07c6c36f7d7fac713a77bc4eb456c6ed6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-31 04:18:37 +01:00
John Layt
35b96c0d3d QDateTime: Deprecate setYMD()
Change-Id: I077332df554fb750666d51486c97724411276679
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-31 04:02:25 +01:00
Lars Knoll
21b5d0e2c3 Fix bugs when using a non 0 terminated QLatin1String
A few methods in QString still assumed that QLatin1String
is always 0 terminated. Change this to rely on the size
provided by QLatin1String instead.

Change-Id: I9145a46e52ed8811f3b4e3d72d8a81a12588760a
Reviewed-by: Kevin Simons <kevin.simons@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-30 23:27:35 +01:00
Shane Kearns
f605e269dd Fix debug format string in windows socket engine
%l has no meaning, should be %li according to the arguments.

Change-Id: Ife9ec524109e021ad723865445e80b6bad51a5c6
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-01-30 20:18:53 +01:00
Shane Kearns
064a2316b0 Fix crashing debug message
The debug message could derefence a null pointer, this crashed when
running ssl autotests

Change-Id: I176aaa9f3cf3c6cc1512cdc34db06d4c79f92e73
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-01-30 20:18:44 +01:00
Lars Knoll
a4ab8d0bbc Add a null pointer check to QJsonObject::toVariantMap
If the object is null, simply return an empty variant map.
Added another test case checking conversion from QJsonArray
to a QVariantList.

Change-Id: Ieccd163e76630f7db7f41255acd9d1baf66bb38d
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: Kevin Simons <kevin.simons@nokia.com>
2012-01-30 18:49:27 +01:00
Xizhi Zhu
d3fdc132fe Remove Symbian specific code from QtCore.
Change-Id: I131303e28a12dccb96de3de4ca0073b389a9bbae
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-30 16:50:21 +01:00
Xizhi Zhu
0c29259fd7 Remove Symbian specific code in platformsupport.
Change-Id: I5f06f80ae47b2c9fcd93832c23a453a9193e6120
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-30 16:49:58 +01:00
Xizhi Zhu
105420936c Remove reference to Symbian in printsupport.
Change-Id: I63b3559cd9ec620d76a177f57096dd8d38ef834c
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-30 16:49:46 +01:00
Xizhi Zhu
ad2930f825 Remove Symbian code from tools.
Change-Id: Id9d7b2b4f6bc8b558f92bc09b7956c49e5a3752a
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-30 16:49:36 +01:00
Kent Hansen
283140742a Remove type id/name conversion for QVariant::UserType
QVariant::UserType does not correspond to an actual type named
"UserType". This logic didn't make sense.

Change-Id: I369911e514f7902fc863cb05174011d6fc15c447
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Jonas Gastal <jgastal@profusion.mobi>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-01-30 16:40:19 +01:00
Jason McDonald
4c63838039 Remove pass/fail/skip count getters from QTestResult.
These functions are no longer used, as the counters have been moved to
QTestLog.

Change-Id: I7cd13fc92a18920706fcc712804c304f9c333969
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-30 16:40:14 +01:00
Jason McDonald
0d00841c5f Avoid non-standard indentation of license headers.
The strange indentation has made maintenance of license headers
difficult on several occasions.

Change-Id: Ib29a7e5275e2c7a2c13a3f32fd2479f34d3353ca
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-30 16:40:10 +01:00
Friedemann Kleint
870f19f44b Add native event filters to Windows, forward to Widgets.
Use prototypically for qwizard_win.cpp.

Change-Id: I075e81ae1bc3d62d9f27e51c73c800ffd71cbcd6
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-30 16:40:02 +01:00
Richard Moore
b3a978d661 Make the pause modes a QFlags.
The intention is to add additional pause modes over time, this will
be easier if we can just test if a particular reason for pausing is
turned on. If we don't do this we'll end up having to check for each
enum value every time we check what is enabled.

Change-Id: I6b08f0e819b5593e3f6463c3dd175eff8625e155
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Reviewed-by: Shane Kearns <ext-shane.2.kearns@nokia.com>
2012-01-30 16:39:56 +01:00
Jeremy Lainé
e54dc7c2b5 Add support for DNS lookups using native APIs
The QDnsLookup class provides asynchronous APIs for performing
DNS lookups. For now, the following lookups are supported:
- A and AAAA
- CNAME as defined per RFC 1035
- MX as defined per RFC 1035
- NS as defined per RFC 1035
- PTR as defined per RFC 1035
- SRV as defined per RFC 2782
- TXT as defined per RFC 1035

Task-number: QTBUG-10481
Change-Id: I46c1741ec23615863eeca3a1231d5e3f8942495e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-01-30 16:39:46 +01:00
Stephen Kelly
d9468a9752 Change the type key for delegate editors to int.
Previous type of QVariant::Type does not allow for custom types.

While technically source incompatible I found no re-implementation
of this class in qttools or qt-creator (most likely to use it for
property editors). The virtual methods are not needed because
registerEditor is all the API that is really needed.

Task-number: QTBUG-1065

Change-Id: I2a9c578c444a80359416f2224a0ee03903bfe779
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-01-30 16:25:09 +01:00
Stephen Kelly
be1867b6c4 Add the QAbstractItemModel::canDropMimeData method.
Can be used by views to indicate whether a drop is allowed (eg
adequete permissions in a filesystem model).

Change-Id: Iefedb5399e44c8edc5f5df1403c8d5c0da618612
Reviewed-by: Peter Penz <peter.penz19@gmail.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-01-30 16:24:57 +01:00
Gunnar Sletta
3fe3d1dfdd Don't crash when source or target is null
Change-Id: I4992867ad764bd1bd175478c6be1094ca8a72812
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-01-30 14:43:27 +01:00
David Faure
65733af6aa Fix compilation of Qt apps with -Wshadow -Werror
qstring.h:648:70: error: declaration of ‘size’ shadows a member of 'this'

Change-Id: I96d2a5b1201b53b11d23bf194b89fa8967b9e25d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-01-30 14:40:29 +01:00
Jonas Gastal
26c4ca0713 Removing Qt5 note that would break SC.
This would be a silent behaviour change and is not particularly needed.

Change-Id: Iee1e48408e605d671dfe0402880df3c93a14a8c7
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-01-30 14:27:19 +01:00
Pierre Rossi
039900fa4c Prettify the plastique style's slider thumb.
the bottom corners  shouldn't be filled.

Change-Id: I8be1c7a712225fe101b775ea04a8c2fc29e4e9da
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Jens Bache-Wiig
2012-01-30 06:30:17 +01:00
Thorbjørn Lund Martsum
125016ad24 QHeaderView - length returns wrong value fix
setSectionHidden called with (logindex, true) will
sometimes prevent a (correct) call to
resizeSection(logicalIndex, 0).
This seems a bit odd - however it does execute
d->doDelayedResizeSections().
Therefore the section is going to be hidden later.

However it is a problem that the length meanwhile is wrong.
(That is a value that is not the sum of the sections)

This is fixed by execute updates before returning the
length.

Task-number: QTBUG-14242

Change-Id: Ia1d2f6db3213792b250a6a37942b56554261cd3a
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-01-30 06:29:42 +01:00
Jason McDonald
5635823e17 Remove "All rights reserved" line from license headers.
As in the past, to avoid rewriting various autotests that contain
line-number information, an extra blank line has been inserted at the
end of the license text to ensure that this commit does not change the
total number of lines in the license header.

Change-Id: I311e001373776812699d6efc045b5f742890c689
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-30 03:54:59 +01:00
Jason McDonald
f323c700b8 Eliminate QTestResult::ignoreMessage().
The removed function was just a wrapper around QTestLog::ignoreMessage()
and was only called twice (once in qtestcase.cpp and once in
qtdeclarative).  Better to just call the desired function directly and
avoid the indirection.

Change-Id: Ib900f35f5d584e8f323cef9b0e7b4f8a507c199e
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-01-30 03:54:46 +01:00