Commit Graph

31831 Commits

Author SHA1 Message Date
Stephan Binner
e1b9ddc105 Add feature.scroller
Change-Id: I5313e1f5091d5764994525dae138e288e5125c59
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 19:41:49 +00:00
Olivier Goffart
b41492d53e Doc: Remove references to pre-C++11 recommendations
Compiler support for lambda functions and variadic templates is
required since Qt 5.7, so no need to mention in the documentation
what happens if the compiler doesn't support it.

Change-Id: I5caeaa0bd7f0edce81e22e22964e0b7dd042c719
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-03-01 19:30:10 +00:00
Laszlo Agocs
a43670a889 Fix malformed GL extension name for immutable storage
Change-Id: Ice2821d9d9523fa8cd446c009677378d52f61ad5
Task-number: QTBUG-59189
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2017-03-01 16:17:53 +00:00
Gatis Paeglis
1a5deb7e0e xcb: fix misuse of xcb_send_event
This fixes the following Valgrind warning:

"Syscall param writev(vector[...]) points to uninitialised byte(s)
Uninitialised value was created by a stack allocation"

The xcb_send_event() requires all events to have 32 bytes.
It calls memcpy() on the passed in event. If the passed in
event is less than 32 bytes, memcpy() reaches into unrelated
memory. And as it turns out, this behavior is actually
described in the xcb_send_event function's documentation.

This patch adds a macro that declares an event for safe
usage with xcb_send_event.

Change-Id: Ifcaab5e9a3b52b7f64ac930b423e0c7798bbfedb
Done-with: Uli Schlachter
Task-number: QTBUG-56518
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-03-01 15:15:18 +00:00
Paul Olav Tvete
07d4376e0d Build fix for -no-feature-datestring
Change-Id: If3b744e9f7e7761d02664b1a117e0540fabe8915
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 13:36:41 +00:00
Thiago Macieira
fe2ab724de tst_utf8: Fix one of the overlong sequences to be what we meant
C0 to DF take one continuation byte; E0 to EF take two.

It's invalid UTF-8 anyway, but at least this is what the test row meant:
overlong sequence with 3 bytes of what should have been two.

This updates the comment to match the character that we were actually
testing.

Change-Id: I85a8bd6da2c44f52b4e3fffd14a75df2600487aa
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-03-01 12:27:17 +00:00
Paul Olav Tvete
06a3ac2671 Fix build with -no-feature-tabbar
Change-Id: I7b692f5308efa92da8c2101e07e9a803c6c69d99
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:28 +00:00
Paul Olav Tvete
369876ee06 Build fix for -no-feature-regularexpression
Change-Id: I34f23c0cdc269d8a3acf1e09553ba2604e142736
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:25 +00:00
Paul Olav Tvete
432fd5a5af Make VNC a proper feature
Change-Id: Iffae3f4d77f46bbf7ac38e7c9bc916f060606dd9
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:23 +00:00
Paul Olav Tvete
1399cacb6b Fix build with -no-feature-cursor
Change-Id: I971dbe7827adf0cf06337348a0d011632c364725
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:19 +00:00
Paul Olav Tvete
0684f28984 Build fix for xmlstreamreader/writer features
Change-Id: Icb3a998716c8816e244634e21911a7384078978e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:17 +00:00
Paul Olav Tvete
e97d6fd52c Build fix for -no-feature-action
Change-Id: I62291af347dca7c1bb4a53d2cb698e4f1a38743d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:14 +00:00
Paul Olav Tvete
782e1caa9f Fix build with -no-feature-tabletevent
Change-Id: I5f16db38a3a54acaa76f764b9d4d7167640587c9
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:11 +00:00
Paul Olav Tvete
40837c42a5 Build fix for -no-feature-validator
Change-Id: I385ce6e37611b7ba32503ef5d041628dd764fe23
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:08 +00:00
Paul Olav Tvete
a16b6e29e0 Fix build with -no-feature-draganddrop
Change-Id: If537cb6b7d41b2d6511c369451dde2e9289f724d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:01:04 +00:00
Paul Olav Tvete
410d9cabb7 Build fix for -no-feature-validator
Change-Id: I884381964d692eb5d3eb9088c87779c03057981d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:00:59 +00:00
Paul Olav Tvete
a58dafd2e8 Build fix for -no-feature-imageformat_xpm
Change-Id: I081fdfb622f21fc63a72e153d4d6c7120107ba67
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 09:00:55 +00:00
Simon Hausmann
d83a20af1d Improve time stamp precision of qmake's touch function
On POSIX compliant platforms, the default precision we apply to
preserving time stamps is seconds. However we can do better and use
utimensat() - if available - to increase the precision to nanoseconds.
The values are provided by statbuf's st_mtim. This is guarded for
compatibility with older systems, similar to commit
494ced1329.

Change-Id: I6928660230d84f8511bf0f58e268906d2e575e04
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-03-01 05:19:56 +00:00
Stephan Binner
104408f3da Add feature.commandlinkbutton
Change-Id: I057ed507552c74a787e5bcdaa28a18c667eecd43
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-03-01 00:24:10 +00:00
Stephan Binner
5a3029fbf1 File dialog does not require features.tooltip
Also rewrite condition as block

Change-Id: Ife0086def80f1806c38dad822265fddf7ca0690b
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-03-01 00:24:02 +00:00
Allan Sandfeld Jensen
eae8afa571 Add AVX2 optimized bilinear texture transform
Implement AVX2 versions of the three optimized paths of bilinear
texture transform.

Change-Id: Ie7199ef7dcce1e3457535fee35822d76afc0e8ba
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-02-28 22:54:59 +00:00
Kai Koehne
6d10f739cd evdevtouch: Replace LPGL21 with LGPL license header
Also use caonical contact url.

Change-Id: Ic229623b0bcb533a9801890347802469c9c53c59
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-02-28 15:35:02 +00:00
Kai Koehne
7392985a5c XCB: Replace LGPL21 with LGPL license header
Also use canonical contact url.

Change-Id: I6976dd6e2898d1c80260b08a8257f2848b4b7b6c
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-02-28 15:34:58 +00:00
Kai Koehne
a244636817 Windows QPA: Replace LGP21 with LGPL license header
Also use canonical contact url.

Change-Id: I58c7f5309883fa775d1bf7b56692e4c237a3f5a4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-02-28 15:34:46 +00:00
Kai Koehne
3ea8102343 Integrity plugin: Replace LGPL21 with LGPL license header
Also use canonical contact url.

Change-Id: I7faf9b329f4dd2c2a422d02e171bc2d39c359ed3
Reviewed-by: Rolland Dudemaine <rolland@ghs.com>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2017-02-28 15:34:40 +00:00
Kai Koehne
5590d84062 bsdfb plugin: Replace LGPL21 with LGPL license header
Also use canonical contact url.

Change-Id: Iaf22c48d0a548efaccd816132e8730cbb6e0bb5d
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-02-28 15:34:35 +00:00
Kai Koehne
2ef1d48be7 IOS: Replace LGPL21 with LGPL license header
Also use canonical contact url.

Change-Id: Id1d8328e6cc9aab82a30e0ee3a971e6935341b42
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2017-02-28 15:34:27 +00:00
Kai Koehne
13d3e05e3b pcre2: Replace LGPL21 with LGPL license header
Also use canonical contact url.

Change-Id: I61bf0990698a7021f1240deaf3eef2aff8f90a7e
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-02-28 15:34:20 +00:00
Kai Koehne
58cf57492c Widgets: Replace LGPL21 with LGPL license header
Also use canonical contact url.

Change-Id: I59ed3d09d2fee877a577a00e7e1cb09782d26512
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-02-28 15:34:14 +00:00
Kai Koehne
a64c766a3d Network: Use canonical license headers
Replace outdated LGPL21 with LGPL license header.
Use GPL-EXCEPT for all autotests.
Also use canonical contact url.

Change-Id: I6e5cc8a4285569c4f862730a980f492b8a933a72
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2017-02-28 15:34:01 +00:00
Kai Koehne
a62d8ab993 Doc: Use canonical contact URL in license header
Change-Id: I34821150f66255df30d12572b27779e0e729ebc8
Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch>
Reviewed-by: Alex Trotsenko <alex1973tr@gmail.com>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2017-02-28 15:33:49 +00:00
Jason Erb
9c7ef72c87 Fix registry function link error on Windows
Added library required by registry functions called by
QWindowsFontDatabase::readRegistryString.

Task-number:  QTBUG-59160
Change-Id: I8f6beee3cff4443c56bd835021d15122867e76e3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-02-28 15:08:00 +00:00
Jesus Fernandez
706bfa499a Fix "zero as null pointer constant" warning
qsqlrelationaldelegate.h:60:52: error: zero as null pointer constant [-Werror=zero-as-null-pointer-constant]
     explicit QSqlRelationalDelegate(QObject *aParent = 0)
qsqlrelationaldelegate.h:72:87: error: zero as null pointer constant [-Werror=zero-as-null-pointer-constant]
     QSqlTableModel *childModel = sqlModel ? sqlModel->relationModel(index.column()) : 0;
qsqlrelationaldelegate.h:93:87: error: zero as null pointer constant [-Werror=zero-as-null-pointer-constant]
     QSqlTableModel *childModel = sqlModel ? sqlModel->relationModel(index.column()) : 0;

Change-Id: I6e7de3cccf705b74018f522165886104194bf9be
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-02-28 15:04:47 +00:00
Allan Sandfeld Jensen
6dc7e468df Do not include qfloat16 tables in arm64 builds
The FP16 extension in IEEE mode is mandatory for Aarch64, so there is
no aarch64 configuration where the tables will be needed for conversion.

Change-Id: I9804e55c193cc9b5adcaedb720d8b980624139cc
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Glen Mabey <Glen.Mabey@swri.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-02-28 12:01:18 +00:00
Thiago Macieira
04b8db3d57 Fix parsing of day-of-week names that start with another name
Task-number: QTBUG-59159
Change-Id: I95c9e502ccc74af3bcf0fffd14a69e0cd27ce96b
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-02-28 10:40:40 +00:00
Stig Bjørlykke
2ae8292d03 QList: Avoid implicit conversion warning
This fixes compiling an application using QList and -Wshorten-64-to-32
on a 64-bit system without getting this warning:

 ... 5.8/clang_64/lib/QtCore.framework/Headers/qlist.h:897:26:
 warning: implicit conversion loses integer precision: 'long' to 'int'
 [-Wshorten-64-to-32]
           int removedCount = e - n;
               ~~~~~~~~~~~~   ~~^~~

Change-Id: I688ed086805c431821c2ee6078fa5aeb631e7a07
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-02-28 09:57:03 +00:00
Stig Bjørlykke
17d780ad45 QTimer: Avoid implicit conversion warnings
This fixes compiling an application using QTimer and -Wshorten-64-to-32
on a 64-bit system without getting this warning:

 ... 5.8/clang_64/lib/QtCore.framework/Headers/qtimer.h:171:21:
 warning: implicit conversion loses integer precision: 'rep'
 (aka 'long long') to 'int' [-Wshorten-64-to-32]
         setInterval(value.count());
         ~~~~~~~~~~~ ^~~~~~~~~~~~~

Change-Id: I3e0407a7193c841308f7271c41a8dd5a2eb2a534
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-02-28 09:56:13 +00:00
Nico Vertriest
657bea873b Doc: added info about return type for function QMutex::try_lock()
qmutex.cpp:266: warning: Undocumented return value

Change-Id: Ib93a5a2505f663f266871dbe5582fb5856096889
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
2017-02-28 09:34:05 +00:00
Simon Hausmann
4a31eca4ce Make it possible to specify the RCC data version format
After commit d207738245 we unconditionally
write version two, but it seems useful to allow users to specify the
version explicitly.

Change-Id: I81d3de3d7f87318653f89bf10e3618becd8329d6
Task-number: QTBUG-58769
Reviewed-by: hjk <hjk@qt.io>
2017-02-28 08:44:50 +00:00
Joni Poikelin
e7f019011a Fix wrong codec with MySQL plugin in newer versions
Since MySQL now properly supports UTF-8 through utf8mb4 option, it
caused regression on systems which did not use UTF-8 encoding by default
which caused queries to fail as they were converted into system codec.
To fix this, simply use UTF-8 encoding for queries when MySQL supports
it.

Task-number: QTBUG-59176
Change-Id: I21cc9102b15df15a31bc7c74469321c44a257946
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2017-02-28 05:10:47 +00:00
Marc Mutz
49c558eb0d QSizePolicy: inline toControlTypeFieldValue()
The implementation now uses the relaxed-constexpr
qCountTrailingZeroBits() function from QtAlgorithms, making the
QSizePolicy(Policy, Policy, ControlType) constructor constexpr on
C++14 compilers. The explicit check for DefaultType remains to keep
the constructor C++11-constexpr when called with just (Policy,
Policy).

Extend the constExpr tests a bit.

Change-Id: I59690f0921d9bdee08e3615d0d1f4a9b92870c32
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2017-02-27 23:09:27 +00:00
Marc Mutz
bc641ad9f8 QSizePolicy: simplify implementation
Even though we revoke its Q_COMPILER_UNIFORM_INIT for certain bugs
that affect existing usage in Qt, it turns out that MSVC 2013 supports
enough of braced initialization to make the macro magic in
Bits::transformed() moot.

Change-Id: I824d7fa298a2b95b4ad45c9e259e91c5ececfc0c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-02-27 21:16:04 +00:00
Olivier Goffart
740b5c1fea Fix UB in QWidgetResizeHandler::eventFilter
Unconditional cast to a QMouseEvent while the event might also be a
QKeyEvent.

Change-Id: If5eb6fbad6e4440c167ff95298f51efde1834217
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-02-27 18:25:00 +00:00
Shawn Rutledge
2b2fefb336 xcb: correct conversion of AbsX/AbsY to tablet width and height
This was a mistake in cb37ab8298

Change-Id: I5897ceb34ab4aa1655efd20697d0e761cf7796b1
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Alexander Volkov <a.volkov@rusbitech.ru>
2017-02-27 15:45:29 +00:00
Ulf Hermann
44af54419e Properly use the "process" feature
Replace all QT_NO_PROCESS with QT_CONFIG(process), define it in
qconfig-bootstrapped.h, add QT_REQUIRE_CONFIG(process) to the qprocess
headers, exclude the sources from compilation when switched off, guard
header inclusions in places where compilation without QProcess seems
supported, drop some unused includes, and fix some tests that were
apparently designed to work with QT_NO_PROCESS but failed to.

Change-Id: Ieceea2504dea6fdf43b81c7c6b65c547b01b9714
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-27 15:44:46 +00:00
Marc Mutz
3fdbba7a7a QSizePolicy: mark as relocatable type
Use Q_RELOCATABLE_TYPE now that we have it.

Change-Id: I04bb946695ebb9f0899bb73becbef301805389ef
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-02-27 15:36:12 +00:00
Giuseppe D'Angelo
9d82b1586d QEasingCurve: mark as shared
Requires no further changes.

Change-Id: Ib280fa69a752aefa1c29fc5f0eb292e99b96270a
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2017-02-27 15:35:59 +00:00
Laszlo Agocs
dfc338613e Make QPlatformSurface events work with QWindowContainer
Embeddeding a QWindow via QWidget::createWindowContainer() fails to
deliver the SurfaceAboutToBeDestroyed event. This breaks any OpenGL
or Vulkan based QWindow that releases resources upon this event, and
is particularly critical with Vulkan where the only way to do properly
ordered swapchain - surface cleanup is via this event.

In the non-embedded case close() eventually ends up in an explicit
destroy() in QWindow. In the embedded case destroy() only gets called
from ~QWindow. This then silently breaks since the subclass' reimplemented
event() virtual is not getting called anymore.

To remedy the problem, simply add an explicit destroy() to
QWindowContainer.

Task-number: QTBUG-55166
Change-Id: I1671e8f4d39f6c44e19eca7b9387f55fe3788294
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2017-02-27 12:38:08 +00:00
Oswald Buddenhagen
85b30fda7c fix detection of static icu under unix
the library has a dependency on libdl.

Task-number: QTBUG-58301
Change-Id: I36567ded32980b241ff2f01cfdec044510405a75
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-02-27 12:20:50 +00:00
Oswald Buddenhagen
0d7ed8f5f3 streamline libdl detection and linking
instead of having a library and a test, use a library with two sources,
the first being empty (i.e., just libc). this allows us doing away with
the "libdl" feature, and using just the "dlopen" one.

subsequently, replace all LIBS+=$$QMAKE_LIBS_DYNLOAD with
QMAKE_USE+=libdl.
the definitions of QMAKE_LIBS_DYNLOAD remain in the qmakespecs for
backwards compat only. n.b.: the only specs where it is not empty or
"-ldl" (i.e., what we support now) are the hpux ones, where the library
is called 'dld'.

technically, the "library" feature should depend on '!unix || dlopen', but
that's for a later patch.

Change-Id: Ib8546affc4b7bc757f1a76729573ddd00e152176
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2017-02-27 12:20:44 +00:00