Commit Graph

5808 Commits (ea8a92c9c93f74b23c4520d7bef357a7a8ec00df)

Author SHA1 Message Date
Edward Welbourne ea8a92c9c9 Clarify what time-zone "transitions" are.
Change-Id: Idad5b841c3c693e2040ca606894187988615c9b0
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
2015-12-09 12:55:32 +00:00
Timur Pocheptsov 7d2c87311e QProcessPrivate::startProcess - fix invalid encodedProgramName (OS X)
CFBundleCopyExecutableURL returns different URLs (can be absolute or relative)
for the same bundle (caching) - and this results in an
invalid encodedProgramName (in case we try to start the same process twice),
for example, if we start: QProcess p; p.start("nestedDir/nested.app")
twice, the second time we'll have an error trying to start something like
nestedDir/nested.app/_and_here_absolute_url.

Change-Id: I8ac42e20fe3b9fe8b80d5b5c663672e77d88269d
Task-number: QTBUG-49837
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-12-09 12:29:13 +00:00
Nico Vertriest 8f74fe1b66 Doc: Circumvented qdoc parsing by removing '!'
Qdoc gave warning "Cannot link this to anything"

Task-number: QTBUG-43810
Change-Id: Id903040ed7b2860a2ec64a52f7fbe8269c6927b0
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
2015-12-09 09:36:17 +00:00
Marc Mutz 6de49f4ab6 QString: where possible, re-use existing capacity in op(QChar/QL1S)
If the LHS is detached and has existing capacity that is large
enough to hold the RHS, re-use the memory instead of allocating
a new buffer and throwing away the old.

Change-Id: I53d42825da92c264c7301e8e771cba9fb35c321b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-12-08 23:48:12 +00:00
Kai Koehne 2baeeb4026 Win: Use native separators in QLibrary errors
Fixes output like

  plugin cannot be loaded for module "QtWebEngine": Cannot load library D:/dev/qt/5.6/msvc-2015-32/qtbase/qml/QtWebEngine/qtwebengineplugind.dll: The specified procedure could not be found.

Change-Id: I159113a6a1f40b924905da15267a42e5b627d56e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-12-08 08:14:48 +00:00
Thiago Macieira 401507b348 Fix constructing a QSharedPointer<const> of a QEnableSharedFromThis type
It should compile, since the std::shared_ptr does.

[ChangeLog][QtCore][QSharedPointer] Fixed a problem that would cause a
compilation error when constructing a QSharedPointer of a const type
when the type derives from QEnableSharedFromThis.

Task-number: QTBUG-49748
Change-Id: I8de47ed6c7be4847b99bffff141c84f5e0b6bea8
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-12-08 06:32:20 +00:00
Thiago Macieira 7499e642e0 QVariant: retain duplicate keys when converting
Task-number: QTBUG-49520
Change-Id: I3e15a26e0e424169ac2bffff1417e3f4398c2277
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2015-12-08 06:32:18 +00:00
Friedemann Kleint df053dc642 WinRT: Add RETURN_[]_IF_FAILED_WITH_ARGS macros.
Make it possible to pass arguments to the messages by
introducing variadic macro versions of RETURN_[]_IF_FAILED.

Change-Id: Iec27adb33d9d3211fdc299f07777fcdf33f08a93
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-12-07 19:37:33 +00:00
Martin Klapetek 891c98ebd6 Don't treat "/etc/localtime" in TZ env var as a valid timezone id
On some Debian distros, the TZ environment variable can be set to
":/etc/localtime", which libc defines as "default value". If this is
set, the current QTimeZone parsing code will return "/etc/localtime"
as the system timezone id, which is clearly wrong.

So in that case, just unset the ianaId variable and let the other
blocks look for the timezone.

Change-Id: I3f5795d0a05f4974a60556387a07a1e2e1e7aa30
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-12-07 18:03:17 +00:00
Marc Mutz 80ae3baed0 Q_UNIMPLEMENTED: remove explicit file, line and funcinfo information
This information is already registered by the QMessageLogger ctor.

Change-Id: Iac378777675f00ad5d07b938605484b1466aa5c5
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-12-07 11:29:28 +00:00
Sérgio Martins 4b365cb446 Fix typo in QObject::disconnect() documentation
Change-Id: I65f95c7f22399b9fea65c44b971afc7efbb73d64
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-12-07 10:23:49 +00:00
Samuel Nevala ba40d1a872 Combine environment variable implementations
Environment variable storage implementations on Windows Runtime and CE are
very similar. For better maintainability have just one implementation.

Change-Id: I12ec38f7bde3fcc0bcc56face88d5f19cf3b3504
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-12-03 14:33:18 +00:00
Nico Vertriest 1c720be3fb Doc: corrected statement about QByteArray::clear
Task-number: QTBUG-45096
Change-Id: I30a49044690c2f0ef5bf6ee80712e1395c60ac77
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
2015-12-03 13:50:14 +00:00
Nico Vertriest b07c10c5de Revert "Doc: Added info about sorting in QItemSelectionModel::selectedIndexes"
This reverts commit d0f57439d0.
This commit had introduced a wrong statement about the sorting.

Change-Id: I2f6ea6f7cfb318bca7bd44c686956ba135b65b20
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
2015-12-03 13:49:43 +00:00
Friedemann Kleint afaa7351c0 QStandardPaths::standardLocations()/WinRT: Return empty lists.
Previously, lists containing one empty string were returned for the
unimplemented functions.

Change-Id: Ia64b53325420e32076f2bacf22c48885d7121df0
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-12-03 10:48:25 +00:00
Matt Hoosier db06745fe2 Fix overflow-checking additions and multiplication on MinGW
Intrinsics headers are associated with compilers, not OS's. This
change fixes a broken MinGW build triggered by
29bc68cf16.

Change-Id: Ib9e4ea3e25bf49d38a754a246b9433bc078bbb18
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-12-02 15:41:52 +00:00
Thiago Macieira 8d7d481772 doc: add a note about cmd.exe and the QProcess string splitting/joining
cmd.exe uses a different set of characters to split arguments on, which
is not compatible with CommandLineToArgvW().

See https://technet.microsoft.com/en-us/library/bb490880.aspx.

Task-number: QTBUG-49641
Change-Id: Ic90fe6b1cbe84978a02fffff141b8f961a43ad28
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-12-02 15:38:38 +00:00
Topi Reinio 10379e48f1 Doc: Omit default argument in describing a function call
QKeySequence::PortableText is the default value for argument passed
to QKeySequence::toString(), and it doesn't need to be mentioned
specifically in description for Qt::AA_MacDontSwapCtrlAndMeta enum
value.

Dropping the parameter shortens the text string, allows browser to
better wrap the table text, and gets rid of the automatic horizontal
scrollbar in online style. This improves readability for the entire
table.

Change-Id: I7051f5415a7a100b8c76f23b06b6cb9a2b0699ef
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
2015-11-30 11:55:44 +00:00
Nico Vertriest 9b23e36bbd Doc: improvement in if condition about inserting item in list
Task-number: QTBUG-41708
Change-Id: Ibbb115a8ad81f7fba0ce162ae131d4843b19c188
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
2015-11-30 09:10:17 +00:00
Nico Vertriest 949ed98b2b Doc: added QQuickItem also uses UngrabMouse
Task-number: QTBUG-37311
Change-Id: I8beac262d92ddb16c225da65aa8a3f80da59074f
Reviewed-by: Michael Brasser <michael.brasser@live.com>
2015-11-30 09:10:09 +00:00
Lars Knoll 63a5b3b09d Remove a reference to Mac OS X 10.4
It's been a while since we stopped supporting that version :)

Change-Id: I2fa4900945551024ac920c36c47d20b47aee50c0
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-11-30 08:22:42 +00:00
Lars Knoll 9e5133f4cc Document platform limitations for QCollator::ignorePunctuation
OS X and iOS do have a flag for this in their API, but it does
not seem to work. We can't support this on Linux without ICU.

Change-Id: I81613ad425cb054597f23fac112be665f8d958b6
Task-number: QTBUG-41978
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-11-30 08:22:38 +00:00
Marc Mutz 9f591b3b6c QVector: prevent resize() from shedding capacity
...even if reserve() hasn't been called before.

[ChangeLog][QtCore][QVector] resize() will no longer shrink the
capacity. That means resize(0) now reliably preserves capacity().

Task-number: QTBUG-39293
Done-with: Robin Burchell <robin.burchell@viroteck.net>
Change-Id: Ie7e4e597126832990b6cfb83bba875c3963b143e
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-11-28 21:34:23 +00:00
Marc Mutz 678a4273a3 QtBase: combine adjacent qDebug()/qCritical() lines
For qDebug() and qWarning(), this is just an optimization.
For qCritical(), which can be fatal, the old code was just wrong.

Change-Id: I6d8ab1d7531d766cd41b49569dc0fd4420ecab8b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-28 16:34:32 +00:00
Marc Mutz 40a8302115 QtBase: remove explicit function info from qWarning() etc
This information is already registered by the QMessageLogger ctor.

Where, by dropping the << Q_FUNC_INFO in ostream-style qDebug(), only
a string literal remained, converted to printf-style qDebug() on the
go.

Change-Id: I3f261c98fd7bcfa1fead381a75a82713bb75e6f3
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-28 16:34:26 +00:00
Liang Qi 8c57e8c012 Merge remote-tracking branch 'origin/5.5' into 5.6
Conflicts:
	src/network/socket/qnativesocketengine_p.h
	src/network/ssl/qsslsocket_mac.cpp
	src/network/ssl/qsslsocket_mac_p.h
	src/widgets/kernel/qwidget.cpp

Change-Id: I39592cb37d710dfaf8640769ba3c1b637927d7f4
2015-11-27 08:35:45 +01:00
Allan Sandfeld Jensen 07fdfa5598 Detect NEON on AArch64
The __ARM_NEON is the standard define for NEON instructions support
__ARM_NEON__ is only legacy, and specifically not defined in
AArch64 builds, which causes us not to detect NEON support there.

The NEON assembler files doesn't build with AArch64, so the NEON
drawhelper methods must be excluded for now.

Change-Id: Ie32f855bde94ee7efd8a8ddb7766c931778e729b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-11-26 15:40:41 +00:00
Edward Welbourne 2277e3b873 Proof-reading fixes to QCoreApplication documentation.
Things I noticed while reading - so I fixed them.

Change-Id: I48f6f2eef7ac3cf901e2f1305c503fb18f5ab2ae
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
2015-11-25 13:14:14 +00:00
Oliver Wolff c7251e7dcd Revert "Fix deadlock when setting environment variables."
This reverts commit 5b62a5e7aa.

This commit is reverted due to two reasons:
1) It was written incorrectly and does not work as is. The
   ifdefs should be ifndefs. In its current state, it does
   the exact opposite of what it is supposed to be doing.
2) There is another environment access inside qsimd.cpp
   (which checks QT_NO_CPU_FEATURE). This access causes the
   app to hang.

All in all that approach is not sustainable as we might get
bitten by environment access again and again. Instead we should
use another environment container or use a recursive mutex for
WinRT and Windows CE.

Task-number: QTBUG-49529
Change-Id: Iaca76404dc1023551a7c25489a609681135765fd
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Samuel Nevala <samuel.nevala@intopalo.com>
2015-11-24 15:12:00 +00:00
Friedemann Kleint 045abe631c Remove arch/qatomic_mips.h from src/corelib/arch/arch.pri.
Amend change 110a8c339f, fixing:
WARNING: Failure to find: arch/qatomic_mips.h

Task-number: QTBUG-49168
Change-Id: I7009037d3f4c51c9ed9713b6e94ee43022fe2645
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-11-24 05:24:39 +00:00
Samuel Nevala 5b62a5e7aa Fix deadlock when setting environment variables.
Qt uses QHash as the container for faking environment variables on
Windows Runtime and CE. Environment variable manipulation functions are
protected by mutex. Accessing the QT_HASH_SEED environment variable
inside QHash can lead to situation where qputenv() call leads to
qgetenv() call and that leads to a deadlock. Since the application
environment is faked anyway, drop support for QT_HASH_SEED and ifdef
that functionality out on those platforms. Documentation is updated
to reflect changes.

Task-number: QTBUG-49529
Change-Id: I1b1c28cb0b041fe2a63ca3dce57068fcb46505a7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-11-23 19:58:16 +00:00
Andrew McCann bc7d0da741 OS X: Fix QStandardPaths::standardLocations()
Task-number: QTBUG-49443
Change-Id: I0699dfd3cb4c710ab96c324219444c6294c9d732
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
2015-11-22 20:40:15 +00:00
Erik Verbruggen ecb6835a9f OSX: fix build.
Move the QT_USE_NAMESPACE up, so any use of Q* classes won't result in
compilation errors when Qt is configured to be in a namespace.

Change-Id: Id559c86798529f6cad43a75fce303c108ce820bc
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2015-11-21 06:09:00 +00:00
Nico Vertriest de43d4fafd Doc: added doc about removal option qmljsdebugger by QCoreApplication
Task-number: QTBUG-46597
Change-Id: I2ed42480bd96119f04828a7a965c348f7c773acd
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
2015-11-19 21:31:38 +00:00
Oliver Wolff dc3e7e45eb winrt: Merge Languages and ManifestLanguages for QLocale::uiLanguages
Task-number: QTBUG-48140
Change-Id: I904ad48e7bc48867a362e3f6c5ca1516e55ed872
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-11-19 19:59:33 +00:00
Morten Johan Sørvig 97c8f6aa9c OS X: Add opt-in for CoreFoundation event dispatcher
Opt-in by setting
	QT_EVENT_DISPATCHER_CORE_FOUNDATION=1

This will make QCoreApplication and QThread create
a QEventDispatcherCoreFoundation instead of a
QEventDispatcherUNIX.

With this change we can now support calling native API
that requires a running Core Foundation event loop
on the QCoreApplication main thread and secondary
threads. Previously this was only supported on the
QGuiApplication main thread.

Rewrite the #ifdef event dispatcher logic slightly:
both OSX and GLIB now gets an "else" branch for the
UNIX event dispatcher, instead of the current "dangling
else" pattern which only works for one #ifdef case.

Change-Id: If853567fa097fe007502b0804c2307a989719866
Task-number: QTBUG-46625
Task-number: QTBUG-48758
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-11-19 16:04:56 +00:00
Marc Mutz 62f2a0fb0d QXmlStreamStringRef: unbreak move special member functions
The QXmlStreamAttribute move operations expect QXmlStreamStringRef
to have move special member functions, but in fact the non-trivial
QXmlStreamStringRef dtor prevented them from being generated by the
compiler. We can't remove the dtor, because it's exported :(

So provide all the move special member functions by hand, and since
their presence in turn prevents the copy special member functions
from being generated, provide those too.

Change-Id: I494aea24981cdb661abe33a96976a363cfe7ef1b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-19 07:40:49 +00:00
Marc Mutz 2697d77141 QXmlStreamStringRef: mark as shared-not-movable-until-qt6
Requires adding member swap. Member-swap is also
necessary to fix the deleted move-assignment operator
of this class, on which QXmlStreamAttribute heavily
relies for its own move assignment operator.

That's why it's not proposed for dev, but 5.6.

Change-Id: Id7d0823d44fc6e55ada7c096ae95444f6bb50963
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-19 07:40:39 +00:00
Marc Mutz f9de9eae3a Replace backwards Java-style iteration with new reverse_iterators
Faster, and, thanks to the new reverse_iterators, just as convenient.

Change-Id: Ibc6c64051a8ede4a47428e9271ffbeaa921fc255
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2015-11-19 07:40:29 +00:00
Tim Blechmann 970f44bf48 qfactoryloader: static qt compile fix
statically linked qt does not compile, as versionKeyLiteral() is unused,
causing clang to complain:
error: unused function 'versionKeyLiteral' [-Werror,-Wunused-function]

Change-Id: I6a233081e7c58fce75ece82616f937f29a23a81b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-11-19 07:09:10 +00:00
Thiago Macieira 3dd6ac244f Add support for the C++11 features fixed in MSVC 2015 Update 1
This brings MSVC 2015 support to almost C++11 feature completion.
Constexpr support still has one annoying bug, for which the fix is
promised for Update 2.

Change-Id: I92c2ee6638625c61e3a16690563434e32d853368
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-18 00:30:47 +00:00
Thiago Macieira 7ad560b2bc Fix build with OS X 10.8 SDK
The ffsll function is missing with that SDK, but Clang and GCC support
it as the builtin.

Change-Id: I9f4d900898814b569c1affff140e15fb59fb45d8
Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch>
Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
2015-11-18 00:30:45 +00:00
Thiago Macieira f29b6943f0 QString: Fix in-place toUpper/Lower when there's size expansion
When that happens, we need to detach (in-place conversion won't work),
so we recurse back into the same function, but the template version that
does detaching.

Task-number: QTBUG-49181
Change-Id: Idba8c29717f34c70a58fffff1412fea3acc95f98
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-11-18 00:30:40 +00:00
Thiago Macieira 7c05a0cc99 Merge "Merge remote-tracking branch 'origin/5.5' into 5.6" into refs/staging/5.6 2015-11-18 00:30:38 +00:00
Oswald Buddenhagen ded63fbb94 make a proper header-only module for QtZlib
that way other modules can use the headers without hacks.

this required making the base directory for paths in headers.pri
configurable in syncqt.

Change-Id: Id35cfe05bcf4c576d3f2d0d8d09590a5e23d21d3
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
2015-11-17 20:22:17 +00:00
Liang Qi 17dc773221 Merge remote-tracking branch 'origin/5.5' into 5.6
Change-Id: I6b1fe0c6c360a0d5285911869f0f4f93d86d822e
2015-11-17 07:14:16 +01:00
Nico Vertriest d0f57439d0 Doc: Added info about sorting in QItemSelectionModel::selectedIndexes
Task-number: QTBUG-40726
Change-Id: I450f9735fbbdc6574e8a14ea0076a28ee65077de
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-11-16 15:26:11 +00:00
Nico Vertriest 50f91545a3 Doc: removed 2 invalid external links in external resources.
Link to Using a Designer UI File

Task-number: QTBUG-49251
Change-Id: I9d2e5ad746ce5c3933f28b8159e381dcdb8e643a
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-11-16 15:25:56 +00:00
Konstantin Ritt e593e5aa67 QChar: Simplify case convertion code with template magic
Same as in QString, though simpler a bit due to fixed-length sequence.

Change-Id: Idd6670a7b6415f5d515987c30931d16b73dd280e
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-16 14:34:13 +00:00
Konstantin Ritt c267646867 Move CasexTraits from qstring.cpp to qunicodetables_p.h
and implement TitlecaseTraits as well,
to be re-used in the following commit.

Change-Id: I5c0bff42fe3b9bc9c2454cc16916cc2be87f604f
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-11-16 14:34:04 +00:00