Commit Graph

40649 Commits

Author SHA1 Message Date
Marc Mutz
0ca7c0a575 QMake: be less laissez-faire with implicit conversions to QChar
QChar currently is convertible from nearly every integral type. This
is bad code hygiene and should be fixed come Qt 6.

The present patch is the result of compile fixes from marking these
constructors explicit.

Amends 60ca2f5f7c.

Change-Id: I06887104d42f8327eb6196afcde5f942a74a6a78
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-15 10:56:00 +02:00
Marc Mutz
8155d0693f Eradicate Q_FOREACH in the WASM plugin and mark the plugin free of them
The first one is trivially correct: it clearly doesn't modify the
container under iteration.

The second is a bit more subtle, because drawWindow() could be
expected to call a paintEvent and this could theoretically lead to
lowering, closing, or opening of a window. But this function just ends
up blit()ting, so it doesn't call into user code.

Change-Id: Id15e0102e9c8aa12516af27d771104e9993c48a1
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
2019-07-15 05:25:13 +00:00
Marc Mutz
72d9222f7b QWasmFontDatabase: replace QStringList with a C array of strings
The content is static, so a dynamic container is overkill. Use a C array.
Don't make it static, as that creates more problems than is solves (static
initialization).

Change-Id: I07534c3336efbb6bbc19bfa1b8dad0c578d4e274
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Lorn Potter <lorn.potter@gmail.com>
2019-07-15 07:24:55 +02:00
Tasuku Suzuki
aa698bc3c4 Fix qdoublescanprint_p.h path in corelib
The qdoublescanprint_p.h header moved from tools/ to text/ when
text/ was introduced.

Amends a9aa206b7b.

Change-Id: Ia7167fc3c4cdb05d4f2e56c0a0427a80e3cee362
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-15 00:38:29 +00:00
Marc Mutz
205824103e QVarLengthArray: optimize pop_back()
Don't call realloc() with all its machinery when we know exactly what
to do: destroy the last element and decrease the size by one.

Extend the test, removing the unused Foo class for a new Tracker one.

Change-Id: I568eef4f6335669689fb16fd23af92cb4d6464bd
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2019-07-14 15:44:22 +00:00
Marc Mutz
944c5f40b3 QAbstractMetaCallEvent: fix compilation with out feature.thread on Clang
Clang warns that the private field semaphore_ is unused, and is correct,
of course.

Change-Id: Ic1372cedd3f4b2facca9f6f6be398d26f406b379
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2019-07-14 17:40:08 +02:00
Marc Mutz
319e0f097d QNativeSocketEngine: disable sign-compare warning-turned-error on Clang
On the WASM platform, the macro CMDG_NEXTHDR, which is not under our
control, emits a warning about comparing ulong and long with each
other, which -Werror turns into an error:

  qnativesocketengine_unix.cpp:1004:24: error: comparison of integers of different signs: 'unsigned long' and 'long' [-Werror,-Wsign-compare]
    cmsgptr = CMSG_NXTHDR(&msg, cmsgptr)) {
              ^~~~~~~~~~~~~~~~~~~~~~~~~~
  emsdk/emscripten/1.38.30/system/include/libc/sys/socket.h:286:44: note: expanded from macro 'CMSG_NXTHDR'
    __CMSG_LEN(cmsg) + sizeof(struct cmsghdr) >= __MHDR_END(mhdr) - (unsigned char *)(cmsg) \
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Fix by locally disabling the warning.

Change-Id: Ia2ed4318b2ef679b84ac8544835d1e383568ccac
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-07-13 18:40:06 +02:00
Marc Mutz
eaf2e6daf6 QFilesystemEngine: fix unused variable warning-turned-error on WASM
... and, presumably, Integrity.

Change-Id: I54d35fd11b7df139022e2575c29b2d832f80f761
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-07-13 18:37:21 +02:00
Sona Kurazyan
2f33e030b8 Remove usages of deprecated APIs of qtbase/gui
- Replaced the usages of deprecated APIs by corresponding
  alternatives in the library code and documentation.

- Modified the tests to make them build when deprecated APIs disabled:
    * Made the the parts of the tests testing the deprecated APIs to
      be compiled conditionally, only when the corresponding methods are
      enabled.
    * If the test-case tests only the deprecated API, but not the
      corresponding replacement, added tests for the replacement.

Change-Id: Ic38245015377fc0c8127eb5458c184ffd4b450f1
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-13 10:43:15 +02:00
Qt Forward Merge Bot
a837ec15fe Merge "Merge remote-tracking branch 'origin/5.12' into 5.13" 2019-07-13 01:00:33 +02:00
Qt Forward Merge Bot
a3d1fee81b Merge remote-tracking branch 'origin/5.12' into 5.13
Change-Id: I5d2a4fa33b4aa22da39ac045e6b85ab940b8720b
2019-07-13 01:00:21 +02:00
Marc Mutz
e89b2f72c7 Centralize the MSVC work-around for std::is_permutation
There's currently only one user, but another one is coming up, so apply DRY
and centralize the work-around for the MSVC warning C4996 on use of 3-arg STL
algorithms in one place.

The code is prepared to handle other algorithms with ease, should any more
crop up.

Change-Id: Ia881888d6a2b5286c6d8d823bc2b76788efad624
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-07-12 20:28:22 +00:00
Allan Sandfeld Jensen
4c61544aa8 ABI fixups for QColorSpace
Declare it shared to Qt and make the move method noexcept.

Change-Id: I25d5d255d300fda109ffa1a08e1849b15e9ff29c
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2019-07-12 17:13:10 +02:00
Tor Arne Vestbø
7d3a55cbd2 Remove unused arguments from QWidgetPrivate::create_sys
The public QWidget::create still has them, but we don't need to
propagate them on - that just makes debugging the window creation
flow harder.

The window argument to QWidget::create is technically used to
guard an early exit in the function, but to keep behavior the
same we leave it for now.

Change-Id: Ic0287575aa25f1272e216adc1b75e34d6f55f6d9
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-07-12 14:54:13 +00:00
Marc Mutz
0fec7417ca QHash: optimize equality operator
- First compare the d-pointer before dipping into *d
- Keep a running count as we calculate thisEqualRange, as
  std::distance() on QHash::iterator is very expensive.
- Skip the pointless first comparison of the unadvanced
  iterator's key() with itself (found by Mårten Nordheim)

Also rename (it, thisEqualRangeEnd) → (thisEqualRangeStart, it),
to keep advancing `it`, which is more natural than advancing
an `end` and later resetting it = end.

Change-Id: I2c27c071b9ee23425a763328402dad9efee4cbd0
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-12 16:43:32 +02:00
Qt Forward Merge Bot
38c2b80e65 Merge "Merge remote-tracking branch 'origin/5.12' into 5.13" 2019-07-12 15:29:54 +02:00
Shawn Rutledge
2d2e16d3ef Fix a couple more uses of QWheelEvent constructors in tests
Change-Id: I0c9f08a243a823aff0bf21dfc14f78680e95d80f
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2019-07-12 15:13:23 +02:00
Shawn Rutledge
7d29807296 Finish deprecating obsolete members of QWheelEvent
In Qt 5.0, delta() and orientation() were already marked obsolete,
but Widgets and tests have kept on depending on them all this time.
We now start using alternative API so they can really be deprecated.
All constructors except the newest one are also deprecated.
The plan is for all events from pointing devices to have
QPointF position() and globalPosition(), so we deprecate
the other position accessors.

[ChangeLog][QtGui] Obsolete constructors and accessors in QWheelEvent
now have proper deprecation macros.  What is left is intended to be
compatible with planned changes in Qt 6.

Change-Id: I26250dc90922b60a6ed20d7f65f38019da3e139e
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2019-07-12 15:13:01 +02:00
Marc Mutz
0a724ac74c Introduce QT_NO_LINKED_LIST and mark QtBase (almost) free of it
QLinkedList is still used in several tests. Add exceptions for
these subdirs.

Change-Id: I50ccd2a0892129d4a47aa4e2400211690da9a82d
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-12 14:26:30 +02:00
Tor Arne Vestbø
deac052a40 Revert "Reset QWidget's winId when backing window surface is destroyed"
This reverts commit a9246c7132.

The QWidget machinery is way to fragile to reset the winId under the
feet of QWidget like that. We would potentially need to include all
the logic in QWidget::destroy. This also ties into the flow between
QtGui and QtWidgets during window closing, which is still unresolved.

Change-Id: I168048a63c89796398eb5331a80ce3e5c8d9a208
Fixes: QTBUG-76588
Task-number: QTBUG-69289
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-12 14:17:43 +02:00
Marc Mutz
389988c42f QColorTransform: make fit for release
- Unexport the value class, export only out-of-line public member functions
  to give us more leeway in changing code later (otherwise, we'd be bound
  by BC with MSVC debug builds, which call even inline methods from the DLL.

- Don't use QSharedPointer as the d_ptr. It's twice the size of a pointer.
  Use a naked pointer-to-const. Derive Private from QSharedData. This
  requires some changes in QColorSpace, and, as usual, an out-of-line copy
  ctor.

- Add member-swap(), Q_DECLARE_SHARED().

- Drop noexcept from the dtor. It implicitly is, adding it explicitly looks
  weird.

- Pass QRgb and QRgba64 by value, not by cref. They're trivially-copyable,
  so passed in registers if passed by value. Passing by cref forces them
  onto the stack.

Change-Id: I669643d219ede6b7d07f15afbf8728e16150b3b2
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2019-07-12 14:15:35 +02:00
Allan Sandfeld Jensen
79f9adffc5 Remove QColorTransform::isNull
It is an undocumented and unused method with an obscure name.

Change-Id: Ife27bf836447865cd305c8c7fc9c438759b439cb
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2019-07-12 14:15:23 +02:00
Qt Forward Merge Bot
77d126ccb5 Merge remote-tracking branch 'origin/5.12' into 5.13
Conflicts:
	configure.pri

Also required s/solid\.color/solidColor/ in a couple of places in:
	src/gui/painting/qpaintengine_raster.cpp

Change-Id: I29937f63e9779deb6dac7ae77e2948d06ebc0319
2019-07-12 12:23:29 +02:00
Alexandru Croitor
3c0ba6675b Fix warnings as errors on macOS with new Xcode 10.2.1
A switch statement was comparing enum values of a different enum.

Change-Id: I578f79b15b1007afaa64cd3a2a80d6a75d3bed77
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Leander Beernaert <leander.beernaert@qt.io>
2019-07-12 12:18:15 +02:00
Marc Mutz
46d257b19d QPdfEngine: replace a QHash with a C array
The mapping is completely static and the key is the index, so just use
a const char array. The only twist here is that to avoid relocations,
we use an array of const char[4] instead of const char*[].

Change-Id: I001b4db833f14e000676125f6f1be4484d996e0b
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2019-07-12 06:56:02 +02:00
Marc Mutz
56fbcfd2b7 QPdfWriter: replace a QHash with a static_cast
The QHash was mapping equivalent values of different enums to each other.
The enums have the same enumerators, though, so if we take care to keep
the two in sync in the future, we can just static_cast them into each
other via int.

Change-Id: Ie67978604f8c3b9477419bc6029bbb869061e938
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-12 06:55:52 +02:00
Marc Mutz
e936c2a9a2 tst_QObbject: Fix very annoying -Wdeprecated-copy warnings
There's like three pages of this when compiling the test :)

Change-Id: I923f2c4f5eff7c709977026666cc5b2a2cbfaa72
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-12 06:55:45 +02:00
Andre Hartmann
f5840944a6 QByteArray: Clarify that QByteArrays always use the Latin-1 encoding
... irrespective from the users current locale.

Fixes: QTBUG-76938
Change-Id: I78810a75ecf9e9f1067363ce56656124b6ddcefd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-07-12 06:46:39 +02:00
Topi Reinio
7d4c9a6f8f Doc: Ensure macOS-specific widget docs are generated on other platforms
The Clang parser in QDoc fails to parse the .mm source files if their
include files are not found. Add a dummy 'AppKit.h' file under the
/doc directory for this purpose, and add its include path to
qtwidgets.qdocconf.

Task-number: QTBUG-77009
Change-Id: Iaa984cb8f860367cbb7aa95808d26fb69d7da349
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2019-07-12 06:19:07 +02:00
Qt Forward Merge Bot
29f889f199 Merge "Merge remote-tracking branch 'origin/5.13' into dev" 2019-07-12 01:03:48 +02:00
Qt Forward Merge Bot
fd2d9de51e Merge remote-tracking branch 'origin/5.13' into dev
Change-Id: Icaabf08f9af539ddf844d96bc9c3a2d09408ba8a
2019-07-12 01:00:42 +02:00
Volker Hilsheimer
ae972a1928 macOS: show QSystemTrayIcon message icons in notification popups
The icon provided was ignored, even though NSUserNotification provides
the option to specify a contentImage.

The message popping up will show that image on the right side of the
notification; it will not repace the application icon on the left side.

[ChangeLog][Widgets][QSystemTrayIcon] On macOS, show the icon passed
into showMessage in the notification popup

Change-Id: I8ecda7f893006e74a4f35f37ddc07063ebfe4e83
Fixes: QTBUG-76916
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2019-07-11 22:50:20 +02:00
Marc Mutz
135aa77021 Revert "QDistanceField: add missing copy assignment operator"
The reverts commit 0624c99ea3, which
fixed a GCC 9 -Wdeprecated-copy warning by adding the copy assignment
operator.

The 5.12 change 0e162315 fixed the same warning by removing the copy
ctor. The merge ef37ab99 removed the copy ctor, but kept the
assignment operator added by 0624c99e, bringing the original warning
back, but with the roles of copy ctor and assignment operator
reversed.

One has to give.

Change-Id: Ib32841df94a5ff80402a68b5fe776eb82e94136f
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-07-11 22:07:38 +02:00
Marc Mutz
987dde2965 Optimize and fix handling of QtMessageHandlers
A function may almost always have static storage duration, but that
does not necessarily mean that we can store and load pointers to them
without memory ordering. Play it safe and use store-release and
load-acquire for them (which combines to ordered for the fetchAndSet
call in qInstall*Handler(), as we don't know what the caller will do
with the returned function pointer).

Also change the initial value of the atomic pointer to nullptr.
Nullptr already signified the default handler in qInstall*Handler(),
so the API doesn't change. But by using nullptr to mean default, we
place these variables in the BSS segment instead of TEXT, save dynamic
init, or at least a relocation, and we dodge the smelly comparison of
function pointers, using comparison against nullptr instead.

Also, as a drive-by, put the call to ungrabMessageHandler() in a
scope-guard. Both the message handler, as well as the Qt code calling
it (toLocal8Bit()!), may throw, and that would stop all further
logging. In Qt 5.9, we can't use qScopeGuard(), yet, so use a local
struct calling ungrabMessageHandler() in its dtor.

The code still has one problem: When a logging action is underway, and
another thread exchanges the message handler, we might still execute
code in the old handler. This is probably not a problem in practice,
since no-one will use a dynamically-compiled function for logging
(right? :), but should probably be documented or fixed. This patch
does not address this issue, though.

Change-Id: I21aa907288b9c8c6646787b4001002d145b114a5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
(cherry picked from commit cd401b74a1)
(cherry picked from commit ea16c860bd75a35134ebb1d4f3be5db58f4a4e21)
2019-07-11 20:05:19 +00:00
Friedemann Kleint
54684f10e9 QSaveFile: Fix changing the file name after hitting on readonly file
The call to QFileDevice::unsetError() in QSaveFile::open() does
not clear QSaveFilePrivate::writeError. Clear it in addition.

Fixes: QTBUG-77007
Change-Id: I5e5009750f1726d1c74c1b4eb1c33f3a5393fe4f
Reviewed-by: David Faure <david.faure@kdab.com>
2019-07-11 22:00:10 +02:00
Thiago Macieira
d01693733f QDirIterator: don't require NFD normalization on Darwin for validity
HFS+ filesystems do enforce NFD normalization, so the test worked for
those filesystems. But on APFS, the filesystem is normalization-
insensitive but preserves it, so our transformation caused valid files
to be rejected.

This commit also optimizes the solution for all systems too. Instead of
converting from 8-bit to UTF-16 then back to 8-bit (allocating memory in
both steps), we only convert to UTF-16. And if we detect the locale is
UTF-8, then we use the further optimized QUtf8::isValidUtf8 function
that doesn't allocate any memory at all (ditto for US-ASCII, the case of
someone running with LANG=C).

Fixes: QTBUG-76522
Change-Id: Ief874765cd7b43798de3fffd15aa0d81620ad317
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-07-11 11:46:59 -07:00
André de la Rocha
786c588171 Windows QPA: Fix handling of mouse messages synthesized by the OS
The old handler only marked mouse events associated with mouse messages
synthesized by the OS with Qt::MouseEventSynthesizedBySystem when these
messages resulted from touch screen, not tablet input. Quick seems to
depend on this behavior.

Fixes: QTBUG-76617
Change-Id: Ib863d73ae9325f9a19d8a175817fef4e82f7df0b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-07-11 20:03:01 +02:00
Kai Koehne
3f8e754f07 CMake: Properly escape '.lib' in regex
In a CMake regex, you need two backslashes to escape a character. The
.in file therefore needs four backslashes ...

This amends ba4fdd99ff

Fixes:  QTBUG-76698
Change-Id: Ic757354ba596bf020c3ee5e90ee6d2d0fe3ba352
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-07-11 14:13:19 +00:00
Friedemann Kleint
6aa6623437 QTestLib: Fix class declarations/structure
- Remove virtual from functions declared as override
- Use " = default" for trivial constructors/destructors
- Remove all special functions from QTestLog

Apply Fixits by Qt Creator with some amendments.

Task-number: QTBUG-69413
Change-Id: I812b8116e5b4c927e4e5cee44e63bc705385d866
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2019-07-11 14:42:04 +02:00
Friedemann Kleint
225dd568af QTestLib: Introduce nullptr
Apply Fixits by Qt Creator with some amendments.

Task-number: QTBUG-69413
Change-Id: I620e40a277dc2b20b0ec26fc32577e66b0456bb3
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2019-07-11 14:41:50 +02:00
Friedemann Kleint
2d8d738657 QTestLib: Use member initialization
Apply Fixits by Qt Creator with some amendments.

Task-number: QTBUG-69413
Change-Id: Iba0834dc89cbfc215acc5873f31fa6eeed74177d
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2019-07-11 14:40:29 +02:00
Robert Loehning
3bee5a470a Fix typos in readme
Change-Id: Ifecb1bac475512241de9bcf195955409bb3adaff
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2019-07-11 14:17:08 +02:00
Kai Koehne
de8bd9ec6b Fix build with -no-feature-printer
Skip printsupport subdirectory if printer feature is disabled. Also
removed android-embedded condition for the plugin: Such a
configuration should just disable the printer feature.

Fixes: QTBUG-76941
Change-Id: Ifca7d2311a575c1589ad6a87a775bd016591ee2c
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2019-07-11 13:58:36 +02:00
Volker Hilsheimer
cc32226e64 Windows: handle errors correctly when connecting to unreachable host
The previous code handled only some error codes, in a very inefficient
way, for some code paths. This change standardizes error handling using
a helper function that maps winsock WSAE* codes to Qt error codes.

The test for connecting to unreachable hosts or ports is now more
generic, and enabled on Windows, where it passes in local tests,
but dependency on network configuration still makes it fragile,
so ignoring some failures without completely skipping the test.

[ChangeLog][Network][Windows] Correctly emit errors when trying to
reach unreachable hosts or services

Change-Id: Icaca3e6fef88621d683f6d6fa3016212847de4ea
Fixes: QTBUG-42567
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-07-11 10:46:23 +02:00
Felix Barz
36a15a87de syncqt: Fix module header install target creation
Modified a regular expression in syncqt.pl so that the special case of
a class beginning with another class does not lead to the exclusion of
the first one. This affects the generation of the install target for
generated class headers of Qt modules. Now the expression verifies the
class names are not identical.

Fixes: QTBUG-71323
Change-Id: I210b4d4c3ed64cf189594b95b10aa0e8495a19d2
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2019-07-11 09:50:18 +02:00
Tasuku Suzuki
fc15cdb4d0 return value in QOrderedMutexLocker::relock when thread is disabled
Change-Id: Ic96e777491cc8d304be056a3476a4de4c4700a0f
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-11 12:56:56 +09:00
Tasuku Suzuki
f6d815922d Fix build without feature.temporaryfile
Change-Id: I096b6a7d9cc8e17165e07657f6647a14baafefa5
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-11 01:48:59 +09:00
Edward Welbourne
a9aa206b7b Move text-related code out of corelib/tools/ to corelib/text/
This includes byte array, string, char, unicode, locale, collation and
regular expressions.

Change-Id: I8b125fa52c8c513eb57a0f1298b91910e5a0d786
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-07-10 17:05:30 +02:00
Qt Forward Merge Bot
85d3061c1c Merge "Merge remote-tracking branch 'origin/5.13' into dev" 2019-07-10 17:01:22 +02:00
Tasuku Suzuki
ca6a037d95 Fix testlib build without features.properties
Change-Id: I3ca7f8cdb59a9a1e61d2702e92cd5e2d1420ac84
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Jason McDonald <macadder1@gmail.com>
2019-07-10 22:20:41 +09:00