Commit Graph

49025 Commits

Author SHA1 Message Date
Volker Hilsheimer
8379de41f6 Member-initialize QOpenGLWidgetPrivate
Fix warning about requestedFormat not being initialized in sequence.

Change-Id: I7b948cb356b65ea2953424a700eb1a70cd1802f9
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2020-11-09 13:49:56 +01:00
Topi Reinio
696114494c Doc: List missing country names in QLocale::Country
And drop the use of 'please' when documenting replacements for obsolete
values.

Change-Id: I1c5697023794f2935755d538fad602fe78ba8501
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-09 13:39:38 +01:00
Volker Hilsheimer
3c3c5778e2 Doc: fix \inmodule for classes moved to QtGui
Change-Id: If7a42dde8c728356e0e5646743a1425b08fccbcb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2020-11-09 09:57:03 +01:00
Volker Hilsheimer
1628e79a77 Fix QAnyStringView comparison documentation
qdoc's clang knows about spaceship operator, but we still need to
document the regular ones.

Also add missing return types.

Change-Id: If382ac2f51a49c9adbe4a99025403a3e8332fabd
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-09 07:21:34 +01:00
Volker Hilsheimer
32e96667be Fix broken link in QWidget
\l expects the link target first, then link text second

Change-Id: I4d8638c2c441c6d2949b1f011422c191df3ff619
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2020-11-09 07:21:11 +01:00
Morten Johan Sørvig
46a552583f Teach QPixmapIconEngine how to handle @Nx pixmaps
Bring QPixmapIconEngine on par with QIconLoaderEngine
when it comes to @Nx pixmap handling: Make the scale
factor a test parameter during icon lookup.

This allows storing e.g 16x16@1, 16x16@2, 16x16@3 versions
of a pixmap in the icon, and then having QIcon select
the correct one based on the target devicePixelRatio.

Extend the qiconhighdpi test to also cover QPixmapIconEngine,
via the addPixmap() API.

The corner cases of pixmap lookup can be much complicated.
QIconLoaderEngine and QPixmapIconEngine should ideally
have identical behavior in order to avoid surprises.

Change-Id: I17552cc61755bff9553c4a462e3983ac6759c13b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2020-11-08 19:49:53 +01:00
Andreas Buhr
e6cba05b66 QLocale: improve speed of 'applyIntegerFormatting()'
This patch reduced the runtime of "QString::number(12345678)"
from 119ns to 84ns in one measurement. It removes one copy of a
QString into a local lambda function, it adds a std::move on
return, removing another QString instantiation and it removes
the usage of StringBuilder on return, which created another QString.

Task-number: QTBUG-87330
Change-Id: Ia37e314353c354ae04402cd482d0f7aeabbfc0cb
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2020-11-08 15:53:36 +01:00
Andreas Buhr
4c5c4c6d1c Fix static assert in Markdown parser
A static assert was misstated. The equality operator has precedence
over the bitwise or operator, the static assert was thus not checking
what it was intended to check. Fixed by this patch.

Change-Id: If21faa617dca1d1786fc6bfaf0b87423e0d35e4e
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-08 14:15:35 +01:00
Tor Arne Vestbø
a32ae53b88 cmake: Add function to get a target property, with empty string as fallback
Change-Id: Ic39fefb91e9ca0f36c815c969ff1072767a9ab16
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-08 13:14:30 +01:00
Kai Koehne
504647a28f CMake: Update documentation of CMake commands for Qt 6 for DBus
Change-Id: Iec86b42a0a1b52ea4688226f3c71fc2bfc6d48ac
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-08 14:14:23 +02:00
Alexey Edelev
c7d1874cd1 CMake: Expose resource source files to IDEs
Add fake targets for .qml/.js and other files added using
qt6_add_resources

Task-number: QTBUG-87642
Change-Id: I690b223711afe96ea7fdb4cf11b8e3317ed9bbe6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-08 12:13:59 +00:00
Edward Welbourne
b867daf6fa Update public suffix list header to latest version
The former *.platform.sh entry has been replaced by more specific
entries, replacing the wildcard with only selected second levels.

Task-number: QTBUG-87925
Change-Id: Ie4ba7c66ba9aa40eafe23f02faa12f19d791cff2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 13:02:30 +01:00
Edward Welbourne
0ebda39e06 Rename qurltlds-related files to match the header's move
The header is now in src/network/kernel/ rather than src/corelib/io/,
but the qt_attribution.json got left behind and the update program was
still in a sub-dir of util/corelib/. Renamed the latter to
util/publicSuffix/ (second-layer sub-directory was overkill, util/
isn't crowded and it was the only thing in util/corelib/; and there
was no util/network/).  This is a follow-up to
commit 4f076db3d2

Change-Id: I51c2c7892752ddc47390966044eb5650dfdfa9c2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 13:02:23 +01:00
Edward Welbourne
a74f534864 Use the right UI language lookup in macOS backend for QSystemLocale
Use CFLocaleCopyPreferredLanguages() instead of a home-grown call to a
low-level API. Brought to light by QTBUG-87858.

Change-Id: Ica22c446e01930da65d34c8851e3e67c9d020d8b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2020-11-08 13:01:55 +01:00
Edward Welbourne
8693d473e5 Rework QLocale's likely sub-tag addition
Instead of looking up each candidate pattern in a separte O(log(n))
search, exploit the fact that the array is in the right order to put
each candidate we try after the ones we'd have preferred over it.

At the same time, add und_script_region and und_region searches, which
aren't mentioned in the spec's algorithm but are clearly meant to be
searched (the spec's examples include some). Also, document what's
going on - because it's a bit complicated !

Change-Id: Id88ced335b0d2dfd18fb59c9a3dc75571f2a44ef
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:01:38 +01:00
Edward Welbourne
a9e4bf7eef Implement binary search in QLocale's likely sub-tag lookup
Follow through on a comment from 2012: sort the likely subtag array
(in the CLDR update script) and use bsearch to find entries in it.

This simplifies QLocaleXmlReader.likelyMap() slightly, moving the
detection of last entry to LocaleDataWriter.likelySubtags(), but
requires collecting all likely sub-tag mapping pairs (rather than just
passing them through from read to write via generators) in order to
sort them.

Change-Id: Ieb6875ccde1ddbd475ae68c0766a666ec32b7005
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:01:33 +01:00
Edward Welbourne
246ba8ca61 Update CLDR to v38
Fresh on the heels of our update to v37, they've released a new version.
No new languages to complicate life, fortunately.

Updated license (year range) and attribution. One test also needed an
update: Catalan's long time format now parenthesizes the zone.

Task-number: QTBUG-87925
Pick-to: 5.15
Change-Id: I54fb9b7f084b5cd019c983c1e3862dc03865a272
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:01:29 +01:00
Edward Welbourne
4ab6358039 Reorder locale enums alphabetically
Binary-incompatible change: change the numeric values of QLocale's
Language, Script and Country enums, as encouraged by a comment in the
generator script enumdata.py and clarify documentation around that.

In the process (since I was changing almost every line anyway),
convert the dictionary values from (mutable) lists of length two to
tuples, since they are (and should be) immutable data.

Change-Id: I26222bce45b9f5074b1d81ed70015a75ac34adcd
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:01:18 +01:00
Edward Welbourne
73ceb71576 Use newer names for various languages, territories and scripts
Our enumdata.py namings of countries had fallen somewhat out of sync
with CLDR's names. In the process, support including hyphenation in
the unsquashed name, along with spacing. Distinguish, in comments,
between older renamings and those first seen in Qt6.

Change-Id: I91ec444bf35222ab6a9332e389ace19cca0e4fdf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 13:01:12 +01:00
Edward Welbourne
ed853a66f8 Simplify QLocaleXmlWriter::enumData()
Move the repeated List suffix to the __enumTable() helper, where half
the parameter's uses were having to snip it off anyway.

Change-Id: Ia396e87e59ceeb81fc4b0890a86934dc67da10cb
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
2020-11-08 13:01:06 +01:00
Edward Welbourne
b83b990659 Replace QLocalePriave::create() with a plain constructor
Be up front about using new in all the places where it's created.
Made one of the global statics into a function-local static.
Eliminated a static made redundant by its const sibling.
Made two members const now that they can be.

Change-Id: I46532b3c1e0e62d1f8c84f55494f70cff09d4404
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 13:00:46 +01:00
Edward Welbourne
e330a9bb44 Replace fallbackUiLocaleData() with fallbackUiLocaleIndex()
This means always initializing globalLocaleData from an entry in the
locale_data array, where in principle the fallbackUiLocale() could be
the system locale, which isn't held in the array. However, no actual
implementation of fallbackUiLocale() uses the system locale (nor is it
clear this would work if one did).

Change-Id: Ie1c5ef3e8a97f21e0d82fa2dfb3cf3eb9e4c8840
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-11-08 13:00:39 +01:00
Edward Welbourne
902a5a1ff4 Rename QLocalePrivate's m_data_offset to m_index
Change-Id: I1d27e6e57893c2f96df40746e1280fc8428e9ec1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
2020-11-08 13:00:31 +01:00
Edward Welbourne
cc33b977ff QLocale: Compare to &globalLocaleData instead of systemData()
Calling systemData() locks a mutex but the tests against its return
are just testing whether some m_data we're looking at is the
&globalLocaleData it's returning; any other m_data points into the
locale_data global array. So bypass the expensive mutex for these
tests and just compare against the pointer systemData() would be
returning.

Thanks to Andreas Buhr <andreas.buhr@qt.io> for the analysis that
showed the need for this.

Task-number: QTBUG-87330
Change-Id: Ib06233773511dc9d532cb4658319b6d589d17b56
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:00:24 +01:00
Edward Welbourne
7d81f21d48 Always pass index when creating a QLocalePrivate
Previously, two calls using the default locale (which has an index in
the locale_data array when it isn't the system locale) neglected to
pass the index and the call for the system locale had no idnex, where
it should really set the index appropriate to its language, script and
country, so that we get appropriate calendar data to go with the
system locale. One other place that handled the default locale also
neglected to revise the index it was using.

Change-Id: I4cc52e2d085a99e61236c91c0ae873b3bde5f11d
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 13:00:17 +01:00
Edward Welbourne
297cbd506f QLocale: use uint less
Various uses of uint were simply redundant, now that Language, Script
and Country are ushort-based. Others should in any case have been
quint16 or char32_t.

Change-Id: Id0d0dc2558e1724907907cde56059f70972e824a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:00:09 +01:00
Edward Welbourne
098f43fdd2 Use QLocaleId in place of language, script, country triples
Pass a single argument in place of three; and (prepare to) replace
QLocalePrivate::getLangAndCountry(), taking three out parameters, with
QLocaleId::fromName(). Removal of getLangAndCountry() must wait for
removal of linguist's use of it in qttools, which has to wait for this
change to land in qtbase. In the process, change findLocaleIndex()'s
return to int.

Change-Id: I9f5c44c41f2dd1598c53ed5ccb0abddc6b17d21f
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2020-11-08 13:00:01 +01:00
Edward Welbourne
38b6cf490d Rework finding of locale data to be index-based
Instead of returning a pointer (from which we then have to infer an
index for use in calendar data access), compute the index as primary
and infer the data pointer from it. Also refer to the index as such,
rather than as an offset.

Comments advocating this wanted to dispense with the pointer entirely;
that's not an option, however, due to the system locale having its
data in a separate object, outside the array that contains all the
other locales' data.

Change-Id: I1c60e688229394003e61372dbfc6cfb11086eafa
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 12:59:49 +01:00
Andreas Buhr
98f4c97768 Correct processEvents documentation
The documentation of processEvents states that it processes all
pending events. However, this is not true for the glib backend
and probably was not true for at least a decade.
QEventDispatcherGlib::processEvents(ProcessEventsFlags)
calls "g_main_context_iteration" which is documented
to only process events of highest priority:
https://developer.gnome.org/glib/2.66/glib-The-Main-Event-Loop.html#g-main-context-iteration

Fixes: QTBUG-87307
Task-number: QTBUG-84291
Pick-to: 5.15
Change-Id: I82c6f9dba865bb07f981ad648a128316749682ca
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 12:07:24 +01:00
Volker Hilsheimer
b14b1c99f8 Rename QRangeCollection to QPageRanges, make it a proper value type
The type is specific about printing, so give it a name in line with
QPageLayout and QPageSize.

As per API review comment, it's not clear why this type should not be a
regular, copyable and movable value type. It stores a list of intervals.
Give it value-type semantics, as an implicitly shared class.

Convert the parse method into a static factory function.

Add a Range type and use it instead of the semantic-free QPair.
Move QPrinter getter into QPagedPainteDevice, make it return a copy
rather than a pointer, and add a setter.

Extend test case to cover all members and more merge cases. Fix bugs
found that way.

Fixes: QTBUG-88113
Change-Id: If17ea4d410d49f16b097e88b7979db5d72add820
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-08 11:49:54 +01:00
Edward Welbourne
8bf36025f5 Add some inline methods to make code more readable
Give QLocaleId matchesAny() and isValid() checks and some acceptance
tests for their use as filters. Give QLocaleData a QLocaleId id().
A few messy pieces of code get easier to read.

In the process, greatly simplify a do-while loop (sacrificing some
pretest-before-loop optimizations - benchmarking shows they made
negligible difference) and change a while loop to match its form,
since it was doing essentially the same iteration and (thus) its
condition was guaranteed true on the first iteration.

Change-Id: I36b1a6ca8a3cf350b3f3abbe75b177e5a7637cd8
Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-11-08 03:14:11 +01:00
Edward Welbourne
d11bf5fc24 Check our enumdata.py tables are consistent with CLDR
Compare the code->name mappings we're using to the ones CLDR's
common/main/en.xml provides; report discrepancies. Tolerate tags
missing from en.xml if they're known to the locale-inheritance
machinery.

Change-Id: Ibe96c18bf55984a35de3b3644f3586a9f30720b2
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
2020-11-08 03:14:00 +01:00
Giuseppe D'Angelo
dcbc8f16d0 Be explicit in a uint->QChar conversion
And check that the result fits.

Change-Id: Iaee1085315559bdffea9400b94b29869621ab7ff
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 03:13:31 +01:00
Giuseppe D'Angelo
d0a4084cbf QSharedMemory: do not abuse QChar in a test
The set() function sets a given byte in shared memory. Thus,
just take a char, not a QChar.

Change-Id: I6f3d148eb730573070832ddce6f63363408790cf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-08 02:13:22 +00:00
Alexey Edelev
2433e5804c CMake: Locate zstd using CONFIG
Trying to locate zstd package configuration prior to use pkg-config.

Define explicit IMPORTED_LOCATION_DEBUG and IMPORTED_LOCATION_RELEASE
in case of pkg-config usage.

Fixes: QTBUG-88091
Change-Id: I3cb86a66fad4e7b78b3d2fcff061508fc25e25a7
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-08 03:13:13 +01:00
Alexey Edelev
a66e5a3eca CMake: Add PCRE2 library selection depend on debug version availability
Use select_library_configurations to select applicable libraries
set for PCRE2.

Fixes: QTBUG-88092
Change-Id: I11e669a0142d53a3c344c86bd1d8eb797df4ba97
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-08 03:13:03 +01:00
Lu YaNing
ebf753d0ee Fix qstylesheetstyle clip border error
The left border path clip error when border size is odd.
That because borderClip calc path with border with divide 2.
It should be 2.0 that make result to accurately real number.

Pick-to: 5.15
Change-Id: I8c6f358afa4f3c8c9e5b263707ee145f6e5491c0
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-08 10:12:17 +08:00
Volker Hilsheimer
e48655d6f3 Fix typos in QtConcurrent documentation
Correct misplaced r-value references.

Change-Id: I3aa641a4e055b2f907bd5c05cfccf2933c74d5bc
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-11-08 03:12:06 +01:00
Volker Hilsheimer
c5a51926d6 Revert "Refine {QString, QBA}::reallocData() logic"
This reverts commit 504972f838.

Introduced realloc failures in qdoc.

Task-number: QTBUG-88258
Change-Id: I953e8d3933085022c75068af357ec9a44ab7e984
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2020-11-08 03:11:55 +01:00
Cristian Adam
0b0118ef28 CMake Build: Fix CMake configure with -DFEATURE_schannel=ON
When -DFEATURE_schannel=ON, -DFEATURE_ssl=ON, and -DFEATURE_openssl=OFF
cmake configuration would fail.

Fixes: QTBUG-88126
Change-Id: I7325a6c6bc4b9ff448893c7f05b7f46c34eefc1e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-11-07 19:33:37 +01:00
Alexandru Croitor
2db41fefa0 CMake: Allow using a custom target for qt_internal_add_docs
Some repos (like qtimageformats) might not have Qt modules, but they
still need a target to pass to qt_internal_add_docs().

Allow passing custom targets to qt_internal_add_docs() without trying
to generate bogus include paths.

Change-Id: I12191e5b16c082e62e40c96d0eb4d6c0256e7ea4
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-07 19:33:37 +01:00
Alexandru Croitor
36c864729a CMake: Fix iOS platform plugin not being a default plugin
It used to be a default plugin always due to a bug in the default
plugin logic, but after the fix in
1b4ea4a1d8
it stopped being the default one. Fix it by checking for the
QT_QPA_DEFAULT_PLATFORM variable.

Task-number: QTBUG-88201
Change-Id: I39caacf90ae7c6f67d2a89472d99346d7f811840
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-07 19:33:37 +01:00
Alexandru Croitor
d38b29bfa6 CMake: Private module pri files should have internal_module
Change-Id: I35b4111e4044ae6283eb8175173453db9001c71b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-11-07 19:33:37 +01:00
Kai Koehne
ea0f81a6b2 configure: Fix call without options
Previously this would result in config.opt file not being written.

Change-Id: I9ce349a7cda9f399fa789a569e46138ea90769f5
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-11-07 19:33:37 +01:00
Alexandru Croitor
f5b214130a tests: Blacklist tst_qwindow failing test on Windows
Amends b13bad3ab0

Task-number: QTBUG-35109
Task-number: QTBUG-88250
Change-Id: I0b37369bb7cfc58e6968ca20969725e2f4143200
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-07 19:33:37 +01:00
Giuseppe D'Angelo
6702614c97 QStringView test: avoid narrowing
Use '\0' (char) instead of 0 (int).

Change-Id: I866d08e7b07ae555fcf0244a8614e3e04a0bc567
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2020-11-07 19:33:36 +01:00
Allan Sandfeld Jensen
86702fa29c Protect QImage colorspace transform on shutdown
Adding a check here similar to fixups in other threaded qimage routines.

Pick-to: 5.15
Change-Id: If7bf7aa0ef78cda15171c9038f41b281fb267dae
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2020-11-07 16:05:30 +01:00
Aleksei Nikiforov
b5feb28d63 xcb: ensure that available glx version is greater than requested one or equal to it
Otherwise xcb plugin may report that it's supported
and later it'd be unable to create opengl context
when requested due to too low xcb protocol version available,
and thus some important xcb functions missing.

Without such change when Qt application is running under
x2go it exits with fatal error due to mismatch in
requested and supported glx protocol versions.
Qt requests glx protocol version 1.4, while x2go currently
reports that it support glx protocol but only version 1.2,
but Qt uses functions such as glXChooseFBConfig and
glXGetVisualFromFBConfig which are available only starting with
glx protocol version 1.3 according to glx documentation.

With this change, when Qt application is running under x2go,
xcb plugin reports that it's not supported and egl plugin
is used instead. And egl plugin successfully allows to work
with opengl, and thus Qt application is running normally.

Pick-to: 5.15
Change-Id: I5c0fb10bd328da68054bfca8e8efde1144789566
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2020-11-07 14:32:43 +03:00
Shawn Rutledge
f5c7799f59 Support the markdown underline extension
MarkdownDialectGitHub now includes this feature, so *emph* is italicized
and _emph_ is underlined. This is a better fit for QTextDocument capabilities;
until now, _underlined_ markdown could be read, but would be rendered with
italics, because in CommonMark, *emphasis* and _emphasis_ are the same.
But QTextMarkdownWriter already writes underlining and italics distinctly
in this way.

[ChangeLog][QtGui][Text] By default (with MarkdownDialectGitHub), markdown
_underline_ and *italic* text styles are now distinct.

Fixes: QTBUG-84429
Change-Id: Ifc6defa4852abe831949baa4ce28bae5f1a82265
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2020-11-07 09:35:11 +01:00
Karsten Heimrich
2106a625e8 Generate QUtf8StringView header file from qutf8stringview.h
Change-Id: I82fea74f3162b75ab16a06f81c41559434716993
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
2020-11-07 08:35:11 +00:00