Commit Graph

38946 Commits

Author SHA1 Message Date
Edward Welbourne
43abe86e2f Update locale data to CLDR v35.1
The formatting of times in Norwegian has reverted to using dots in
place of colons, as it did before v31 (commit 82deb0ad1), so reverted
the tests to their state before that.

Change-Id: I8a09ce253731bb0f0f3caca117f06ad568940a81
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2019-05-07 09:29:51 +00:00
Edward Welbourne
b58cfb2f1f Update cldr2qlocalexml.py's claimed CLDR version support
It was up to date with v34 (and seems to cope with v35.1) but only
clained support for v29.

Change-Id: I686cae1977824a4deec4633f19604b91061fe78a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2019-05-07 09:29:36 +00:00
Edward Welbourne
8c8b4b8fde Correct and expand support for CLDR's date/time format strings
Our conversion from CLDR's format to our own was missing some things
it could support sensibly, and some it could do better than ignore or
treat as literal, while mis-handling the 'E'-based formats for day
names.  At least in CLDR v34 this doesn't actually make any difference
(on regenerating our locale data, the only change is the date of
generation).

Task-number: QTBUG-70516
Change-Id: I9d27b9bf24afd168c2f8a5258143d3d695bca0ad
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2019-05-07 09:29:18 +00:00
Matthias Doerfel
f6238e2d3b qmake: Distinguish local header files by directory and name
Information about header files is cached by qmake. The key is the
filename of the #include directive. For system includes (<stdio.h>) this
is unique, according to the search order in INCLUDE_PATH.

For local includes, given as "foo.h", there may be name collisions. Usually a
compiler first searches in the directory of the current file (stored in the
sourceDir variable), and only in case of a miss the INCLUDE_PATH is
considered.

The dependency generation now distinguishes local header files by their full
relative path. This is implemented by forcing the use of the full relative
path as key into the SourceFiles data structure if the flag try_local is set.

Change-Id: Ifd75325b53496824054595f7fc98d71bbd9d8aa6
Fixes: QTBUG-72383
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2019-05-07 08:41:09 +00:00
Jüri Valdmann
b5154b5254 Fix QTextEngine::shapeText casing of surrogate pairs
The high part was not copied to output.

Fixes: QTBUG-75559
Change-Id: I9350e52d256510f52b3fcc0015bf879d2c609532
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2019-05-07 07:50:33 +00:00
Shawn Rutledge
6afdbfdaaf Use "monospace" as fallback system FixedFont in KDE theme; logging
Also de-duplicate the "monospace" string in qgenericunixthemes.cpp,
and add tst_QFontDatabase::systemFixedFont() to verify that
QFontDatabase::systemFont(QFontDatabase::FixedFont) really returns
a monospace font across platforms.  Replace commented-out qDebug()s
with qt.text.font.match and qt.text.font.db logging categories to
troubleshoot when the test fails (among other uses).  Add qt.qpa.fonts
logging category to unix themes to show default system and fixed fonts
(font engines on other platforms are already using this category).

Fixes: QTBUG-54623
Change-Id: I2aa62b8c783d9ddb591a5e06e8df85c4af5bcb0c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-05-07 07:48:43 +00:00
Kai Koehne
c57520e491 Document how to use CMake on Qt Core, Qt GUI's central pages
Add documentation on how to use a module from CMake, alongside
the existing documentation about qmake. Separate generic info
from module-specific examples, to make it possible to use one
include file in all modules.

While at it, also remove the mentioning of the central include;
it is not something we should actively advocate anymore. Instead,
the documentation of every class gives the correct include to use.

Task-number: QTBUG-73058
Change-Id: I6b3c0e5ea218dd9c06a491c8fb799a7fcf42dd92
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2019-05-07 07:46:21 +00:00
BogDan Vatra
43763e2796 Android: Fix x86_64 linking
x86_64 libs are located in ANDROID_PLATFORM_ROOT_PATH/usr/lib64
not in ANDROID_PLATFORM_ROOT_PATH/usr/lib .

Fixes: QTBUG-47672
Change-Id: Ia1f74f7c2a30b276b95fd0e7dcf8370d739e3c41
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-05-06 06:42:23 +00:00
Mikhail Svetkin
a50b29d65b Fix dnd regression c427ba53aa
Qt starts drag-and-drop on a mouse button press event. Cococa in
this case won't send the matching release event, so we have to
synthesize it here.

Task-number: QTBUG-72417
Change-Id: I645b6a2733c1ea11ac4545cf3405f826af45fa47
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2019-05-05 16:43:31 +00:00
Joerg Bornemann
6288c12bb4 Resolve QMAKE_INCDIR_VULKAN on every qmake call
Do not store this variable locally, because
a) it might change if the SDK location changes
b) does not play well with Qt installer packages which would provide the
include path of the build machine.

To achieve this we introduce the (usual) magic value - for
QMAKE_EXPORT_INCDIR_VULKAN to denote "do not export this value".

Fixes: QTBUG-73796
Change-Id: Ied26ee12cbcdf7f5f6e1caef5d29dadf6309c5d6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2019-05-05 13:15:37 +00:00
Nick Shaforostov
5d76529580 fix crash when using ALDI usb-stick with broken filesystem
I was using a cheap usb-stick from ALDI supermarket with fat32,
and my application crashed because filesystem was empty.

Unrealistic scenario, but still just returning here false is better
than a crash

Change-Id: I8979d5a4e19ce57770ab03983e847b272ebf7019
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-05-05 09:15:25 +00:00
Nick Shaforostov
4d5fb551d6 fix compilation with various -no-feature-* options
Change-Id: Ic1975db497613e3efe50be4246c167efe10d8e31
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2019-05-05 09:14:48 +00:00
Allan Sandfeld Jensen
835c3e94f6 Only call addFontToDatabase once per family,style
We get a call to storeFont for each supported script-type of
a font, but we use the font signature to register all the supported
types at once, and can thus save ~3/4 calls to addFontToDatabase.

Change-Id: I9d06252fb7f805e7babac58d82fa412ec4e0e36a
Fixes: QTBUG-59360
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2019-05-03 19:22:59 +00:00
Massimo Callegari
ff447717a2 configure: skip Freetype/Fontconfig autodetection only on MSVC
In Windows there are package-based systems like MSYS2 that provide
pkg-config for packages lookup.
This change skips autodetection only for MSVC which doesn't
provide the aforementioned feature.

Task-number: QTBUG-57436
Change-Id: Iaed517e93031adbd2fd9dbf350764f76569b94ea
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2019-05-03 17:00:42 +00:00
Andy Shaw
8f24dbaf07 Android: Fix deleting of new lines when using backspace
With some keyboards (ASOP, SwiftKey) it was not deleting any new lines
when using backspace. So this ensures that it is correctly deleting at
these points. Tested with the Samsung, Gboard and SwiftKey keyboards.

Fixes: QTBUG-74824
Fixes: QTBUG-57798
Change-Id: Id2e4f96c18c3fec0e7f444b55dd3db2653625fd0
Done-with: Vova Mshanetskiy <vovams163@gmail.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
2019-05-03 06:58:02 +00:00
Christian Kamm
6c0ced4b7a HTTP2: Fix handling of GOAWAY frames
Previously there were two issues:
- A QNetworkReply could be aborted but be in NoError state.
  (GOAWAY frame with 0 as error)
- Streams in a connection would be aborted prematurely when a GOAWAY
  frame with a lastStreamId of 2^31-1 was received.

Fixes: QTBUG-73947
Change-Id: Iddee9385c1db3cc4bb80e07efac7220fff787bf3
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2019-05-03 03:57:05 +00:00
Andy Shaw
047633a945 Cocoa: Get the right zero digit for the locale
Change-Id: Ic23e541e1b12b3c94f8d191cb8fb0f76086b69a5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-05-02 17:48:39 +00:00
Giuseppe D'Angelo
513e29af1d QSharedPointer: fix docs for create()
In 5.12 only the variadic argument version is left (as all
supported compilers have variadic templates). Remove the docs
of the nullary overload, and fix the docs for the remaining
overload.

Change-Id: I54cc7ea71cc61ba1330a9ad92e4fa2ae7f749bac
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-05-02 16:18:43 +00:00
BogDan Vatra
595d816c58 Android: Copy extra libs in aux mode
Change-Id: Ibbdd6b9c23c094923bc60a8a013f3ac356444510
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-05-02 14:50:33 +00:00
Milian Wolff
75634c9a53 Reduce amount of tracepoints required for event tracking
Encode the consumed/filtered state in the _exit tracepoint and remove
the separate tracking of receiver event handling. Combined, this
reduces the size of the trace file.

Change-Id: Icb3cb2dd47798543905cea450046d6fad559a15b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-05-02 14:15:58 +00:00
Giuseppe D'Angelo
bfe8b506c7 Upgrade PCRE2 to 10.33
Adjust also the attribution file.

Change-Id: I27bdbcf07bdca51bb5ae169ca50dd63502f5468f
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2019-05-02 13:38:54 +00:00
Joerg Bornemann
d5071a4016 Fix prl replacements if libdir is in QMAKE_DEFAULT_LIBDIRS
QMAKE_PRL_LIBS contains absolute paths to libraries, e.g. libqtpcre2.a.
On "make install" the libdir is replaced with the installation target
libdir. If the libdir is in QMAKE_DEFAULT_LIBDIRS (e.g. /usr) then the
replacement was empty. That worked fine for include paths but not for
paths referencing files in that libdir:
/my/build/lib/qtbase/lib/libqtpcre2.a would become /libqtpcre2.a.

Add another replacement that takes care of file paths and inserts
$$[QT_INSTALL_LIBS].

Fixes: QTBUG-75460
Change-Id: I4e84478a50c24d4143ad5695493cad2992735cf2
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2019-05-02 13:04:22 +00:00
Paul Lemire
389dec3e7c Only generate temporaries when it makes sense
- Never for global inputs
- Otherwise only if the temporary is referenced more than once
  -> meaning it's actually caching the result of some operation

Tests updated accordingly.

Change-Id: Ic76615370d23dee3965ca6350d5257a8be5a3e22
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2019-05-02 12:47:05 +00:00
Alexander Volkov
ef3daddae1 Use QPlatformTheme::TouchDoubleTapDistance for touch events
... and update the cached values on theme change.

Modify tst_QWidget::touchEventSynthesizedMouseEvent()
to avoid unexpected double click detection.

Change-Id: I151c47e851ebba7550b1b09caca2781c28d7d3d9
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2019-05-01 20:29:16 +00:00
Vova Mshanetskiy
5f4b03659b Android: Fix positioning of text editor context menu
The old code in QtActivityDelegate.updateHandles() and
EditPopupMenu.setPosition() could use size of EditPopupMenu.m_view to
calculate position of context menu before that size was calculated
during an asynchronous layout pass. In particular m_view reports size
0x0 when context menu is opened for the first time after start of the
application. In this case the context menu was displayed on top of the
text editor instead of being displayed above it.

This patch fixes that problem by moving all positioning code from
QtActivityDelegate.updateHandles() to EditPopupMenu.setPosition() and
adding an OnLayoutChangeListener which calls setPosition() again each
time the size of m_view changes, including when it changes for the first
time from 0x0 to a real value.

Change-Id: I670fef811a4dcba5524f7520ea41a47978dd10f1
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2019-05-01 12:11:04 +00:00
Vova Mshanetskiy
a04629d9c2 Android: Fix positioning of selection handles in text editors
The old code used size of m_cursorView to calculate position of the
cursor handle popup. But since on Android layout process is
asynchronous, both width and height of m_cursorView was 0 upon first
call to setPosition(). This resulted in selection handles being
initially displayed at a wrong position for a fraction of second and
then quickly moving to the correct position. In some cases handles
stayed at the wrong position until touched by user.

This patch replaces use of m_cursorView's size with use of m_popup's
size. Width and height of m_popup may be used immediately because they
are explicitly assigned in initOverlay(). The size of m_popup should be
always equal to the would-be size of m_cursorView because of how it is
calculated.

Change-Id: I9868c9a5ce0103d8328b2478cf82feaceba7f404
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2019-05-01 12:10:50 +00:00
Volker Hilsheimer
78d0b6e975 Ignore failing test for free space on APFS
The file system appears to cache too aggressively, so if the reported
storage size doesn't change after flushing to disk, ignore the failure.

Change-Id: Iba7dce79591447fac296bfe92c2dc993d36d0c2a
Fixes: QTBUG-69868
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-04-30 10:58:13 +00:00
Joerg Bornemann
0e4326d717 Remove cruft from testProcessEOF.pro
TEMPLATE_PREFIX is gone since Qt 5.0.0.

Change-Id: I181962b942191187baf62f13d0abd17e7ebdcce1
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2019-04-30 10:51:02 +00:00
Milian Wolff
75c0c02641 Don't pass scope args to _exit trace points
When we trace a scope, then we pass the scope args to the _entry trace
point. There is no need to do that also for the _exit trace points, it
just blows up the trace data for no obvious gain. Any decent tracing
consumer can easily find the args for the _exit call by matching it to
its _entry call.

Note that this is standard practice in trace points, and also done like
this in the Linux Kernel trace points for example.

Change-Id: I273293b0c7e799767acc1960b50ab675fc765a36
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-04-30 07:42:19 +00:00
Milian Wolff
e5eaae100b Refactor QMetaObject::activate tracepoints
Use Q_TRACE_SCOPE and the corresponding naming scheme. Additionally,
don't change the behavior of the code when tracing is enabled, i.e.
continue to return early if possible.

Change-Id: I9ba9679869db1541a19bc832beede902224c52f2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-04-30 07:42:10 +00:00
Tony Sarajärvi
3308a81942 Extend blacklisting of setWindowState to cover RHELs
Task-number: QTBUG-68864
Change-Id: I7503877fbbe6109806d9fd087514588d2ac640c7
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2019-04-29 17:11:08 +00:00
Eirik Aavitsland
2e8005765d Update bundled libpng to version 1.6.37
The remaining diff to clean 1.6.37 is archived in the qtpatches.diff file.

[ChangeLog][Third-Party Code] libpng was updated to version 1.6.37

Change-Id: I589bff09beec1977be8c6ca2a60aadf05f337f38
Reviewed-by: Liang Qi <liang.qi@qt.io>
2019-04-29 12:43:11 +00:00
Miłosz Kosobucki
13f5e5c6b2 Improve QObject::moveToThread doc
Change mentions of parameter value being "zero" to nullptr.

Clarify that when nullptr is passed to moveToThread() event processing
is stopped because the object is no longer associated with any thread.

Also, reitarete this fact in the paragraph about processing of new
events.

There's an exception to the rule that QObjects cannot be "pulled" by
moveToThread that is buried in the implementation and not mentioned
in the doc. This information is worth noting explicitly.

Change-Id: I816ff737c48d8057b39e36b566079710aeb8e690
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2019-04-28 11:17:30 +00:00
Alvin Wong
c9002ab7ee Fix QOpenGLDebugLogger crash on ANGLE
The helper in QOpenGLDebugLogger did not account for the extra "KHR"
suffix in the function names and results in a crash when ANGLE is being
used. This commit fixes this issue.

Change-Id: I439d8bfc53b010be5410286b86c090aff171aaef
Fixes: QTBUG-62070
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2019-04-27 10:41:44 +00:00
Simeon Kuran
71a7f79bc1 Windows QPA: Fix blank Cursor on secondary display
CreateCursor only works with standard sizes (32, ...) depending on the
display hardware. No longer apply the scale factor for the blank cursor, because
it might lead to unsupported cursor sizes resulting in random pixels.

Change-Id: I48d84bd913d2dd8f62129126c9a41e58ee2cbcae
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2019-04-27 09:18:34 +00:00
Joerg Bornemann
bbfc95914f Fix determination of OpenGL include paths on macOS, take 3
The sysrootification of QMAKE_INCDIR_OPENGL on macOS must happen only
once. Commit 49ef3773 addressed this but stored the sysrootified
QMAKE_INCDIR_OPENGL in qt_lib_gui_private.pri. For installer packages,
these paths are the paths of the build machine and most likely wrong
on the user's machine.

This reverts commit 4949ef377349ba4dae840c2d5caa36e2d516707baa and
restores the sysrootification in sdk.prf. The original include paths
are assigned to QMAKE_EXPORT_INCDIR_OPENGL and stored as
QMAKE_INCDIR_OPENGL in qt_lib_gui_private.pri.

Fixes: QTBUG-75374
Task-number: QTBUG-73736
Change-Id: I4c0f65866d60660c632363dba3adc7ea2e344bfc
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2019-04-27 07:32:53 +00:00
Thiago Macieira
a3acf568d1 Make QFile::copy() less likely to create zero-sized
QFile::copy() didn't have the syncToDisk() call that QSaveFile::commit()
has. So add it.

[ChangeLog][QtCore][QFile] Made QFile::copy() issue a filesystem-
synchronization system call, which would make it less likely to result
in incomplete or corrupt files if the system reboots or uncleanly shuts
down soon after the function returns. New code is advised to use
QSaveFile instead, which also allows to display a progress report while
copying.

Fixes: QTBUG-75407
Change-Id: I95ecabe2f50e450c991afffd1598d09ec73f6482
Reviewed-by: Henrik Hartz <hhartz@gmail.com>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
2019-04-27 06:03:39 +00:00
Lars Knoll
b4cc294347 Fix page breaking with large images
Don't go into an infinite loop breaking pages, when an image is about
as large as the page. Correctly take top and bottom margins into account
when calculating whether the image could fit on one page.

Amends change 416b4cf685.

Fixes: QTBUG-73730
Change-Id: Id311ddf05510be3b1d131702f4e17025a9861e58
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2019-04-26 18:21:18 +00:00
Kai Koehne
78c84c6353 qdoc: Fix warnings about missing \inmodule command
Fix warnings

qtbase/src/corelib/io/qprocess.cpp:776: (qdoc) warning: Class CreateProcessArguments has no \inmodule command; using project name by default: QtCore
qtbase/src/corelib/serialization/qcborstream.cpp:1441: (qdoc) warning: Class StringResult has no \inmodule command; using project name by default: QtCore

Change-Id: I1c85ca32aff1f89f70898af7b11cfead96c80349
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2019-04-26 17:36:50 +00:00
Volker Hilsheimer
a8a05b00fc Document that QHostInfo does not guarantee to return all IP addresses
Using getaddrinfo, which implements RFC 6724, implies that addresses
that are not needed will be trimmed. In particular, IPv6 addresses are
often not returned.

Also move the implementation detail documentation down in the text, it's
a detail with little relevance for the usage of the class, but makes for
a good opener regarding this behavior.

Change-Id: I516a64f0b39a6a06621a63c1d5236544b7758049
Fixes: QTBUG-31865
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2019-04-25 22:24:08 +00:00
Timur Pocheptsov
913dd26c92 QMacStyle - set the proper appearance if needed
Otherwise, AppKit, while rendering 'detached' (not in any view hierarchy)
controls and cells  will use NSAppearance.currentAppearance, which is not
guaranteed to be the same as NSApplication.effectiveAppearance.

Task-number: QTBUG-74515
Change-Id: I82dcebf2230932ecfcbf33c422a3b7bd0aed61d7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2019-04-25 12:19:17 +00:00
BogDan Vatra
9ca81260e9 Android: Fix hang in runOnAndroidThreadSync and requestPermissionsSync
Keep spinning the main event loop if we can't acquire the semaphore,
this way the Android UI thread can post events on it.

Fixes: QTBUG-74076
Change-Id: Ia87e0535f94c67728176918ab928ff5ce8b00f8e
Reviewed-by: VaL Doroshchuk <valentyn.doroshchuk@qt.io>
2019-04-25 11:14:28 +00:00
Frederik Gladhorn
1269f9cd16 Linux Accessibility: Add missing roles: Terminal and Desktop
There is an effort to make KDE software accessible, which exposed the
missing roles. Check that they are complete with an assert.

Change-Id: Ibaff0a90e1cee316983569ecee7759a13212e3c3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
2019-04-25 10:02:37 +00:00
Martin Storsjö
65a33d73ea qmake: Always split QMAKE_DEFAULT_LIBDIRS using ; with clang on windows
When building in a unix style build system (i.e. msys), QMAKE_DIRLIST_SEP
is a colon, not a semicolon. Thus, always split the incoming string
(after the fixup regex) using semicolons on windows.

This matches the code for gcc, further up, which does:

    equals(QMAKE_HOST.os, Windows): \
        paths = $$split(line, ;)
    else: \
        paths = $$split(line, $$QMAKE_DIRLIST_SEP)

Change-Id: I6a0175f9d14ae9ca188553483b7868f0549c784a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2019-04-25 09:29:23 +00:00
BogDan Vatra
fc2e9ac7e0 Revert "androiddeployqt: Do not check for stdcpp-path in auxiliary mode"
stdcpp-path is needed to set the correct stdc++ library in libs.xml file.

This reverts commit 1366c4f046.

Change-Id: I79b398c5d97c1e98bf503ef7b95b2e9f0f18bc11
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-04-25 08:20:22 +00:00
Eirik Aavitsland
1d128ed1df Fix artifacts when reading certain 32 bit ico files
Images in an ico file contains transparency information stored as a 1
bit mask. However, when the depth is 32 bit, it means there is an
alpha channel present, and the mask should be ignored. The Qt ico
handler failed to do that. This has gone unnoticed, since the mask in
such images is typically set to all 0s, and so makes no difference to
the result. But ico files exist that contain junk mask data, so fix
the reader to ignore it properly.

Fixes: QTBUG-75214
Change-Id: I1b4456d71689ec783076a582f2fb215e7dc56e62
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2019-04-25 06:07:13 +00:00
Eirik Aavitsland
d6c3fa6e0c Fix aliased painting with non-uniform scaling
The full stroker does not produce good results for aliased lines
thinner than 1 pixel. Avoid it by making sure that such thin lines
are painted by the cosmetic stroker, even when they have
non-uniform transformation.

Fixes: QTBUG-73866
Change-Id: I7b5f0fa555903246e0c3fd92cd435cc8c0b15a24
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2019-04-25 06:07:00 +00:00
Eirik Aavitsland
8f8267f00b Avoid hanging on painting dashed lines with non-finite coordinates
The dash stroker did not check for inf/nan coordinates.

Fixes: QTBUG-47887
Change-Id: I1e696cd15cc37d8fcb6a464cac3da33c3a8b95c2
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2019-04-25 06:06:45 +00:00
Kai Koehne
f2b5baf9d0 Update external links to CMake documentation
We don't support CMake version 2 anymore. Instead of just updating
to a newer (but fixed) version let's link to the latest
documentation. This might create a bigger risk that links get
stale, but hopefully let people find always the latest information.

Task-number: QTBUG-72159
Change-Id: I082de80cf9ee107b5d017ab8ad6369f2448b0e1b
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2019-04-25 05:22:31 +00:00
Thiago Macieira
0674c870b4 TinyCBOR: Fix parsing on big-endian machines
Original commit from https://github.com/thiagomacieira/tinycbor/pull/1

Change-Id: I194d3f37471a49788a7bfffd1594ef5db19465fd
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2019-04-25 05:22:24 +00:00