summaryrefslogtreecommitdiffstats
path: root/src/corelib
Commit message (Collapse)AuthorAgeFilesLines
* Centralize support for QBasicAtomic for ints and longsThiago Macieira2014-01-3012-60/+39
| | | | | | | No need to redefine everywhere, since they're required to be supported. Change-Id: I2bdbbd0b0c44871e3bd0edcf0289fc58dd50ff31 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Ensure that the pointer-sized QAtomicInteger specialization existsThiago Macieira2014-01-304-1/+78
| | | | | | | | | | | | | | | | | | | This is already implemented in qatomic_x86.h, qatomic_ia64.h, qatomic_mips.h, qatomic_armv6.h, and qatomic_cxx11.h. For qatomic_msvc.h, we've just fixed it. For qatomic_gcc.h, we know that the compiler supports it, so just add it. According to the GCC manual, it might print a warning on some platforms, so we only enable that on 64-bit builds. For qatomic_unix.h, the support was missing (along with support for unsigned 32-bit), so this commits adds it. For qatomic_armv5.h, the platform does not always support 64-bit atomics, but ARMv5 cannot compile in 64-bit mode anyway. Change-Id: Ia8b3b5c641f11e5df05937fe7442be0a223174ef Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Introduce QAtomicInteger<T> and derive QAtomicInt from itThiago Macieira2014-01-302-145/+241
| | | | | | | | | | | | | | | | QAtomicInteger<T> is to QBasicAtomicInteger<T> what QAtomicInt was to QBasicAtomicInt: just a little more syntactic sugar. The Basic classes do not always have a constructor, since they depend on compiler support. The constructor is always present in the non-Basic class, at the expense of making it non-POD for C++98 code. This commit also repurposes most of QAtomicInt's documentation for QAtomicInteger. It adds only the Q_ATOMIC_INTnn_IS_SUPPORTED macro that explains whether the given type is supported on this platform. Change-Id: I58886d6fa49fea4de24015c40dae29c9fa534e00 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
* Add support for 16- and 64-bit atomics with MSVCThiago Macieira2014-01-301-38/+151
| | | | | | | | | | MSVC provides the necessary functions / intrinsics for 16- and 64-bit operations. It has some support for 8-bit too, but the most important functions seem to be missing... Change-Id: I177b4eb2a2cf14d716b78c94f9d6a9b11aea1b84 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Declare qregister[u]int, an integer the size of the machine's wordThiago Macieira2014-01-302-0/+23
| | | | | | | | | | | | | | | In almost all platforms, sizeof(qregisterint) == sizeof(void*) == sizeof(qptrdiff). It's different for architectures that have a pointer with a size different from the machine word. This allows us to declare variables of the most optimal size, even if the pointers are too wide or too narrow. The only currently-known architectures to match that case are the ILP32 builds on x86-64 (a.k.a "x32") and IA-64 (option -milp32, only available on HP-UXi), which have 64-bit registers but 32-bit pointers. Change-Id: I0f126b70ea9ea326bd3143797287e4b98210d36d Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Warn the user when compiling Objective-C files (.m) that includes QtTor Arne Vestbø2014-01-302-0/+8
| | | | | | | | | | | | | | Xcode project templates will by default create source files that ends with .m (obj-c). If you try to include Qt from such files, you will get a bunch of compile errors, since the compiler will not understand C++ concepts, such as namespaces. To ease mixing native iOS and OS X apps with Qt, we print a warning to the console, so that the error messages are easier to understand and fix, by renaming the offending file to .mm. Change-Id: I192f460f9ca53145b7193dec1cfe7c095ae149a1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Regenerate the Unicode tablesKonstantin Ritt2014-01-292-1464/+1465
| | | | | Change-Id: Ic64cfb1197cae100e3816d0425f11fdd728d0df9 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Introduce QChar::JoiningType enum and QChar::joiningType() methodKonstantin Ritt2014-01-293-6/+97
| | | | | | | | | | | | | | This aimed to disctinct joining types "L", "T", and "U" from just "U". Unicode 6.3.0 has introduced a character with joining type "L" and Unicode 7.0 will add a few more characters of joining type "L", so we'll have to deal with it anyways. [ChangeLog][QtCore][QChar] Added JoiningType enum and joiningType() method that deprecates the old QChar::Joining enum and joining() method. Change-Id: I4be3a3f745d944e689feb9b62d4ca86d1cf371b0 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix usage of QObjectPrivate::connect when q_func() is private.Olivier Goffart2014-01-291-2/+2
| | | | | | | | | | q_func() which is declared in Q_DECLARE_PUBLIC is usually private. We should use q_ptr directly in QObjectPrivate::connect, otherwise it does not compile when trying to access the private q_func Change-Id: I235165a0994327102dbb31c390c2cafdffe806dc Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Document Qt::NoFormatConversionAllan Sandfeld Jensen2014-01-291-2/+3
| | | | | | | | | | The Qt::ImageConversionFlag Qt::NoFormatConversion is necessary to generate QPixmaps not in ARGB32PM which can be useful when not used as a paint device. Task-number: QTBUG-36031 Change-Id: Ic2d3ccd59285dd18890f07f3205a2a219ce3aa40 Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* If DblClick, do not deliver 'duplicated' MouseButtonPressRick Stockton2014-01-272-0/+21
| | | | | | | | | | | | | | | | | | | | | | | QWidgetWIndow: In Qt4, when Qt created a MouseButtonDblClick event, Qt would consume the causing MouseButtonPress. It would send only the derived dblclick event to widget windows and their children. This change makes Qt5.3 and higher emulate Qt4 delivery of double click-related events to widget windows and their children. QML objects (e.g. mousearea) continue to receive the second MouseButtonPress. [ChangeLog][QtGui][QWidget] MouseButtonDblClick: Do not send the 2nd MouseButtonPress event to Widgets. Restore Qt4 behavior in sequence of mouse events delivered to widget windows and their children. Task-number: QTBUG-25831 Change-Id: Iff0f9c592bceacb2ca844d30f8180081e136a889 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Fix OS X/iOS SDK macros to be usable in combined expressionsTor Arne Vestbø2014-01-251-4/+4
| | | | | | | | The macros need parentheses around them so that you can use them as #if A && B without wrapping (A) and (B). Change-Id: I8a004eb64e8cd3f4fc0370d772565c8d84eb9f7b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Work around a binary incompatibility in MSVCThiago Macieira2014-01-233-2/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fix in b8fe5e1bbc7f341d03d2704a6110d6e3240589bb (for bug QTBUG-27277) created two sets of begin() and end() functions for QVector. That was required because QTypedArrayData::iterator and QTypedArrayData::const_iterator have non-implicit copy constructors, which means the variants returning a strict iterator need to pass the storage pointer as an implicit first parameter. With the fix, the compiler would emit functions with two different names for each variant, which couldn't be merged. If we remove those copy constructors, the compiler might be able to generate the same code (no implicit first parameter) for both functions. Now, enter MSVC. Due to QPolygon, QVector<QPoint> and QVector<QPointF> are "extern templates". That is, the compiler is not allowed to inline anything, it must generate calls into QtCore (which we must fix for Qt 6, if we can). That means QtCore would only have one set of begin() / end() functions. If an application tried to use the other set by defining QT_STRICT_ITERATORS, you'd get a linker error for: ?begin@?$QVector@VQPoint@@@@QEAA?AViterator@?$QTypedArrayData@VQPoint@@@@V23@@Z (class QTypedArrayData<class QPoint>::iterator QGenericArray<class QPoint>::begin(class QTypedArrayData<class QPoint>::iterator)) Change-Id: I5c10a7d0a4855f4ba84056d313c6a800ecdcfe37 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Update QStandardPaths documentation with Android paths.Christian Strømme2014-01-231-1/+42
| | | | | | | | Adds example paths for the various locations returned on Android. Change-Id: I55a4e23570c252cbf643596d166c7c43f023ba9c Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update the qHash function for strings to use the CRC32 instructionThiago Macieira2014-01-231-0/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to my profiling of Qt Creator, qHash and the SHA-1 calculation are the hottest spots remaining in QtCore. The current qHash function is not really vectorizable. We could come up with a different algorithm that is more SIMD-friendly, but since we have the CRC32 instruction that can read 32- and 64-bit entities, we're set. This commit also updates the benchmark for QHash and benchmarks both the hashing function itself and the QHash class. The updated benchmarks for the CRC32 on my machine shows that the hashing function is *always* improved, but the hashing isn't always. In particular, the current algorithm is better for the "numbers" case, for which the data sample differs in very few bits. The new code is 33% slower for that particular case. On average, the improvement (including the "numbers" case) is: compared to qHash only QHash Qt 5.0 function 2.54x 1.06x Qt 4.x function 4.34x 1.34x Java function 2.71x 1.11x Test machine: Sandybridge Core i7-2620M @ 2.66 GHz with turbo disabled for the benchmarks Change-Id: Ia80b98c0e20d785816f7a7f6ddf40b4b302c7297 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Declare flags for Qt::EdgeJ-P Nurmi2014-01-221-1/+4
| | | | | | | Task-number: QTBUG-36174 Change-Id: I11424b79b6762764095cbb3b25527373e2b6fd1b Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2014-01-2125-42/+976
|\ | | | | | | refs/staging/dev
| * Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-2025-42/+976
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/corelib/tools/qstring.cpp src/gui/image/image.pri src/gui/image/qimage.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/eglfs/qeglfshooks_stub.cpp tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp Change-Id: I3b9ba029c8f2263b011f204fdf68c3231c6d4ce5
| | * Fix cd(), cdUp() QDir member functions docs regarding nonreadable dirsBartosz Brachaczek2014-01-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The documentation implies that cd() and cdUp() functions return false if the new directory is not readable, but that is not the case. It is an obvious mistake in the documentation, because cd'ing into a nonreadable directory is perfectly valid. Provided also with a test to verify that cd() actually returns true with nonreadable directories. Change-Id: I4aa3e859b35c64266df510a203574e3701aea77c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Fix typos in QUrl::toAce() documentation.Mitch Curtis2014-01-181-1/+1
| | | | | | | | | | | | | | | Change-Id: I6b101c57c537523fb48e57985e1d69c4327a67aa Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| | * Fix crash when constructing a QVector with an empty initializer list.Volker Krause2014-01-181-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Data::allocate(0) returns a pointer to read-only memory, updating d->size will segfault. The safety check for this exists in all other QVector ctors already. Change-Id: Ida0fe4182de56ee62c7f91e8652cfafbfd7b8410 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QNX: Fix compilation of qdatetime.cppSergio Ahumada2014-01-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Adding std:: to pow() to make it compile for BlackBerry 10. Change-Id: I9ab3cc626eb2ba872c09df33cdb820b50d075428 Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com> Reviewed-by: Fabian Bumberger <fbumberger@rim.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Optimize QDateTime string parsingJędrzej Nowacki2014-01-171-11/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch reduces amount of allocations during string parsing by using QStringRef. The operation is safe as neither QDate nor QTime uses QString as a storage type Change-Id: Ib9f40d86e8e420653ac4fe8ba883d554331ffc32 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Make QCommandLineParser not crash if passed a bad QCommandLineOptionThiago Macieira2014-01-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This otherwise crashed: QCommandLineOotion opt("with=equals"); parser.isSet(opt); Can't write a unit test because it produces a warning. Change-Id: Ifc67f20bb4b16b96d93dffbe4e82e6cc8a17584d Reviewed-by: David Faure <david.faure@kdab.com>
| | * Do not consider a signal to be connected if only a signal spy is installed.Volker Krause2014-01-162-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes QtQuick key handling not propagating key events beyond the specific onXPressed handlers, due to erroneously thinking those exist, when signal spy callbacks are present. Considering signal spies for isSignalConnected() goes back to 87239ef6 in Qt4, and seems to be there just due to this code being based on activate(), where this check obviously makes sense. Change-Id: Iad41e42a8d3ee2a16a55be7d1a7cdc51484981ce Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * Android: Don't register main thread on loading libraryEskil Abrahamsen Blomfeldt2014-01-164-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building with debug, all SLOT or SIGNAL macros will expand to a function call, and then function will call QThreadData::current(), which will set QCoreApplication::theMainThread if it has not already been done. Since Qt Widgets has these macros in the static initialization of the library, we would register the Android main thread as the main thread of Qt, which would mean that the actual application object was created on a different thread than the main thread. This caused warnings to appear, and also triggered a race condition which caused widget applications to sometimes show a black screen instead of content on startup when run with the OpenGL plugin. Task-number: QTBUG-35048 Change-Id: Ie8979f5e7cd5662f8d7dd276de9f94f27cc120b5 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Android: QStandardPaths implementationChristian Strømme2014-01-162-0/+333
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds standard paths implementation for Android. [ChangeLog][QtCore][QStandardPaths] Added QStandardPaths implementation for Android. Task-number: QTBUG-34631 Change-Id: I38673204a521a990438470c4e165105a2b02b7ad Reviewed-by: BogDan Vatra <bogdan@kde.org> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| | * Android: Add convenience function to get the API level.Christian Strømme2014-01-162-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | It's common to check the Android API level at runtime to determine what functionality is available. This change provides a convenient way to get the Android SDK version (API level) from c++. Change-Id: I88f65ae87e0fa8ac0affefffbd1b1bba855c9f46 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Bump Qt version to 5.2.2Sergio Ahumada2014-01-151-2/+2
| | | | | | | | | | | | | | | Change-Id: Ia7dd68e0a280d12eba28932b4c5edb9948310a1e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
| | * Document QAbstractItemModels::roleNames() better.Mitch Curtis2014-01-151-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | List all of the default role names, and mention that the function must be overridden if the model is used within QML. Change-Id: I6ced5ac74143dcb97c527da2a6a23aa9d21f70e5 Reviewed-by: J-P Nurmi <jpnurmi@digia.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
| | * Fix some typosKurt Pattyn2014-01-151-3/+3
| | | | | | | | | | | | | | | Change-Id: I673ad09e458438b921fa093190bd983e8f9749b4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * MIPS DSP build system fix and additional optimizations.lpapuga2014-01-144-0/+502
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed MIPS DSP portion of the mkspecs/features/simd.prf file in order to fix the corrupted build system for MIPS platforms. List of the additionally optimized functions from file src/gui/painting/qdrawhelper.cpp: - qt_blend_rgb16_on_rgb16 - qt_fetchUntransformed_888 - qt_fetchUntransformed_444 - qt_fetchUntransformed_argb8565 from file src/gui/image/qimage.cpp: - convert_ARGB_to_ARGB_PM_inplace from file src/corelib/qstring.cpp: - ucstrncmp - toLatin1_helper - fromLatin1_helper Change-Id: I5c47a69784917eee29a8dbd2718828a390b27c93 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Windows: Do not print test output to both stdout and system debug logKai Koehne2014-01-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid piping the test output to both the Windows system debugger, and stdout. This fixes duplicate output in Qt Creator, which displays messages from both sources. [ChangeLog][QtTestLib] The (default) plain text logger on Windows now logs to either the system debug log (in case no console is open), or stdout, not both. Task-number: QTBUG-34630 Change-Id: I35fe9f4a50cc660d79fad7dffa6d19659b2102ae Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
| | * Fix typos in commentsKurt Pattyn2014-01-131-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Comments contained some typos. Comments have been replaced with the ‘official’ description from http://msdn.microsoft.com/en-us/library/8x5x43k7.aspx. Change-Id: I25dda0911735b4a0d4f306bc95bc984be0080e2f Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| | * QNX: Fix compiler warning about unused variable.Sérgio Martins2014-01-121-0/+1
| | | | | | | | | | | | | | | Change-Id: I16e4aa32647793bf36fee60ed94db69a6ae2d8ea Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QDate - Fix parsing Qt::ISODateJohn Layt2014-01-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix parsing of ISO Date from being totally lenient to being semi-strict by requiring the separator positions to be non-numeric. [ChangeLog][Important Behavior Changes] Parsing of Qt::ISODate by QDate::fromString() and QDateTime()::fromString() is not as lenient as before, the date component separators are now required to be non-numeric. This means a string like "2000901901" will no longer be recognized as a valid ISO Date, but "2000/01/01" will still be even though it doesn't strictly meet the ISO format of "2000-01-01". Task-number: QTBUG-34141 Change-Id: I0e481144136c60d4cac61364b9b2c1d2cd1e78fc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QDateTime - Fix isValid() if invalid QTimeZoneJohn Layt2014-01-111-0/+9
| | | | | | | | | | | | | | | | | | | | | Explicitly check that the QTimeZone is valid before trying to use it. Change-Id: Iec415a2cb07071502fe71ee5ac92a7657e818f99 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * QLocale - Check day number is validJohn Layt2014-01-111-0/+3
| | | | | | | | | | | | | | | | | | | | | Check day number falls in valid range before using as array index. Change-Id: I8d7c203b97988633fe4c345d5e7002bba9c2c68b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Make qtbase compile with QT_NO_TEMPORARYFILETasuku Suzuki2014-01-101-1/+4
| | | | | | | | | | | | | | | Change-Id: I0211ed44513723392e3f50b76be10b95c0bcddd5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | | Allow printf style for qCDebug, qCWarning, qCCritical macrosKai Koehne2014-01-216-8/+388
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for using qCDebug and friends in the 'printf style' way. This allows an almost mechanical conversion of existing qDebug, qWarning, qCritical macros, and allows avoiding the size overhead the streaming style incurs (mostly due to inlined QDebug code). To handle this gracefully we require variadic macros (part of C++11/C99). For compilers not supporting variadic macros we fall back to checking the category in QMessageLogger. [ChangeLog][QtCore][Logging] Allow qCDebug macros to be used in a printf style. Change-Id: I5a8fb135dca504e1d621bb67bf4b2a50c73d41b9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Support logging direct to journald, if enabled.Robin Burchell2014-01-212-0/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of merely intercepting logging output from stdout/stderr from the journal side of started processes, this has the advantage of meaning that the origin process name will be correct. fprintf won't work, because if a process starts children (like e.g. a homescreen does), then their stdout/stderr are merged into their parent, and journal has no way of differentiating the origin. We are also able to store information about the context of logging, which might be useful in post-mortem cases. [ChangeLog][Platform Specific Changes][Linux] Systems with systemd may now pass -journald to configure to send logging output to journald. Logging will still be sent to stderr for interactive applications (run from a tty) or with QT_NO_JOURNALD_LOG set to a non-empty value. Change-Id: Ib260cec1ea87390bf44f267d217d795583407d00 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Fix compilation error on FreeBSDGabriel de Dietrich2014-01-211-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | timezone is defined differently in FreeBSD compared to other (more or less) POSIX-compliant Unices. Task-number: QTBUG-36080 Change-Id: I4ad1a5ccd0b9ddbadb9fdd90edc26cf0c7252dfb Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Document qRemovePostRoutine() function and update qAddPostRoutine() docBartosz Brachaczek2014-01-201-3/+23
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The qRemovePostRoutine() function has been added as publicly exported function in Qt 2.2.0 with behavior equivalent to that of today. It has never been documented for unknown reasons, possibly simply forgotten. This function provides needed symmetry for the already documented qAddPostRoutine() function and is used in some real world applications. Change-Id: Ied4709505d8335c883e9791ea634df8fb406d995 Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com> Reviewed-by: Nico Vertriest <nico.vertriest@digia.com>
* | Revert commit 0893d2d7e5cadcbea5caca8a027ae3e28b6c5410Louai Al-Khanji2014-01-201-4/+2
| | | | | | | | | | | | | | | | | | Commit 0893d2d7e5cadcbea5caca8a027ae3e28b6c5410 causes a lot of build warnings on Windows with MSVC. Change-Id: Ic857b36bf77d4f536a45cec337f4b813b9974107 Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com> Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
* | Abuse const_cast in QStringBuilder to get a little more performanceThiago Macieira2014-01-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | Without this const_cast, the call to QString::data() or QByteArray::data() will cause a call to detach(), which is totally unnecessary since we've just allocated data a couple of lines before. Since we know we're the owner of the only reference, we can skip the detach attempt. Change-Id: If40f66100f85cc9b405025f21c562828ead23475 Reviewed-by: hjk <hjk121@nokiamail.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* | Replace win32-g++ with mingw scopeKai Koehne2014-01-171-1/+1
| | | | | | | | | | | | | | | | Commit 773dd01 introduced a general mingw platform scope, which is cleaner and more flexible than matching the spec name. Change-Id: Ie3a9cb791a83f7c8a51bc4e23069190c452ab521 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | QObject: fix connection to function pointer with non-copyable references ↵Olivier Goffart2014-01-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | argument For example, QObject is non copyable (its copy constructor is deleted or private via Q_DISABLE_COPY). It should still be allowed to pass a reference to a QObject as an argument to as signal (or slot). This fixes a compilation failure. Task-number: QTBUG-36119 Change-Id: I9bcf477e347d69fdae2543c99781b6421883be78 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Support multiple native surfaces on Android.BogDan Vatra2014-01-172-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Support for multiple native surfaces is needed by applications that need to mix raster windows with GL windows. Rework the raster and opengl implementation, get rid of eglfs and fbconvenience dependencies. Create a single android platform plugin. [ChangeLog][Android] Rework the raster and opengl implementation. [ChangeLog][Android] Create a single android platform plugin. Task-number: QTBUG-34650 Change-Id: I9b1ab51554823329dda8cfbf8fef27c38f917c7b Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
* | Suppress warnings for Qt builds only.Kurt Pattyn2014-01-171-2/+4
| | | | | | | | | | | | | | | | Qt should not dictate which warnings are disabled for client code. Therefore warnings will only be suppressed when building Qt. Change-Id: I1c470ba346c8272bae2a38385e425afa6eb50170 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Remove last traces of QT_COMPILER_SUPPORTS_NEONTor Arne Vestbø2014-01-162-3/+2
| | | | | | | | | | | | | | | | | | | | | | Fixes ARM build, as the NEON drawhelpers and image conversion functions were ifdef'ed out. Follow-up to 1b12c0608be2359baa2f96ae28b135a84abd388c. Change-Id: I0b5e89c8f445741432db2dfe1f8d971b971c8605 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>