Commit Graph

40946 Commits

Author SHA1 Message Date
Morten Johan Sørvig
dd9da0441b Compute logical DPI on a per-screen basis
The logical DPI reported to applications is the platform screen
logical DPI divided by the platform screen scale factor.

Use the screen in question when calculating the DPI instead of
the values from the main screen.

QHighDpiScaling::logicalDpi now takes a QScreen pointer.

Done-with: Friedemann Kleint <Friedemann.Kleint@qt.io>
Task-number: QTBUG-53022
Change-Id: I0f62b5878c37e3488e9a8cc48aef183ff822d0c4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-08-23 03:40:14 +02:00
Friedemann Kleint
45f681e818 tst_QStyle: Remove unused baseline images (Windows Vista/macOS)
The test contained outdated baseline images for

1) Windows Vista: They were only used for OS version Vista
   and do not match any more.

2) macOS: They were apparently were not in use any more

Remove the testing and image comparison code.

Task-number: QTBUG-76493
Change-Id: I91cec5113db8d1845b43f97ad2987e63d9f86ac7
Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
2019-08-22 22:26:53 +02:00
Joerg Bornemann
f65cfadd04 Improve readability of commands in VS project files
The commands are separated by "if errorlevel 1 goto VCEnd" lines to
make sure we abort on the first failure. However, we also insert magic
comments starting with "Rem" for IncrediBuild. These do not need
error checking. Also, the last command does not need error checking.

The XML line ending entities are also unneeded. By using proper line
endings we ensure that commands appear on separate lines in Visual
Studio's property editor.

Change-Id: Ifbf7525281e892c820034fafc64b555fff3dc756
Reviewed-by: Miguel Costa <miguel.costa@qt.io>
2019-08-22 18:15:08 +02:00
Paul Olav Tvete
181e5382e7 eglfs/kms: Add drm atomic blend_op property handling
Add support for specifying the blend operation used when alpha-
blending KMS planes. Only available with atomic modesetting.
Set the environment variable QT_QPA_EGLFS_KMS_BLEND_OP to
the enum value of the 'blend_op' property.

Task-number: QTBUG-75659
Change-Id: If0ef5ba314b88adb530113b608d20fc9c027c5ec
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2019-08-22 15:38:08 +02:00
Timur Pocheptsov
8d302aea33 HTTP/2: use a non-default MAX_FRAME_SIZE
And send it in our 'SETTINGS' frame. Add an auto-test
for this and (as a bonus) - fix a bug accidentally
introduced by the previous change.

Task-number: QTBUG-77412
Change-Id: I4277ff47e8d8d3b6b8666fbcd7dc73c827f349c0
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-22 15:36:22 +02:00
Alex Trotsenko
d55712153a tst_NoQtEventLoop: destroy hidden windows
Otherwise, we get a warning:

QWARN  : tst_NoQtEventLoop::consumeSocketEvents() QWindowsContext::windowsProc: No Qt Window found for event 0x2a3 (WM_MOUSELEAVE), hwnd=0x0x9b80646.

in the event loop which is running by another test. So, add missing
'delete' call.

Change-Id: Ib9b24155bdd6e78062a5234c317c9f878906e413
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-08-22 16:34:40 +03:00
BogDan Vatra
9b14950ff6 Android: Update clang mkspecs
Follow Google's BuildSystemMaintainers doc to simplify (a lot) the clang support
It is needed to support future NDK releases painlessly.
Also remove old workarounds.

[ChangeLog][Android] Android depends on NDK r20+

Change-Id: Ib4c07fc71e0f5a264d804b0b3baa18ff79d07630
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-08-22 16:32:47 +03:00
Tor Arne Vestbø
16868bd6a2 widgets: Clean up and reorder QWidgetRepaintManager implementation
Group functions by related areas and order them roughly by their
flow in a normal app repaint cycle.

Change-Id: I7a963f612134b3fdbaf748e0432606825b8db64e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-22 12:10:13 +02:00
Marc Mutz
36cf237ea1 QWidget: two small fixes
- Use QPointer::data() instead of a C-style cast

- Remove an abuse of Q_UNLIKELY. Q_UNLIKELY is for error code. Using
  it for conditions that have a good chance of being true in normal
  operations just caused all the error handling code to be paged in
  needlessly.

Change-Id: I542a5b938b032ca84f2cf1f78fbc45049a12ad1a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-08-22 12:10:10 +02:00
Soroush Rabiei
2dee006216 Adapt QCalendarWidget and QDateTimeEdit to support choice of calendar
[ChangeLog][QtWidgets][QCalendarWidget] Allow choice of calendar, with
Gregorian remaining the default.

[ChangeLog][QtWidgets][QDateTimeEdit] Allow choice of calendar, with
Gregorian remaining the default.

Change-Id: Ia11dd895032393543aee534b177324e643dcfb20
Done-with: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-22 12:10:06 +02:00
Soroush Rabiei
7026645712 Add support for the Islamic Civil calendar
This has its own locale data, extracted from CLDR. This data may
potentially be shared with other variants on the Islamic calendar, so
is handled by a separate base-class, QHijriCalendar, on which such
variants may base their implementations.

[ChangeLog][QtCore][QCalendar] Added support for the Islamic Civil
calendar, controlled by feature islamiccivilcalendar, with locale data
that can be shared with other implementations, controlled by feature
hijricalendar.

Fixes: QTBUG-56675
Change-Id: Idf32d3da7034baa8ec5e66ef847e59a8a2f31cbd
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-22 10:10:02 +00:00
Marc Mutz
a4d19654ed Simplify QBezier::split()
Now that result objects can't alias source ones anymore, the order of
writes no longer matters, and we can clean this function up. The
pattern of the algorithm now becomes visible. Before, it was just
drowing in noise.

Change-Id: I36c55ce09d6e13a994c7eda17d96cfe960e7fb95
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2019-08-22 11:41:31 +02:00
Giuseppe D'Angelo
a52a3b2aa4 Micro-optimize QAbstractItemModel::setItemData
If b becomes false, we won't call setData ever again.
Just bail out the loop early and return in that case.

Change-Id: I4b0ed7e21546d686bc3f785209a314a8bed08471
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2019-08-22 11:40:11 +02:00
Marc Mutz
d1b099c3e3 QBezier: replace out parameters by return-by-value in split()
At least QBezier itself is calling the old function with *this aliased
to one of the arguments. Consequently, the implementation looks rather
... shuffled, to avoid writing into members that it will read once
more later.

Fix by returning a std::pair<QBezier, QBezier> instead. This
simplifies the code that doesn't actually pass existing objects in,
and avoids aliasing problems cropping up under seemingly innocuous
reorderings of statements in the implementation going forward.

While I'm usually vehemently against use std::pair or std::tuple in
APIs, preferring simple structs with aptly-named members instead, this
is one case where the .first and .second actually fit, and pair allows
us to use std::tie, which was handy in qbezier.cpp.

This patch preserves the body of the function as much as possible. A
follow-up patch will clean it up.

Change-Id: I017dfee4a0e69a2e171ce21b89ba04654772c33d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2019-08-22 09:39:07 +00:00
Marc Mutz
5b2dfbc649 Long live QSize(F)::grownBy/shrunkBy()
These functions tighten the integration of QMargins(F) with the rest
of the geometry classes by providing a way to apply margins to sizes
(and later, rects).

Apply them in a few obvious cases across QtWidgets.

[ChangeLog][QtCore][QSize/QSizeF] Added grownBy(QMargin(F))/shrunkBy(QMargin(F)).

Change-Id: I8a549436824cdb7fb6125a8cde89d5bf02826934
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2019-08-22 11:38:54 +02:00
Jan Arve Sæther
529b271520 Don't excessively check all output files for failures
This is really just an optimization, but I suspect the author of the code
assumed that the bitwise &= operator short-cicuits. (It doesn't). So this
patch should then fix the code to have the intended behavior.

We don't have to check for failures in the remaining output files once
we've found one. pullFiles() returns just a bool indicating if one of the
output files has a recorded fail, so checking the remaining output files
after the first found failure is just a waste (and ideally they should
contain the same failure (however, flaky tests might break this ideal)).

Drive-by fix.

Change-Id: I951e500a69198e7ed124be32199ac81bbddb9bf7
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2019-08-22 11:21:38 +02:00
Timur Pocheptsov
4300dccba5 Fix a broken build
QHttp2Configuration is using entities (read definitions) from http2,
which is only conditionally included in the *.pri file (requires http).
So as a result we had linker errors.

Fixes: QTBUG-77759
Change-Id: I8b33b0a4802a295f67edad03da3743b24f7ce514
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2019-08-22 11:21:34 +02:00
Joerg Bornemann
9db230efa9 Fix "conflicting targets" warning when generating VS projects
The VS project generator never calls the Win32MakefileGenerator code
that sets up DEST_TARGET which is used for checking for conflicting
DESTDIR/TARGET combinations on Windows. Replicate the setup in
VcprojGenerator::initProject().

This amends commit e75aed1a.

Change-Id: I4238eb2f57615095c372cee9ada9fc961cc36133
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-08-22 11:21:31 +02:00
Mårten Nordheim
6a2112c28c Remove use of QByteDataBuffer in QNetworkReplyHttpImpl
It's temporarily storing QByteArrays before we copy them directly to
QIODevice's internal buffer. We can save the extra work by just push
them directly into the buffer.

The signal compression is no longer useful performance-wise, but is
kept as it will throttle the amount of readyRead emissions the users has
to handle.

Reorder some of the operations as a result to make it more natural.

Change-Id: Ifc0481d56fec42545e95970125d883a5c68d647a
Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2019-08-22 11:21:28 +02:00
Volker Hilsheimer
d97009a9f1 Remove obsolete API after qtdeclarative migrated
This is a follow-up to commit b7d073e990,
which refactored memory allocation of QMetaCallEvent.

Change-Id: I363256c80ee941b545e6f9c659c65556fff5c907
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-08-22 11:21:24 +02:00
Christian Ehrlicher
62015adadd QFont: remove unused member QFontPrivate::screen
QFontPrivate::screen was not used anywhere so remove it.

Change-Id: Ie9381d08b59b93c4e7bcaad58ebf1b389aa0a2e6
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-08-22 11:21:21 +02:00
Ulf Hermann
c8c724a3ce Cbor: Add overloads for QStringView
Change-Id: I8d22d0741c4d3852b438b12099f81ed87244871d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-08-22 11:21:17 +02:00
Tor Arne Vestbø
a8cc4cea92 widgets: Merge QWidgetRepaintManager::begin/endPaint into callsite
Change-Id: Iff5f78dcc8124bcecf53d42d920e74467937412a
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-22 09:44:53 +02:00
Tor Arne Vestbø
a0484b8277 widgets: Rename QWidgetRepaintManager::doSync to paintAndFlush
Change-Id: Ie41bb76d33d59f70eb418f845defc212396d3915
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-22 09:44:42 +02:00
Tor Arne Vestbø
68cc2c2779 widgets: Don't rely on QWidget friending QWidgetRepaintManager
Change-Id: Id9fc28eb62103d38eaa51261f61a2294db85e0d6
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-22 09:44:20 +02:00
Tor Arne Vestbø
c937f80fe5 widgets: Simplify QWidgetRepaintManager::qt_flush
No longer static, so we can access the members directly instead of
passing them as arguments. Renamed to flush() while we're at it.
Otherwise no changes to the code, just moved the function.

Change-Id: Id491a8628c8cecf7cf3b33d3458e7427f5bcd22e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-22 09:44:08 +02:00
Tor Arne Vestbø
44fc2914be Goodbye showYellowThing
The code hasn't been working for at least 5 years, and is just making
the repaint manager more complex. We can always re-introduce the feature
at a later point.

Change-Id: Ib07c782c821f3e653f9452f6fbfe2f87effccc92
Fixes: QTBUG-36435
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-22 09:43:48 +02:00
Friedemann Kleint
b455a863a1 Add screen() accessor to QWidget
Base it on QWidgetPrivate::associatedScreen(), but make a larger
effort to find a screen in case the widget is not shown yet.

Rename QDesktopScreenWidget::screen() to something else to avoid
clashes.

Task-number: QTBUG-62094
Task-number: QTBUG-53022
Change-Id: I36ba5ef5f0645a4ac89da0b38a391f7057b2f49c
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2019-08-21 22:18:52 +02:00
Soroush Rabiei
e71bf9d5c7 Add support for the Jalali (Solar Hijri or Persian) calendar
This has its own locale data, extracted from CLDR.

[ChangeLog][QtCore][QCalendar] Added support for the Jalali (Persian
or Solar Hijri) calendar, controlled by feature jalalicalendar.

Fixes: QTBUG-58404
Change-Id: Id5c56a10db05a4fd612aafc01615273db81ec743
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-21 22:18:48 +02:00
Soroush Rabiei
3e771a8b09 Add support for Julian and Milankovic calendars
These share their locale data with the Gregorian calendar, making them
virtually free to add. Still leave them out of the boot-strap build,
though.

[ChangeLog][QtCore][QCalendar] Added support for Julian and Milankovic
calendars. These are enabled by default, except in bootstrap builds.

Change-Id: I585045ed9e78c1e959957f6772b3e144093b701c
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-21 22:18:45 +02:00
Alexandru Croitor
6743b174c0 CMake: Fix invalid setting of QT_PLUGIN_TYPES on interface libraries
It is forbidden to set upper case named properties on CMake
interface libraries which do not start with the "INTERFACE_"
prefix. Rename QT_PLUGIN_TYPES to INTERFACE_QT_PLUGIN_TYPES.

There does not seem to be any usage of the property, so it's just for
informational purposes, so it's a one line change.

Fixes: QTBUG-77754
Change-Id: I3621f2b6188c3c72c4c2446f93ba1e078b755f72
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
2019-08-21 22:18:42 +02:00
Friedemann Kleint
764f488c96 QTextDocumentFragment: Fix deprecation warning
Fix
text/qtextdocumentfragment.cpp: In member function 'bool QTextHtmlImporter::appendNodeText()':
text/qtextdocumentfragment.cpp:613:125: warning: 'constexpr QChar::QChar(char)' is deprecated: Use fromUtf8, QStringLiteral, or QLatin1String [-Wdeprecated-declarations]

Change-Id: I90b23fa949e5cd979f2955b523060c8b1752f893
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-08-21 09:50:10 +02:00
Timur Pocheptsov
4c6e549b25 QHttp2Configuration: remove setters/getter for indexing
Upon reading the Apple's documentation it would appear the indexing
is more complicated (they name the specific fields and which kind
of indexing must be applied to each). This requires a finer level
of configuration/control and probably a separate class (aka
QHpackConfiguration? ;). We'll provide it in future, if requested
by our users.

Fixes: QTBUG-77412
Change-Id: I6e9461b3966ed59c8b70873eab999a07a04eb289
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-21 06:21:58 +02:00
Timur Pocheptsov
fb462102b7 QHttp2Configuration - respect the value returned by huffmanCompressionEnabled()
And either compress or not.

Task-number: QTBUG-77412
Change-Id: I3b09385d2b3caf4f7de0455ad6e22c0f068c33a9
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-21 06:21:33 +02:00
Thiago Macieira
1b9274573e forkfd: move the FreeBSD system implementation to a separate file
Simplifies the code a bit and will be helpful when I add the Linux
equivalent.

Change-Id: Iec9c051acd73484c8d94fffd15b99879dc269db9
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2019-08-20 16:57:02 -07:00
Thiago Macieira
8784ab7ba8 forkfd: Add C11 and C++11 atomic support
For forkfd, this is extremely useful, since users can rely on proper
atomic API, not the old GCC API or the internal API that backs the C11 /
C++11 implementation itself.

This also caught one more mistaken use of seq_cst.

Change-Id: Iec9c051acd73484c8d94fffd15b9985fe545e8b5
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2019-08-20 16:56:55 -07:00
Thiago Macieira
5e74d0e80c forkfd: fix compilation in C mode without precompiled headers
Missing one "struct" and one #include <sys/wait.h> for
struct rusage.

Change-Id: Iec9c051acd73484c8d94fffd15b9a1274703afca
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2019-08-20 23:56:50 +00:00
Tor Arne Vestbø
ce73b4db62 Remove dead code from Qt 4 times
The benefit of keeping this code around was to inspire or inform
changes in the areas to take into account possibly missing features
in Qt 5, but at this point that benefit is questionable. We can
always use the history to learn about missing pieces if needed.

Change-Id: I87a02dc451e9027be9b97554427bf8a1c6b2c025
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2019-08-20 22:27:46 +00:00
Allan Sandfeld Jensen
2cddaf0071 Fix tst_bench_qimagereader
It couldn't find the test images if not build in sources.

Change-Id: Ieeb5a76694a37d05b3e9a4ed0154885040b0812f
Reviewed-by: Daniel Smith <Daniel.Smith@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2019-08-20 22:47:09 +02:00
Tor Arne Vestbø
4dab6184f5 widgets: Remove stale documentation of QWidgetRepaintManager::flush
Change-Id: I5c4df4a8694bc56014beaec34a81219d91332fec
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-20 21:09:15 +02:00
Tor Arne Vestbø
5085f8e211 widgets: Remove unused arguments from QWidgetRepaintManager::beginPaint
Change-Id: I3720d8ef31e623e514fc2e382192d3c4f99fb4ed
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-20 21:09:04 +02:00
Tor Arne Vestbø
e2a1fb9015 widgets: Remove unused function qt_dirtyRegion
Change-Id: I7e6dbc4fb777a2323d65b73164d8645d6efc95a4
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2019-08-20 21:08:48 +02:00
Tor Arne Vestbø
38e55a26a4 widgets: Remove dead members from BeginPaintInfo
The flags haven't been used since 2011 (6ce6b8a37) and is dead code.

Change-Id: Ic5c47b30326ff70534bbf1aa37b25bae666b6b96
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-08-20 21:08:32 +02:00
Joerg Bornemann
1d89748772 Fix .sln generation for sub-projects with same TARGET
Sub-projects in VS solutions must have unique project names. If there
are multiple projects with the same TARGET then QMAKE_PROJECT_NAME must
be set to different values.

The .sln generation code did not use QMAKE_PROJECT_NAME and produced
.sln files with equally named sub-projects.

Replace the 'orig_target' member of VcsolutionDepend with a
'projectName' member and use it when writing the .sln file and for the
misnamed "GUID map" that's supposed to have unique keys.

This commit amends 9e750d34 (qt/qt.git).

Fixes: QTBUG-77639
Change-Id: I81c64f8bc6baeb6d99e9d5808fb73dfd7aaaeeb8
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2019-08-20 20:28:18 +02:00
Joerg Bornemann
3b5f9678d7 Remove dead QMakeSourceFileInfo caching feature from QMake
Since its introduction in commit
65bb1a25419210e6097cad973fb847aa3719c09b (old internal history, 2005)
with the commit message "optimizations I've been sitting on here"
we're dragging along this dead code. It is time for removal.

Change-Id: Ic7902ebb8c402734974ad6651a1371d1e5bf93c5
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2019-08-20 20:27:52 +02:00
Morten Johan Sørvig
d46415c0af wasm: Add saveFileContent()
Saves a file by file download, where the user can choose
the file name and location using a file dialog.

Change-Id: I4d2ecc76fc33bb65fdf3d7ca3fcd9566c62547dd
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-08-20 19:34:53 +02:00
Sona Kurazyan
9f082b4e03 Clean up the docs of qevent.cpp
- Build the docs for deprecated APIs conditionally, based on
  deprecation version.

- Remove the docs of methods deprecated since 5.0.0, these methods
  are not compiled anymore.

Change-Id: I2c1b038ce125ca737944f4fc4a28e2f6852eaded
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2019-08-20 19:34:08 +02:00
Marc Mutz
f556505f63 QWidget: replace manual memory management with unique_ptr [6/N]: extra
Had to port a lot of caching temporaries, too. Decided to leave them as
crefs to unique_ptr to catch any mischief users may be doing with the
raw pointer instead (like deleting it).

Also fixed a use of 0 as nullptr (by standardizing on pointer-to-bool
conversion, as is done everywhere else in qwidget.cpp), and made one
impregnable if condition readable.

Change-Id: Ifdc240bf352c52de0bc3c186fa7a5f4cb2882dd0
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-20 17:36:04 +02:00
Allan Sandfeld Jensen
9e86fdb6e8 Support writing color space profile in JPEG
That way the image formats with color space supports all have both read
and write support.

Change-Id: Ib52ebd56192c4a8a0897a6afc7c4a26020319270
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2019-08-20 17:10:19 +02:00
Sona Kurazyan
aa6e0e3e30 Remove the usage of deprecated APIs from QSysInfo
Replaced:
 QSysInfo::macVersion() -> QOperatingSystemVersion::current()
 Q_MV_OSX(10, 13) -> QOperatingSystemVersion::MacOSHighSierra

Task-number: QTBUG-76491
Change-Id: Iae4f9c319ff16314fb04bbefaa48935a0f618007
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2019-08-20 15:09:11 +00:00