Commit Graph

37734 Commits

Author SHA1 Message Date
Oliver Wolff
e5b4e7a9ed QWinRTInputContext::hideInputPanel: return early if panel is not visible
If the input panel is not visible TryHide will result in
"Failed to hide input panel. (The operation completed successfully.)".
That happens a lot in Qt's auto tests for example.

Change-Id: Ieae17e07c3646dce8f348e21f537a2455fe03461
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Miguel Costa <miguel.costa@qt.io>
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
2018-09-26 05:41:03 +00:00
Aleix Pol
50b995d114 Fix typos in the documentation
Returnes -> returns

Change-Id: I52372488a16d7c13e85fca0e11eaab738db9355d
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
2018-09-25 23:39:06 +00:00
Allan Sandfeld Jensen
c33faac32b More fixups for GL_CONTEXT_LOST
Fixes the rest of the places we use the pattern of emptying the OpenGL
error stack to be able to handle GL_CONTEXT_LOST, and adds a note about
it in the documentation.

Change-Id: I7eb97dbca45f39295b832d44937023b538b19947
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-09-25 22:35:58 +00:00
Allan Sandfeld Jensen
e61a40bff1 Re-enable thread autotests
Replacing the qmake test with the one corelib/thread/thread.pri uses
for those classes.

Change-Id: Ie803190b821736c89b056ae51b7dfe92046189eb
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-09-25 22:35:40 +00:00
Thiago Macieira
e3e28915c3 Fix erroneous use of errno with qErrnoWarning
On Windows, the error code to be used with qErrnoWarning is not errno,
but Windows's GetLastError(). Obviously, right?

So don't pass errno to it, just let it get the error message straight
from qt_error_string(), which will use GetLastError().

Change-Id: I44e7d800c68141bdaae0fffd155619c93e3f3dab
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-09-25 22:14:10 +00:00
Thiago Macieira
7e1a0c0739 Add tests for decoding too-short UTF-8 sequences
We were handling this properly, but not testing them. I guess we weren't
testing because the condition is a valid intermediate state, so
hasFailure() is correct it returning false.

Testing inspired by the bug reported in
https://github.com/intel/tinycbor/issues/137

Change-Id: Ib47c56818178458a88b4fffd1554ecfdd0af637e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-09-25 22:14:07 +00:00
Thomas Miller
4d40f09a45 Upgrade double-conversion to v3.1.1
Utils.h now includes defines for _M_ARM and _M_ARM64 to enable
compilation on Windows arm and arm64.

The locally added __ghs and __EMSCRIPTEN__ clauses are preserved.

[ChangeLog][Third-Party Code] double-conversion got updated to upstream
version 3.1.1.

Task-number: QTBUG-70008
Change-Id: Ie5411ee8d9cb32c39d7dca5a2262e6b3854732a5
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-09-25 22:13:59 +00:00
Giuseppe D'Angelo
42c545faf7 Tracepoints: trace signal activation
Change-Id: I1ef8074178386166157d9b3416fd432014585857
Reviewed-by: Rafael Roquetto <rafael@roquetto.com>
Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
2018-09-25 21:22:47 +00:00
Liang Qi
afb2619d76 Merge "Merge remote-tracking branch 'origin/5.12' into dev" into refs/staging/dev 2018-09-25 21:06:50 +00:00
Andy Shaw
80406d2c25 Correct documentation about the datastream versions
This amends f5fe9fc5a4

Change-Id: I1d21f5b5f4896a11376f37ed0e39f00f2214c67b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2018-09-25 19:57:07 +00:00
Eskil Abrahamsen Blomfeldt
176a216f4f Android: Compile with NDK r18 + clang
In NDK version r18, the libc++.so file we used for clang has been
removed. However, in r17 this was actually just redirecting to
libc++_shared.so, which is still available in r18, so we can
link directly to that instead.

[ChangeLog][Android] Fix build issue with Android NDK r18 and clang.

Task-number: QTBUG-70631
Change-Id: I658c0cabf49f27a47f38305de3c86067c8b18b25
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2018-09-25 19:29:54 +00:00
Anton Kudryavtsev
9941719a8d QWindowsCursor: fix typo and change enum CursorState into enum class
Change-Id: I55b539da99254d3f7318193669c409552e429a6a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-09-25 19:29:37 +00:00
Topi Reinio
c8178fd52e Doc: Add a macro that expands to the Qt version (Major.Minor)
Versioning of some QML modules follows the Qt major and minor
version exactly. Add a documentation macro that expands to the short
version string to help automate the QML plugin documentation.

Task-number: QTBUG-67818
Change-Id: I45e7a2a1adfd6a82b828222e49b1d02b7c05897e
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
2018-09-25 16:39:23 +00:00
Topi Reinio
1a9b8715ce Doc: Fix QEasingCurve code snippets
Commit ff2a71e3 accidentally removed a code snippet used in documenting
EasingCurve::EasingFunction. This commit restores it and fixes other
minor issues in QEasingCurve code snippets.

Change-Id: Ib19f602a4abbca3511d3d26c5f6da4910f7104a3
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
2018-09-25 16:39:01 +00:00
Topi Reinio
edeeba639e Doc: Add a macro that returns the minor version
Add a global QDoc macro \QtMinorVersion that
expands into the minor version of Qt, or more
specifically, the minor version contained in
the QT_VER environment variable.

The main use case for the new macro is to
document the QML modules whose minor versions
track the minor version of Qt:

\qmlmodule QtQuick 2.\QtMinorVersion

Task-number: QTBUG-67818
Change-Id: I2b4fcbb18de0f8f95718099309090017c237622f
Reviewed-by: Martin Smith <martin.smith@qt.io>
2018-09-25 16:38:44 +00:00
Edward Welbourne
35020c2394 Fix some infelicities in the Q(Date|Time)+ docs
Some of the claims made were not strictly acurate.

Change-Id: Ia7c83ce44257acce32814c0bbb3b787bb6b8596b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2018-09-25 14:35:36 +00:00
Edward Welbourne
56c5829384 tst_QCborValue: eliminate unused lambda
Change-Id: Icb8bd9bd170c8c22978c7d730a8c8b671705adfc
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-09-25 14:35:17 +00:00
Alessandro Portale
8d26f70145 Remove excess "virtual" keyword from destructors in Qt Gui
Destructors whose base class have a virtual destructor are
automatically virtual and do not need to be marked as such.

Change-Id: I84c73ab965077bbb03f4213e53c241569213cae0
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-09-25 14:34:42 +00:00
Sven Pauli
264ad32827 Add const overloads for QColor::getCmyk and QColor::getCmykF
Align the constness of QColor::getCmyk and QColor::getCmykF with the
rest of the family (QColor::getRgb etc.) by adding overloads. The
non-const methods could be removed with the next major release as that
will break binary compatibility.

Task-number: QTBUG-65176
Change-Id: I8579928a43fb59aed3319ff73481994a54b274f8
Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2018-09-25 14:23:53 +00:00
Christian Ehrlicher
7fafeb4a34 QTreeView: sync keyboard search behavior with other itemviews
QTreeView has a special implementation of keyboardSearch() which is not
consistent to the base implementation regarding the selection behavior:
 - currentSelectionStartIndex is not set which results in a wrong
   mouse selection behavior afterwards
 - only the current index is set but not the current selection
Sync the behavior by calling setCurrentIndex() directly in QTreeView
too.
One problem remains with this patch - the key handling is still
different between QAbstractItemView and QTreeView for repeating key
presses.

Task-number: QTBUG-18862
Change-Id: Ife79d146cf16d6ecbf9f86540777dae15aa1ffb0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-09-25 14:23:06 +00:00
Shawn Rutledge
4c631c0bf9 Android: add support for custom buttons in native MessageDialog helper
New API in QMessageDialogOptions and implementation on Android.

Task-number: QTBUG-35545
Change-Id: I59567251199f220862d01ba76979266379eecd86
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-09-25 14:15:40 +00:00
Alessandro Portale
d0c159c8e3 Fix a few overrides in Qt Core
This change removes redundant 'virtual' from function declarations.

Clang Tidy's modernize-use-override check reports:
  warning: 'virtual' is redundant since the function is already
  declared 'override'

CppCoreGuidelines say:
  C.128: Virtual functions should specify exactly one of virtual,
  override, or final

Change-Id: I9a4bdd6cc041d46ae64b25597ba4f7268ac4c2b7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
2018-09-25 13:34:19 +00:00
Tony Sarajärvi
2d587a03eb Remove insignificant flag from qtouchevent.pro
Task-number: QTBUG-46266
Change-Id: I38eb3a1da2688157e40f915b86d9a8e4c0e58f64
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-25 12:50:17 +00:00
Eirik Aavitsland
7a6a9dbb7d QImageWriter: Fix default compressionratio
Before asking a image format handler to save an image, QImageWriter
sets the value of all supported options. For options like quality and
gamma, the default value is an illegal value (-1 and 0.0 resp.),
effectively telling the handler that the application has not requested
any particular value. But in the case of compressionratio, the default
was 0, a legal value. Fix by changing it to -1.

Change-Id: Iad6d4c2dbe269b25863e7d4967aa9ed2a7d1247f
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2018-09-25 12:32:34 +00:00
Eirik Aavitsland
b233ce66d3 QPainter cosmetic stroker: Fix painting error for FlatCap lines
Initialize the lastDir properly, to avoid the stroking algorithm doing
direction-change handling for a single line. That could cause a cap to
be painted for a single FlatCap line.

Also fixes a bug in tst_qpainter, revealed by the above fix. The
result drawPolyline was erroneously compared to the result of drawing
the lines individually, for a case where the former correctly paints
the pixel of the join point in the corner, while the latter by
coincidence used to paint the same pixel as a cap because of the bug
above.

Task-number: QTBUG-70101
Change-Id: Ie20eda33214cfe9e7627f17ef4c7a5b3835c9c24
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-09-25 12:32:24 +00:00
Morten Johan Sørvig
213cfc3fae Make the textedit example use dark text on light background on macOS
Many text documents will be designed for a white-paper
look, and in these cases it is desirable that the editor
colors matches.

Change-Id: I66d721f8c2e27b78a2b885c6cfd74f897fe42389
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-09-25 12:15:36 +00:00
Morten Johan Sørvig
d0528d558e macOS: Use light color for tooltip text in dark mode
Tool tip text is drawn by QLabel using ToolTipText
text role. Give it a system palette entry.

Change-Id: I2e1b4f0b130783efd8d03f53a42c3e64aec32425
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-09-25 12:15:28 +00:00
Morten Johan Sørvig
02f7444c85 No-thread: prevent double delete of QThreadPrivate
Change-Id: Ie34c06ad798be6bd91f5c356051daaa72800c20a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-09-25 12:15:19 +00:00
Qt Forward Merge Bot
a607fcb31e Merge remote-tracking branch 'origin/5.12' into dev
Change-Id: I4d123c3cdf86524716ba67091e0347309b49c837
2018-09-25 10:56:53 +02:00
Timur Pocheptsov
f99e956d65 Add QT_REQUIRE_CONFIG(ssl) to pre-shared key authenticator
As it's done (albeit in old-style there) in other public QSsl-classes.

Task-number: QTBUG-70604
Change-Id: If3cd9da0e8f8378fd29a80215cd889e459aa7bce
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-09-25 05:51:19 +00:00
Shawn Rutledge
b4b706d454 Ensure that QTabletEvent is not pre-accepted before sending
In QWidget-world it's normal for input events to have the accepted
flag false by default, so that it's obvious after visiting a widget
subclass that does not override a particular handler function that it
did not handle that event type at all.  For tablet events in
particular, the contract (to which we've been paying more attention to
ensure that QTBUG-47007 remains properly fixed) is that if a
QTabletEvent is not accepted, a mouse event will follow.
Tablet-unaware applications need to get the same mouse events from a
Wacom stylus as they would receive from an actual mouse.

In this case the issue was missing hover events (mouse movements
in which no mouse button is pressed).  Without those, the enterEvent
and exitEvent virtuals are also not invoked properly.

Task-number: QTBUG-47007
Task-number: QTBUG-65199
Change-Id: I957005aad9d2bf85a3a41bbdebe3e046e34dee4d
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-09-25 03:57:35 +00:00
Qt Forward Merge Bot
35ec3b49e1 Merge remote-tracking branch 'origin/5.12' into dev
Change-Id: I65e4457a218f333161e9e72735b62fc821475f45
2018-09-25 01:00:35 +02:00
Tony Sarajärvi
8a76350788 Blacklist flaky qgraphicsscene autotests
Task-number: QTBUG-70640
Change-Id: I2a958652ed9fee9cbf2cd367e99aa672c744e74b
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-24 21:13:39 +00:00
Tony Sarajärvi
1ccc2348b3 Extend blacklisting of tst_qparallelanimationgroup tests to macOS 10.13
Task-number: QTBUG-61500
Change-Id: I46b10b6ecd7f1653bebd0ffd6f250f5c65cb8189
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-24 21:13:30 +00:00
Tony Sarajärvi
a1eaa71e61 Blacklist flaky tst_QGraphicsEffect autotest on openSUSE
Task-number: QTBUG-70612
Change-Id: I7254ca7a0dd1bce92bd6d8841e53af5acdd78807
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-24 21:13:20 +00:00
Tony Sarajärvi
17187265cb Blacklist qguiapplication::focusObject on Ubuntu and openSUSE
Task-number: QTBUG-70593
Change-Id: Ibad362cbc6660835a05412a612f34cfdaee5932c
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-24 21:13:12 +00:00
Tony Sarajärvi
619e37c83b Extend blacklisting of qtimeline::frameRate to macOS 10.13
This is already blacklisted for macOS 10.12 and reproducing in 10.13.

Task-number: QTBUG-61037
Change-Id: I464e42d0ae5ab24104250edc69a90454ba605eaa
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-24 21:13:00 +00:00
Tony Sarajärvi
e0ba6e09c0 Blacklist flaky tst_qheaderview test
Task-number: QTBUG-70590
Change-Id: I39ca2a7207db58d1a33bb918e065196a60471930
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-09-24 21:12:52 +00:00
Tony Sarajärvi
c2800e7555 Remove insignificant flag from qcolordialog.pro
As the test was unstable, we qskip the failing parts
instead of mark the whole test insignificant.

Task-number: QTBUG-50842
Change-Id: Ib8f5b7ead07d65cc624fa72b190ecee0338c8183
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-09-24 21:12:38 +00:00
Christian Ehrlicher
02663718a9 QHeaderView: Don't unhide hidden sections on layoutChanged()
When storing the persistent indexes within _q_sectionsAboutToBeChanged()
there was a limit one how much persistent indexes should be stored due
to performance concerns. This resulted in unhiding hidden rows.
The rationale behind this was that storing persistent indexes is slow
and that hiding a large amount of rows/columns should be done with a
QSortFilterProxyModel.
Fix it by removing the limit since it does not really hurt performance.

Task-number: QTBUG-70633
Change-Id: I2311213c2b63c67e2210aa7f73f07d28dc0e47be
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2018-09-24 19:25:19 +00:00
Christian Ehrlicher
8bd0e6709f QHeaderView: apply small optimization in recalcSectionStartPos()
The loop in recalcSectionStartPos() calls QVector<>::constEnd() after
every iteration which is not needed since the vector stays constant.
Therefore use the new for loop syntax from c++11 so constEnd() is only
called once which gives a small speedup, noticeable with large section
counts.

Change-Id: If318eec10c9ce234004a9922409fbdbc6409f2f8
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Luca Beldi <v.ronin@yahoo.it>
2018-09-24 19:03:02 +00:00
Christian Ehrlicher
6d648961c6 QItemWidgets: emit layoutChanged with proper sortHint
layout(AboutToBe)Changed gained a sortHint parameter with Qt5.0 but the
itemmodels did not set a proper value where possible.
Since the sorting of the ItemWidgets is only per column, it is
reasonable to pass QAbstractItemModel::VerticalSortHint in the various
layoutChanged calls.

Change-Id: Ia11322bae1a96bc0d7d8422558a11cdfe04c2808
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-09-24 19:02:55 +00:00
Liang Qi
b26cd68bf6 Modernize the "datestring" feature
Change-Id: I2236a456fe3758d9054b22e36fe6316f3522d533
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-09-24 17:12:29 +00:00
Liang Qi
e226b0f94a Modernize the "textdate" feature
Change-Id: Ic0b6f13e17c301ed66d6a8297c242086c94ac87d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-09-24 17:12:24 +00:00
Timur Pocheptsov
2e94947c56 qnsview_key/qnsview_mouse make Ctrl+left click work again
A result of typo/incorrect keyboard modifiers extracted +
wrong button sent via QWindowSystemInterface::handleMouseEvent.

Task-number: QTBUG-70512
Change-Id: I809168e363496884312412051e8d435f5794b3be
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-09-24 17:01:08 +00:00
Dmitry Shachnev
6948bf20a7 QSslContext: Use 0 instead of TLS_MAX_VERSION
According to the SSL_CTX_set_max_proto_version manpage [1]:

> Setting the minimum or maximum version to 0, will enable protocol
> versions down to the lowest version, or up to the highest version
> supported by the library, respectively.

This should make it possible to use Qt Network with older versions of
libssl than it was compiled against. In particular, use with 1.1.0 when
compiled against 1.1.1.

Also, one of OpenSSL developers is suggesting to remove TLS_MAX_VERSION
from the public header in the future [2].

[1] https://www.openssl.org/docs/man1.1.0/ssl/SSL_CTX_set_max_proto_version.html#DESCRIPTION
[2] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=908567#59

Change-Id: Ie76054b917daa8e54d5c0156e848dbaca7bb8a82
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2018-09-24 13:40:30 +00:00
Timur Pocheptsov
4b7ff8e98c Protect HSTS code for no-feature-settings build
Under the hood we use QSettings to store HSTS policies.
Qt configured with 'no feature settings' would fail to
build then. For such builds, we fall back to in-memory
only HSTS cache.

Change-Id: I6df551d8c6c96d982080a51ce6b1bdce71d04b9f
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-09-24 11:49:05 +00:00
Thiago Macieira
4fc4f7b0ce Export qt_open64 from QtCore
Other libs use qcore_unix_p.h.

qopenglprogrambinarycache.cpp:function QOpenGLProgramBinaryCache::load(QByteArray const&, unsigned int): error: undefined reference to 'qt_open64(char const*, int, unsigned int)'

Change-Id: I44e7d800c68141bdaae0fffd155675d15eded2e4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Eric Lemanissier <eric.lemanissier@gmail.com>
2018-09-24 10:59:02 +00:00
Martin Smith
47f815cb26 doc: Fix several miscellaneous qdoc warnings
This update fixes several qdoc warnings for things like incorrect
links to section titles, missing enum \value commands, and incorrect
\fn signatures.

Change-Id: I35ae18810d386a78ffa87d674489c7ad8c5fa215
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2018-09-24 10:45:30 +00:00
Andy Shaw
8aa9bb6d3f Clarify docs regarding the states of a QFutureWatcher with no future set
Task-number: QTBUG-55554
Change-Id: I49b475a95d8ee65864cfa6d1024cb17cfe648b43
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-09-24 10:32:49 +00:00