Commit Graph

27142 Commits

Author SHA1 Message Date
Giuseppe D'Angelo
fda95aa0dd QDialog::done(): improve the docs
Explain that finished() will also be emitted.

Change-Id: Ic6b55fee8b3af59d989e074e52da7a4398a3052a
Reviewed-by: hjk <hjk@qt.io>
2018-06-07 09:59:44 +00:00
Giuseppe D'Angelo
73c3185edb Docs: remove a repetition
The same sentence was written immediately before.

Change-Id: I1de439e43adf24e9afac3ca045372059a2e3ab8f
Reviewed-by: Martin Smith <martin.smith@qt.io>
2018-06-07 09:59:29 +00:00
Thiago Macieira
88eda007a3 Revert "qsimd: remove support for systems without 64-bit atomics"
This reverts commit 6e1190053d.
We had to bring back qatomic_msvc.h for MSVC 2015, which does
not provide 64-bit atomics on 32-bit platforms.

Task-number: QTBUG-68719
Change-Id: Iea902cf0b01191717e0a640944771fcede7b5ff8
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-06-07 09:08:36 +00:00
Andy Shaw
af4435c5f8 QLineEdit: Emit inputRejected() when part of the input is rejected
When pasting text, it is possible that part of the text is still pasted
but part of it is not. For example, if there is a maximum length set then
only the first part of the text is pasted and the rest is dropped. In
this case it should still emit inputRejected() as not all of the input
was accepted. This amends c901cdadc0.

Change-Id: If7906767be27e88ed9914c50bf0427833de5b8fa
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-06-06 19:47:53 +00:00
Jan Grulich
792298e42d Keep native file dialog updated with current options
When doing calls on native file dialog, we might end up calling an
implementation which will cause crash in case we don't have all options
loaded in the native file dialog. Imagine scenario when you want to save
a file, it sets acceptMode() to QFileDialogOptions::AcceptSave, which is
set to our flatpak file dialog, but not passed through to the native one
loaded inside. Then method calls like selectFile() might crash, like
in case of Gtk3 dialog, because its implementation asks for acceptMode,
but it's not set yet and thus we end up with crash.

Change-Id: I7a4239cb8b46ff6b08e2cfc1dd6abb9d9600aef8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-06-06 18:05:18 +00:00
Thiago Macieira
85a771b89d QCborStreamReader: update to the new TinyCBOR zero-copy string API
Change-Id: Iab119b62106d40fb8499fffd1510abe5d8f2722a
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-06-06 17:48:02 +00:00
Thiago Macieira
91e1356335 QCborStreamReader: use QByteArray directly if possible
QIODevice represents considreable overhead, even with just QBuffer, for
parsing simple things. Benchmarking showed it was spending 25% of the
parsing time inside one QIODevice function or another. So this commit
accomplishes two things:

1) it increases the buffer size from 9 bytes to up to 256, which should
   reduce the number of calls into the QIODevice
2) if the source data is a QByteArray, then use it directly and bypass
   the QIODevice, thus increasing performance considerably

Change-Id: I56b444f9d6274221a3b7fffd150c531c9d28e54b
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-06-06 17:48:00 +00:00
Giuseppe D'Angelo
adf50269e7 De-inline QCoreApplication::send(Spontaneous)Event
There's no clear reason for these functions to be inline;
this prepares a tracepoint hook.

Change-Id: I3a6110a9333db4850c1d97038d5bfae8ab25d5d8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-06-06 17:43:10 +00:00
Allan Sandfeld Jensen
b46cb00fc0 Handle negative leading in layout
Adjust line positions to deal with negative leading which isn't included
in height of QTextLine.

Change-Id: Id7918968c0f9d7e65700b9e7a08fc5d761883f22
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2018-06-06 16:59:31 +00:00
Andre de la Rocha
b72a9cbaaf Fix PDF rendering of strokes with cosmetic pens
The PDF backend was ignoring the cosmetic attribute for certain pens,
resulting in strokes rendered incorrectly.

Task-number: QTBUG-68537
Change-Id: Ib9fd5a510716056c8afe67733f51fc682bbb7354
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2018-06-06 16:54:20 +00:00
Simon Hausmann
bf1f17364f Add note about calling invokable functions from QML when returning QObjects
Link to the data ownership section of the QML documentation to elaborate
on the special rules that apply for invokable functions that return
QObjects.

Change-Id: I41ea9089468c9505807cf1fde22be759b397a6d3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2018-06-06 16:41:51 +00:00
Liang Qi
62abbe34b8 Fix build for Android with android-clang in r17
Task-number: QTBUG-67464
Change-Id: Ib971a5da82b31bce9ac1c9ac623ad7d5302cfaec
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2018-06-06 11:36:33 +00:00
Andy Shaw
ae42461f44 MySQL: Handle TIME types as a string to allow the full range of data
As the full range of TIME is '-838:59:59' to '838:59:59' then we cannot
use QTime as the object to store this data in. Therefore a QString is
used instead for passing the data to and from. This does not impact
existing code using QTime already as it will still convert it from
the QString to a QTime to give the same result as before.

[ChangeLog][QtSql][MySQL] The TIME data type is now treated like a
string-based type in order to respect the full range of the TIME data
type.

Task-number: QTBUG-57028
Change-Id: Ieb7105bff3043b845f76bc873d088e6bac1e4f10
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-06-06 11:14:03 +00:00
Allan Sandfeld Jensen
8c33b79823 Fix HDR format in QOpenGLFramebufferObject::toImage()
If the fbo had samples > 0 set, it would use a temporary fbo with
a default configuration losing the HDR precision.

Change-Id: I7e9966165b3100f148c4ad24738f3ee71273f29a
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-06-06 10:48:36 +00:00
Eirik Aavitsland
d9d77e8680 Fix QTransform::transposed() result having wrong transformation type
The implementation of QTransform::transposed() had a wrong assumption
about the type of the result.

Task-number: QTBUG-68630
Change-Id: Ia5ce794efe773d74fb5fdaff3da8cae2b452e7e5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2018-06-06 08:59:20 +00:00
Andy Shaw
6108d8f515 ibase: Silence warning about incompatible function types
Task-number: QTBUG-68330
Change-Id: I1bb272ec647f9fb5f67f67f04600e51409ebd40a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-06-06 07:18:36 +00:00
James McDonnell
c23f23a739 Add support for _q_platform_qnxWindowType QWindow property
This dynamic property can be used to specify an explicit QNX window
type for a QNX platform window.  The _q_platform_ prefix makes it
possible to place the property on QWidget objects instead.  Existing
functionality ensures that any QWidget property whose name begins with
_q_platform_ is copied to the underlying QWindow object prior to
creation of the platform window.

Add _q_platform_ aliases for the dynamic qnxInitialWindowGroup and
qnxWindowId properties so that these properties can be also be
specified on QWidget objects.

Change-Id: Ia37a965dd25de333307b2bb5ae81446db271af1f
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Dan Cape <dcape@qnx.com>
2018-06-05 19:35:47 +00:00
Sergiy Korobov
7b79798275 Fix QWindowsWindow::requestActivateWindow()
QWindowsWindow::requestActivateWindow() does not work correct if
QWindowsWindowFunctions::AlwaysActivateWindow is passed as a parameter
to QWindowsWindowFunctions::setWindowActivationBehavior().
When the calling process is not the active process, only the taskbar
entry is flashed. It is not correct. The window should be always
activated, even when the calling process is not the active process.

Task-number: QTBUG-37435
Task-number: QTBUG-14062
Change-Id: I7a321d7bac744a7776278210b1b5a2fd4288aa43
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-06-05 14:41:21 +00:00
Timur Pocheptsov
59df474e13 QSslSocket - bail out early if TLS initialization fails
No need to start with 'connectToHost' from 'connectToHostEncrytped'
- we will fail to start client encryption later anyway. This can happen
if we, for example, fail to resolve some symbols or libraries are missing.

Task-number: QTBUG-65142
Change-Id: I0614d5cdf875aaf5b992d8ab6024bcaf3f84b915
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-06-05 13:48:16 +00:00
Tor Arne Vestbø
301970018c macOS: Make sure QNSPanel also gets a debug description
Change-Id: I5de08c3493b02a8e98ba3c4fe3922f5f9fd6e2c2
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-06-05 13:44:22 +00:00
Tor Arne Vestbø
2071d26a34 macOS: Deliver screen changes synchronously
Change-Id: Iea8fcb69b6c05c4f81fedb4ec423aed89d9d2d3c
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-06-05 13:44:21 +00:00
Kari Oikarinen
eb5c9a1f2a testlib: Mark unused member variable for future removal
inLoop is only set, never read and it is private. Since the class is public, it
can't be removed yet, but add a comment so that it will be removed when
possible.

Change-Id: I5e212194cb65626fce2b4c7b68801a73dbe3f500
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-06-05 06:00:32 +00:00
Gabriel de Dietrich
23ae05cf68 QMacStyle: Fix clipped arrow in QToolButton
A quick and reasonable fix is to make sure the arrow fits in
SC_ToolButtonMenu returns. In the future, we should keep the
arrow's actual size and offset the icon accordingly.

Change-Id: I218fa7726efbe4576a72889c41685de87ac14ac1
Task-number: QTBUG-68517
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-06-04 16:44:25 +00:00
Gabriel de Dietrich
0866fe2079 QMacStyle: Fix QComboBox left contents margin
Change-Id: I89a5e0c271bdaced8440e123c63c5435fa725856
Task-number: QTBUG-68518
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-06-04 16:44:16 +00:00
Joni Poikelin
092630cbf9 Fix building with -no-feature-dirmodel -no-feature-filesystemmodel
Change-Id: I7ab90043b2bf6ee41412480f72eb701230cecb38
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2018-06-04 09:19:02 +00:00
Mårten Nordheim
b1bd2021d2 Doc: Remove outdated info and linkify value
No reason to duplicate the info there in a paranthesis.

Change-Id: Ie01be382d36bbc8e7f2eff4cc7ae0df207869c25
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2018-06-04 07:08:17 +00:00
Andre Hartmann
41ae28e1b7 QAbstractSpinBox: Add more documentation cross links
stepUp() and stepDown() already linked to stepBy(), so add the
reverse too.

keyPressEvent() talks about stepBy() too, so add it to the cross
reference.

Change-Id: I22c841821331eaed9607cfb2807dcf0e2886d952
Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de>
Reviewed-by: Luca Beldi <v.ronin@yahoo.it>
Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
2018-06-04 07:04:59 +00:00
Samuel Gaist
abe3373489 Doc: Add information about QThread own methods thread affinity
This patch improves the documentation regarding the thread affinity of
QThread's own methods. It's not always clear for people new to threading
that a QThread object lives in the old thread were it was instantiated
and that calling the methods of said objects will also happen there.

Change-Id: I3599851ebc97a33602ca6499da254a08aec59b2b
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
2018-06-03 20:26:47 +00:00
Samuel Gaist
04b180f7f2 Improve std::tuple handling in tests
Currently when doing comparison with std::tuple the fallback toString
method is called which returns a Q_NULLPTR thus not allowing proper
diagnostic of the values that triggered an error. This patch
adds support for std::tuple to improve the tests output readability.

[ChangeLog][QtTest][QCOMPARE] Now outputs contents of std::tuple on
failure.

Change-Id: I046a55e2ce44c3f7728d51e4745120d38aa5e007
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-06-03 20:26:38 +00:00
Andy Shaw
c901cdadc0 QLineEdit: Add an inputRejected() signal for when a key is not allowed
[ChangeLog][QtWidgets][QLineEdit] Added inputRejected() signal for when
a key press is not accepted by the QLineEdit. For instance, when an
invalid key is pressed for a validator set.

Task-number: QTBUG-57448
Change-Id: I39182a78b07b37c6da01905b8da4c57930e3454b
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-06-01 21:34:03 +00:00
Martin Smith
e3e0a6d6d6 doc: Document Qt namespace in multiple modules
qdoc didn't handle this. This update fixes most of what was wrong,
but tuning the details of the namespace reference pages might follw.
We have namespace Qt as an exaqmple. Most of the elements in the Qt
namespace are in QtCore, but a few functions are declared in QtGui.
Before this update, qdoc used the hack of using #ifdef to remove the
declarations from qtextdocument.h in QtGui and .cpp and then added
them back into qtnamespace.h and .cpp in QtCore.

Now that hack is no longer necessary. The functions in the Qt namespace
that are declared in QtGui are documented there, but the documentation
is linked to from the namespace reference page, which remains in QtCore.
That is, only one \namespace command is used to document the Qt namespace,
and it appears in qnamespace.qdoc where it always did, but the documentation
for the Qt namespace functions declared in QtGui is now appears in
qtextdocument.cpp where it belongs.

Change-Id: Ic5888875c3b8310a3dba244475e2a6c3bc0c1808
Task-number: QTBUG-67267
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-06-01 16:38:01 +00:00
Thiago Macieira
a151e89178 Fix change-of-sign warning found by ICC
qhostaddress.cpp(263): warning #68: integer conversion resulted in a
change of sign
      length = -1;
               ^

I changed the length member from int to quint8 in commit
8656ee950b but I never tested ICC.

Change-Id: I052407b777ec43f78378fffd15311669b490ed7b
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-06-01 10:03:16 +00:00
Thiago Macieira
e1b40675ba Fix warning about tautological comparison in 32-bit mode
qwaitcondition_unix.cpp:209:14: error: comparison of constant 9223372036854775807 with expression of type 'unsigned long' is always false

Task-number: QTBUG-68568
Change-Id: Icc2c231dc2c44abdb087fffd1533c70ae68060dd
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-06-01 09:12:47 +00:00
Sergiy Korobov
94f249977c Fix QWindowsNativeInterface::platformFunction()
QWindowsWindowFunctions::setWindowActivationBehavior() does not work
because QWindowsNativeInterface::platformFunction() is broken.

Task-number: QTBUG-37435
Task-number: QTBUG-14062
Change-Id: Id5688316654ea8ad47d5c68894c376cb83e3583a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-06-01 07:30:31 +00:00
Kai Koehne
97c8b970cd Revert "Atomics: remove qatomic_msvc.h"
This reverts commit 90493e16b8.
The change broke static builds with MSVC.

[ChangeLog][Visual Studio] Reverted a change that caused static
binaries compiled with Visual Studio 2015 to crash on start-up. Note
that this does not apply to Visual Studio 2017 static binaries, even
though the crash stack traces are very similar: with 2017, the problem
is compiler regression and requires updating to version 15.8 for the
fix.

Task-number: QTBUG-68514
Change-Id: I67ea8e1ef442cecab83e7d8d74efc9617e02da35
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-06-01 06:24:18 +00:00
Allan Sandfeld Jensen
0a63d5fed6 Render QOpenGLWidget/QQuickWidget with AlwaysStackOnTop
QWidget::render was ignoring QOpenGLWidget/QQuickWidget with
AlwaysStackOnTop set, because normally they will be composited later,
however when not doing a backing store render, they need to be painted
right away as there is no later.

Task-number: QTBUG-67533
Change-Id: I08e2eeee5e7a8f0dbbf43f659fcfa9068e8c46d1
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-05-31 22:10:48 +00:00
Allan Sandfeld Jensen
dc2476c75e Fix clang develop build
A mismatch of enums after a rename.

Change-Id: Ib28e4607f20583afcb9210fdef7f52d95c63e3dd
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-05-31 21:35:01 +00:00
Tor Arne Vestbø
c4a21708ed Provide presets for QGradient
Similar to Qt::GlobalColor, the presets allow the user to create
brushes based on predefined gradients, quickly getting pretty pixels
on screen.

The presets are based on the linear gradients from WebGradients, a
free collection of gradients, hosted at https://webgradients.com/.
The few radial and blended gradient presets have been excluded.

Change-Id: I1ce8f2210a6045c9edb8829ab3eddcc313549127
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-05-31 15:50:50 +00:00
Tor Arne Vestbø
c538a333db macOS: Make layer-backed mode the default
QWindows are still backed by NSViews, but these views render to a
CoreAnimation layer instead of directly to the top level NSWindow.

This is the direction Apple is going (and is the only available
option on iOS/tvOS), so we want to move away from the existing
code path as soon as possible.

The default can be reversed by setting QT_MAC_WANTS_LAYER=0, or the
_q_mac_wantsLayer property on QWindow.

[ChangeLog][macOS] Layer-backed mode is now the default for QWindow.

Change-Id: Ibb9cc7541b179cad215d0daee14aeb1b54be614c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-05-31 15:50:33 +00:00
Mikhail Svetkin
c9d593d431 macOS: minor refactoring in mouse handlers for nsview/systemtrayicon
Use new helper functions for mouse events

Change-Id: I01e83a228deb16cbdb1d7c8c628a92d48055ee2b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-05-31 15:49:50 +00:00
Friedemann Kleint
3d841556bf Windows QPA: Fix release button event type after moving windows
Check whether the mouse is inside the window and report
MouseButtonRelease or QEvent::NonClientAreaMouseButtonRelease,
respectively. The inside case is triggered by programmatically
starting a size move via QPlatformWindow::startSystemResize()
(QSizeGrip) and was overlooked in
7c3ecf85a7.

Complements 4589440891,
7c3ecf85a7.

Change-Id: I8f714dc768a163878c2b4a075470bcee2dfbd802
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
2018-05-31 14:41:06 +00:00
Tor Arne Vestbø
7e2177464f macOS: Allow moving out of fullscreen state using titlebar button
Even if the window isn't configured with Qt::WindowFullscreenButtonHint,
the user might call showFullScreen(), which we respect and move the
window into fullscreen. In this state, we need to keep the collection
behavior as NSWindowCollectionBehaviorFullScreenPrimary, otherwise the
zoom button will have no effect and the user can't move out of fullscreen.

Change-Id: I77a4b4ee4b42fabc4c6ed2f529ff57acc31d6c24
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-05-30 23:12:32 +00:00
Thiago Macieira
b9935239db QCborStreamReader: rewrite read{String,ByteArray}()
This rewrites _readString_helper() in terms of _readByteArray_helper()
(the helper version doesn't do type-checking) and rewrites
_readByteArray_helper() in terms of readStringChunk().

Change-Id: Iab119b62106d40fb8499fffd1510aa404d9f3611
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-05-30 19:49:01 +00:00
Allan Sandfeld Jensen
ccfb309b90 Document qRound's rounding semantics
This differs from both C rounding (away from zero), and IEEE-754
rounding (to even).

Change-Id: I2cdd358824ca14c922b23029308e3ce3258c1d8f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-30 16:12:03 +00:00
Liang Qi
a4d7535f19 Fix missing override warning for android
This amends 8447f5f006.

Change-Id: Idd25c13735539682f6034724df4c79fcf10a1810
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2018-05-30 15:01:00 +00:00
Tor Arne Vestbø
b6fcc86101 macOS: Minor metal support nits/cleanups
Change-Id: I840426ebf35b0fec64e92386fc3e1cabd91ced25
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2018-05-30 14:38:53 +00:00
Oswald Buddenhagen
04ebb981ab qprocess: don't leak pid pipe if redirection fails in startDetached()
Change-Id: Ifc42f634964b9412f73f53fb20bd220fcbd9a86c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-30 10:58:01 +00:00
Tor Arne Vestbø
286c153583 iOS: Handle application state for application extensions
Change-Id: I97df0f8ecf93e28bfbe9c719922f1ee5ec12b563
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-05-30 09:46:39 +00:00
Tor Arne Vestbø
0587941f6e Add function to safely access the shared application on Apple platforms
Change-Id: I52910309ba94d84d69f049b5c1990f1f866e1698
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-05-30 09:16:23 +00:00
Tor Arne Vestbø
6ada504475 Add function to check whether or not we're part of an extension on Apple OSes
Change-Id: I308147c752ec9c869db87aa94ccf6c88e0999524
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-05-30 09:16:07 +00:00
Allan Sandfeld Jensen
ffc377a529 Reduce recent performance regression
The change to fix 16-bit integer overflow used two floor operations
when only one is necessary. With floor being rather expensive on x86
without SSE4.1 this caused a performance regression in ARGB32
smooth perspective transforms.

This eliminates one of the floor operations which is unnecessary as the
number is always positive in this case and thus truncation will yield
the same result faster.

Change-Id: Iaae76820d4bc2f368e49ed143130b5075fc760a2
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2018-05-30 08:28:41 +00:00
Allan Sandfeld Jensen
d517d5428c Use qFuzzyCompare instead of qFuzzyIsNull in QPointF ==
qFuzzyIsNull has a fixed range, where qFuzzyCompare can tell if numbers
are different in a more relative range. Without it QPointFs that are
heavily scaled will be interpreted as identical, when they are quite
different at their own scale.

Task-number: QTBUG-60359
Task-number: QTBUG-62161
Change-Id: Ic4ba90e9e994aedff5548d690f053eb309b0a60b
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-30 08:28:11 +00:00
Laszlo Agocs
6a14608742 QOpenGLTexture: Enable multisample 2D textures on GLES 3.1+
Task-number: QTBUG-68510
Change-Id: Ib224189906b595bbae5aab95c888dd13e94171aa
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2018-05-30 07:53:15 +00:00
Thiago Macieira
28ab81158f forkfd: Restore errno on exit from the SIGCHLD handler
I'd never thought about it, but it is a requirement: a signal handler
must leave the global state as it found it (except for those bits that
it intended to change, and those must be done in an async-signal-safe
way). Otherwise, errno could change from one line to the next in the
middle of some code.

[ChangeLog][QtCore][QProcess] On Unix, the QProcess SIGCHLD handler now
restores errno on exit.

Task-number: QTBUG-68472
Change-Id: If025d476890745368955fffd1531e7126f1436d9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-05-30 03:57:36 +00:00
Thiago Macieira
b9dc4f7a96 Suppress warnings about deprecated QString constructor
They were introduced in commit c416a7f257.

 warning: ‘QString::QString(const QByteArray&)’ is deprecated: Use fromUtf8, QStringLiteral, or QLatin1String [-Wdeprecated-declarations]

Change-Id: I6a540578e810472bb455fffd1532e31736e1edc9
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-05-30 03:57:32 +00:00
Gabriel de Dietrich
9ffb001306 QAbstractSpinBox: Fix missing frame condition
Wrong check for SH_SpinBox_ButtonsInsideFrame in initStyleOption().

Change-Id: I35c6ff4d007f171fe44d7f3e5734c6f4586d871b
Task-number: QTBUG-68238
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-05-30 02:13:49 +00:00
Andy Shaw
b92db8a4ad Show the display role inside the editor for the relation in a QComboBox
When a QComboBox is used as the editor for a relation inside a view then
it could end up showing the contents of the EditRole. This would be the
field which is used to represent the entry as opposed to the DisplayRole
which is what the user would expect to see is.

Therefore, setEditorData() is overridden to ensure that it is showing
the right data to the user. When the model gets updated, it will take the
corresponding EditRole value as before to ensure it is updated correctly.

Task-number: QTBUG-59632
Change-Id: Ibbccc3e9477de1cdefb654051b97dd111df36382
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
2018-05-29 22:08:28 +00:00
Joerg Bornemann
9f27bfb31a Make sure we can build with -no-feature-draganddrop
We move QInternalMimeData to a separate file, because this class is
used, even if draganddrop is disabled. From now on, include
qinternalmimedata_p.h instead of qdnd_p.h for QInternalMimeData.

Change-Id: I594e08e2e90d574dc445119091686b4b69e4731b
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2018-05-29 18:31:35 +00:00
Thiago Macieira
84b39d6ad5 QCborStreamReader: remove the documentation on the validation API
It's not present in this version.

Change-Id: I6a540578e810472bb455fffd1532ac4d49d4b994
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2018-05-29 11:23:33 +00:00
Tor Arne Vestbø
dd8e73504e macOS: Respect maximum window size when computing zoomed state geometry
AppKit will normally compute this automatically based on the
contentMaxSize property of the NSWindow, which we set correctly
based on the window's maximum size, but since we ignore the
frame proposed by AppKit (due to not working for borderless
windows), we need to take the maximum size into account ourselves.

We follow the lead of QCocoaWindow::propagateSizeHints(), and
interpret the window's maximum size as referring to the client
area size, not including the frame geometry, but AppKit expects
the NSWindow's frame, so we need to manually add the frame.

In addition, AppKit expects the frame in the native coordinate
system, so we need to map to it. This was an existing bug, that
never manifested before taking the maximum size into account.

Task-number: QTBUG-67376
Change-Id: Id4cf6ff5640610f809472e5b1d591b4ec17df602
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-05-29 10:54:21 +00:00
Tor Arne Vestbø
0b1342f374 iOS: Send window-system event also when embedded in native iOS app
The iOS event dispatcher has been split into two; one dealing with the
QPA event processing, which we should always do, and one dealing with
the longjumping that we do when running the user's main on a separate
stack.

Change-Id: I1f819db33c608aad130ff23cbbadcf84363a32d2
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit 5414d372d4)
2018-05-29 10:53:11 +00:00
Tor Arne Vestbø
dc55000140 iOS: Don't assume our UIWindow is a QUIWindow
Change-Id: I6494e4a476273b131aedcf409abdb1ffffa5b62e
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
(cherry picked from commit ab9b026d27)
2018-05-29 10:53:10 +00:00
Mikhail Svetkin
6b98d97670 macOS: Fix QFileSystemWatcher to watch paths with the same prefix
It happens because our filesystemwatcher thinks it is subdirectory and not
two different paths

Task-number: QTBUG-60676
Change-Id: Ic753e9481cb26303a030044e0a5ab4d703bc529f
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2018-05-29 06:32:46 +00:00
Qt Forward Merge Bot
875731368a Merge remote-tracking branch 'origin/5.11' into dev
Change-Id: I8d8b03ea46c537b091b72dc7b68aa6aa3a627ba6
2018-05-29 01:00:09 +02:00
Christian Ehrlicher
be45ada035 QToolTip: replace deprecated QDesktopWidget::screenGeometry()
QDesktopWidget::screenGeometry() was deprecated in 5.11 and replaced
by QScreen::geometry()

Change-Id: I23f5b6a4ed6b76cf558cd8d3ad49bc8029c16f61
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-05-28 17:22:50 +00:00
Thiago Macieira
81cc806e26 Long live QCborStreamReader!
This is the counterpart of the previous commit.

[ChangeLog][QtCore] Added QCborStreamReader and QCborStreamWriter,
classes for low-level reading and writing of CBOR streams.

Change-Id: Ia0aac2f09e9245339951ffff13c72e4bffdf4a56
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2018-05-27 22:41:49 +00:00
Thiago Macieira
e3cb38b06a Long live QCborStreamWriter!
CBOR is the Concise Binary Object Representation, a very compact form of
binary data encoding that is compatible with JSON. It was created by the
IETF Constrained RESTful Environments (CoRE) WG[1] and has since been
used in many new RFCs by that group, especially COSE[2], and is meant to
be used alongside CoAP[3].

This API is a very simple, thin wrapper around TinyCBOR[4].

See RFC 7049 <http://tools.ietf.org/html/rfc7049>.

[1] https://datatracker.ietf.org/wg/core/charter/
[2] https://tools.ietf.org/html/rfc8152
[3] https://tools.ietf.org/html/rfc7252
[4] https://github.com/intel/tinycbor

Change-Id: Ia0aac2f09e9245339951ffff13c651cfeab77d3b
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2018-05-27 22:41:41 +00:00
Thiago Macieira
0619055430 Import TinyCBOR
This does not match any upstream version, but rather the "dev" branch at
https://github.com/thiagomacieira/tinycbor/. I've found myself
completely out of time to finish developing the TinyCBOR buffer
integration and zero-copy support.

Change-Id: I9741f017961b410c910dfffd150133cbf6fbe678
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-05-27 22:41:38 +00:00
Joerg Bornemann
5968a445e1 QProcess/Win: Use ConnectNamedPipe asynchronously and check return value
According to the documentation of ConnectNamedPipe we must pass an
OVERLAPPED object, because the passed handle was opened with
FILE_FLAG_OVERLAPPED.

Pass an OVERLAPPED object, and create a manual reset event that is
waited on if ConnectNamedPipe "fails" with ERROR_IO_PENDING.

Check the return type, and report any failure via qErrnoWarning.

Change-Id: Iedd702cecc2f0008eee6ed4f19d9370912190595
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-26 19:42:34 +00:00
Igor Mironchik
03ab94b0e7 Deregister QTextCodec on destruction
QTextCodec automatically deregisters on destruction now.

[ChangeLog][QtCore][QTextCodec] QTextCodec automatically
deregisters on destruction now.

Task-number: QTBUG-56203
Change-Id: Ic9a66c512642c9913aa27ea5167b9f7341e7f0fe
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-26 18:50:24 +00:00
Christian Ehrlicher
e15fc26e9f QSortFilterProxyModel: don't assert when old model gets destroyed
When a new model was set with setSourceModel() and the mapping was
built up, the destruction of the old model caused a reset in the
QSortFilterProxyModel which lead to an empty view or an assertion.
Now we properly disconnect the old model again and also clean up the old
mapping/persistent indexes when a new source model is set.

Task-number: QTBUG-44962
Task-number: QTBUG-67948
Task-number: QTBUG-68427
Change-Id: I2e0612899c210bde3ac0cfa59aefd78269deee5b
Reviewed-by: David Faure <david.faure@kdab.com>
2018-05-26 11:24:53 +00:00
Liang Qi
8050f1c287 Fix build for Android with android-clang
kernel/qnetworkinterface_linux.cpp:204:17: error: comparison of integers of different signs: '__u32' (aka 'unsigned int') and 'qsizetype' (aka 'int') [-Werror,-Wsign-compare]
            if (NLMSG_OK(hdr, len))
                ^~~~~~~~~~~~~~~~~~

This amends 09cb23f342.

Change-Id: Ib966a60b7a7117d63ed758cba7b556abd90eca0c
Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-25 14:52:47 +00:00
Oliver Wolff
f5a56981cd winrt: Handle expose event before removing window
QWindow should get an expose event before being hidden. handleExpose
iterates over the list of visible windows, so it has to be called before
the window is removed from the list of visible windows.

Change-Id: Ide920ade43c057b9aafdf9fdfa2d54d3336289d8
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2018-05-25 11:02:18 +00:00
Kai Koehne
1b0fe8b953 Fix typo in comment
Change-Id: I6ccd63d7ba8e15f8079741348daffb78a455ffb9
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2018-05-25 09:41:35 +00:00
Samuel Gaist
56b04fe42f Add translation for unsupported_android_version for fr and de
More recent versions of Android lint triggers an error when a
translation is missing. The solution is to either provide translations
for all languages supported or add translatable="false" as property to
the strings that are not yet fully translated.

Task-number: QTBUG-63952
Change-Id: I5afa8a23d3e2285b5c93ee493d9b02397c328f2d
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2018-05-25 06:50:40 +00:00
Jan Grulich
b743835f50 Open native file dialog inside sandbox when opening directories
Flatpak FileChooser portal doesn't support opening and exporting
directories to the sandbox as it's not technically possible. Files are
simply exported through document-portal, but directories are a different
story. We have to, in case we want to open a directory, use native file
dialog provided by platform theme we have loaded into flatpak platform
theme. Applications which need to open directories to be able to work,
like IDEs, music players, will have enabled access ho host's filesystem
anyway so it's fine to open a file dialog inside sandbox.

[ChangeLog][Linux] QFileDialog will use the native dialogs provided by
the platform theme instead of trying to use Flatpak portal to select
directories.

Change-Id: I0716193bb9878aa621b8ca88506f87c72f690887
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-24 15:55:38 +00:00
André Klitzing
747de3e067 Fix build if openssl is configured with no-des or no-rc2
A custom build of openssl can disable DES or RC2. This
allows to build Qt against those builds.

Change-Id: I9b91c943fab4d217a791381e81a7d87a9ff5031a
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2018-05-24 14:58:00 +00:00
Liang Qi
f82e508516 Merge remote-tracking branch 'origin/5.11' into dev
Conflicts:
	mkspecs/features/qt_common.prf
	src/corelib/tools/qstring.cpp
	src/plugins/platforms/windows/qwindowsmousehandler.cpp
	src/widgets/widgets/qmainwindowlayout_p.h

Change-Id: I5df613008f6336f69b257d08e49a133d033a9d65
2018-05-24 16:29:14 +02:00
Nathan Collins
2d1e1f569b Apply Qt::ControlModifier to all spin box interactions
A step modifier already existed when scrolling with the
Qt::ControlModifier held. This patch applies this functionality to
other methods of stepping a spin box.

Holding the modifier increases the step rate when:
- scrolling;
- pressing the up/down keys;
- pressing the spin box up/down buttons.

[ChangeLog][QtWidgets][QAbstractSpinBox] The Qt::ControlModifier
increases the number of steps a QAbstractSpinBox takes for the
following interactions: scrolling, up/down keyboard keys and the spin
box buttons. Previously, Qt::ControlModifier only affected scrolling.

Task-number: QTBUG-67380
Change-Id: Icc8754d5c007da0771bfaef113603a2f334dd494
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
2018-05-24 09:44:16 +00:00
Timur Pocheptsov
ee47999333 Http/2 - remove unused 'compressedData'
and thus reduce memory consumption, allocations etc.

Task-number: QTBUG-68394
Change-Id: Ibad9b01a1e709e6abafcd9531fbcfc1eafa9cff3
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2018-05-24 04:38:01 +00:00
Friedemann Kleint
cb3e85fc9a Windows: Refactor QFSFileEngine::link()
- Remove unneeded QT_CONFIG(library)
- Use C++ casts
- Introduce nullptr

Change-Id: I0349e8a550ebd21c58d63a3ee5b1f9cfde49099f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-23 20:05:46 +00:00
Shawn Rutledge
b206d1c808 VNC plugin: explicitly cast int to uint16_t before calling htons
Otherwise there is a -Werror=narrowing error on big-endian
architectures (where htons does nothing).

Task-number: QTBUG-68390
Change-Id: Idb204a81aaedb9f4fde1d5fae406da36c7a1953e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-23 18:20:44 +00:00
Gabriel de Dietrich
595c1ae9e7 Cocoa Menus: Add support for menu items in window-less apps
Since we moved the menu items validation and target/action to
QNSView (thus relying on the responder chain), we need to take
care of case when the applications that doesn't have any window
open. By adding similar methods to QCocoaApplicationDelegate,
the last responder, we ensure the menu items will be validated
and will trigger properly. This is particularly necessary for
dock menu items, which live separately from any top-level widget.

Dock menu added to Menurama which won't quit when its last window
is closed. This way we can test that dock menu items will trigger
in the absence of any window.

Change-Id: I56d864eb9da1f8dd5adb2a3b6c3dd5304c723117
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-05-23 18:09:28 +00:00
Allan Sandfeld Jensen
b9bc6c31a0 Fix potential 16-bit integer overflow
When multiplying a float in [0;1[ with (1<<16), with rounding, it might
end up being rounded to 65536 even if the input was under 1. This patch
uses a floor operation to make sure the value can be in a ushort, and
cleans up the surrounding code so it is clearer what it does.

Task-number: QTBUG-68360
Change-Id: I2d566586765db3d68e8e7e5fb2fd1df20dabd922
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
2018-05-23 13:26:57 +00:00
Edward Welbourne
c416a7f257 QLocale: only use LANGUAGE if it contradicts LC_ALL/LC_MESSAGES/LANG
If LANGUAGE specified only the language, without any script or
country, and matched the value we'd got from other environment
variables, we were throwing away their knowledge of script and
country, leading to falling back on the default script and country for
that language, which might be at odds with what other environment
variables had told us.

Changed to only use LANGUAGE if it contradicts (or extends) what we
would otherwise have used.  Clarified some comments in the process.

[ChangeLog][QLocale][Unix] When using LANGUAGE would lose information
about script or country, without changing language, use the locale
implied by LC_ALL, LC_MESSAGES or LANG.

Prompted-by: Safa AlFulaij <safa1996alfulaij@gmail.com>
Change-Id: Ie433e57ae6b995abafd05c931136cc9796494895
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-23 12:12:24 +00:00
Allan Sandfeld Jensen
bd74b624d5 Improve bounding rect of QStaticText with Qt::PlainText
The bounding rect was not including positive leading of the last line. This
patch solves it by changing using QTextLine's setLeadingIncluded, and adds
handling of negative leading to keep rendering unchanged in that case.

Change-Id: I4d18b81892184bb85cd7949a5dc3fb9cfa270a26
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
2018-05-23 09:52:30 +00:00
Allan Sandfeld Jensen
dfa434a979 Optimize unpremultiply using SSE rcp
Change-Id: I255031d354b0fde7abe8366ea2c86a35f9f24afd
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-23 08:31:07 +00:00
Friedemann Kleint
7aaa7debc4 QWin32PrintEngine: Fix crash in drawPixmap(), drawImage()
Use the printer's HDC instead of the screen HDC for StretchBlt().

Patch as contributed via bug report.

Task-number: QTBUG-59689
Task-number: QTBUG-66325
Change-Id: I9b5d6ddd3f0e9e68f2a003ca9ed20ece20dccef8
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-05-23 08:26:57 +00:00
Andy Shaw
4deea4b905 doc: Explicitly mention that QSqlRecord fields are generated by default
Task-number: QTBUG-38460
Change-Id: I5982d018ebf239eb95dba59e2c5559bf5b5ce6ca
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
2018-05-23 07:01:39 +00:00
Friedemann Kleint
5e67c653db Windows QPA: Fix Qt include statements
Change
 #include <QtCore/QDebug>
to
 #include <QtCore/qdebug.h>

according to the coding style.

Change-Id: I6ba8a7424c548ddde1d18f3f6f4f87e30973d710
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-05-23 06:46:46 +00:00
Friedemann Kleint
88ba5d5b23 Direct2D QPA: Fix Qt include statements
Change
 #include <QtCore/QDebug>
to
 #include <QtCore/qdebug.h>

according to the coding style.

Change-Id: I34ddf9b9101cfbd5054584608de09de5b4b2f233
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-05-23 06:08:12 +00:00
Venugopal Shivashankar
57868b6081 Doc: Document the WA_ContentsMarginsRespectsSafeArea widget attribute
Task-number: QTBUG-68153
Change-Id: Ie4fa1a4e06ff5ee506e1d7788c245b7add776bd6
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-05-23 05:54:06 +00:00
Aaron Kennedy
c83ea33ceb Add attribute to indicate a widget was the target of a style sheet
Qt already has the widget attribute WA_StyleSheet to which indicates that
a widget was subject to a style sheet, but it doesn't indicate that the
widget was actually affected by the style sheet. For example, an application
style sheet will set the WA_StyleSheet attribute on all widgets, even if it
only targets QPushButtons. The WA_StyleSheetTarget new attribute pairs with
WA_StyleSheet to give this extra information.

[ChangeLog][QtWidgets] Added the Qt::WA_StyleSheetTarget attribute to
indicate that a widget was affected by a style sheet.

Change-Id: I7cca18ddec8fbb69f294ae2ef990672a5f4f1d83
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Reviewed-by: Sérgio Martins <sergio.martins@kdab.com>
2018-05-23 05:22:06 +00:00
Thiago Macieira
f86fbc4566 QTemporaryFile: Disable O_TMPFILE on Android
We require linkat(2) to materialize the file and that is (stupidly)
filtered. See 138d34b9c8 and QTBUG-64103.

Task-number: QTBUG-68344
Change-Id: I052407b777ec43f78378fffd152fd8822761b452
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-05-22 19:26:26 +00:00
Janne Koskinen
adad959aef egl: Add ES3.2 direct function pointers
Task-number: QT3DS-1738
Change-Id: Ib582d37717618104e10535bae8dea87e2e98b2ce
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-05-22 13:24:17 +00:00
Martin Storsjö
91f12fe62b Windows: Fix MinGW compilation after ec97be5585
This fixes compilation that failed due to QOperatingSystemVersion
being undeclared. Not sure from where it was transitively included in
other builds where it apparently have worked fine though.

Change-Id: I32cfb51c4787604d456fffa7a3a8ed09952a0513
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2018-05-22 07:51:03 +00:00
Olivier Goffart
97fc2800ed Fix documentation of Q_NAMESPACE
We need to add the \relates command otherwise it won't appear in the documentation

Change-Id: I134776c1528445761a7539cf687e4855d39eb7a7
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
2018-05-22 07:30:17 +00:00
Allan Sandfeld Jensen
8f6f9cbaa9 Reapply SSE4 acceleration to ARGB32->ARGB32PM conversion
After the merger of fetch and convert, we were missing the hook
to the accelerated merged version of ARGB32->ARGB32PM conversion,
causing a minor performance regression.

Change-Id: I3965d1a95f2305306005db09640f2775aa645d2e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-05-20 09:03:19 +00:00
Thiago Macieira
c780434ba2 qt_is_ascii: improve isAscii a little further (QUrl, QLatin1String)
Turns out that the non-AVX2 code was beating the performance of the AVX2
because the simdTestMask function did a little too much. So just use the
same VPMOVMSKB technique for it.

Change-Id: I0825ff5b5f6f4c85939ffffd152f3b636ab998db
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2018-05-20 00:14:40 +00:00
Andy Shaw
8d19afcc81 ibase: Don't use deprecated QSqlError constructor
Task-number: QTBUG-68330
Change-Id: Ie6ece8574462699fca401139ea00f1925b0a440b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2018-05-18 12:46:59 +00:00