Commit Graph

34786 Commits

Author SHA1 Message Date
Albert Astals Cid
bc632bc2bf QUnixPrintWidgetPrivate::_q_printerChanged: Update state correctly
We need to update the printer output format and the current print device
when changing the printer so that if the user opens the properties dialog
for that printer it reflects correctly the selected printer.

Change-Id: Ib6767a74b74b8eebe43ff17006b6105c483a08b6
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-01-09 15:42:25 +00:00
Renato Araujo Oliveira Filho
f6fd3f18d3 Validate printer duplex mode
Disable unavailable duplex options
Remove redundant option on advanced tab

Change-Id: Ie09c9ffd637b521210e3d7d4f15300792f910996
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
2018-01-09 15:42:17 +00:00
Robert Szefner
ca4a76350a Small optimalization for NULL values
No need to call PQgetvalue() before PQgetisnull().

Change-Id: Ie83ee577b082dbe9d9ca2e86212a281abebdde6e
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-01-09 14:13:52 +00:00
d3fault
43f2d43e8f Add doc explaining the gotcha when connecting a signal to qApp->exit
Change-Id: I981e4bfdf679bf755665748e9d3b389a94561e55
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Martin Smith <martin.smith@qt.io>
2018-01-09 13:21:21 +00:00
Andy Shaw
f2b802f923 Add HAVE_USLEEP define to give better performance where possible
Change-Id: I6fa68a7eac9001cabceabf846bc11e9ed1001d2c
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-09 09:51:56 +00:00
Mårten Nordheim
21c9b6fc58 QSsl* tests: Ensure trailing slash on directory path
Then we don't need to add a leading slash. (minor clean-up)

Change-Id: I86af224841009fda838e7cb89d47d324963328c9
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-09 08:52:46 +00:00
Mårten Nordheim
a5c58d503d Revert "Adapt the QSsl* tests to use the resource system"
This reverts commit e1600c1a73.

The commit missed the fact that TESTDATA exists. Which supports
wildcards and then can automatically pick up new files when added (as
long as they match a wildcard) and then you don't need to maintain a
giant qrc file.

Change-Id: Ie31fadb5ef6e8dfe6105f4f9764292f78cffb512
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-09 08:52:41 +00:00
Sérgio Martins
a79d9da8e0 Fix build due to missing QDebug include
The build just passes on Qt CI by chance.

Change-Id: I3bfef12b48df22fa64d92af9cd345bfc984c9923
Reviewed-by: David Faure <david.faure@kdab.com>
2018-01-09 08:04:07 +00:00
Friedemann Kleint
da3a600824 QWindowsXPStyle: Speed up level window loop in helper winId()
Rewrite the loop using QGuiApplication::allWindows() to avoid
the creation of temporary containers by
QApplication::topLevelWidgets() and expensive checks.

Task-number: QTBUG-64072
Change-Id: I56ef29b12f7bcbe274f3e00a6007d75d33f22b10
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
2018-01-09 07:20:23 +00:00
Martin Smith
a473103734 doc: Remove undef of Q_GADGET
Someone, almost certainly this writer, undefed Q_GADGET for
qdoc, but this was a mistake that caused clang to report a
lot of errors for undefined variable. The undef of Q_GADGET
is now removed.

Change-Id: I39fb09443110b60bbcb16cf350f38c1eac773d8a
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-09 06:40:21 +00:00
Martin Smith
49e2746e16 doc: Correct clang parsing errors in qvariant.h
Some old uses of Q_QDOC to prevent the old qdoc C++ parser
from seeing declarations it didn't need to see were preventing
clang from seeing declarations it did need to see. These have
been removed, and some internal documentation has been added to
account for some declarations that suddenly became public but
should not be seen in the Qt API.

Change-Id: Iccf423e5cf8767f0a271150ab59bea54cf90ac46
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-09 06:40:14 +00:00
Martin Smith
32c942ce85 doc: Move use of Q_CLANG_QDOC that caused compile-time assert
It caused a compile-time assert in clang that should not have occurred.
It is now moved passed the assert macro.

Change-Id: I8311992617de7837ca4604fcc3e5afb17dcda65d
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-09 06:40:05 +00:00
Martin Smith
643290e49b doc: Remove Q_QDOC declarations that are no longer needed
clang-qdoc understands Q_OBJECT, so it sees the declarations
that appear there.

Change-Id: I669be13af59269a0e108e0988d9b4f7779274c7c
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-09 06:39:54 +00:00
Martin Smith
986b275c51 doc: Remove unnecessary #ifndef Q_QDOC
It was used to prevent qdoc from seeing the entire include
file, but clang qdoc needs to see it.

Change-Id: Ib8dbcdcd68f2003f4dd89ed6a5c9e1b65bc1c67c
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-09 06:39:43 +00:00
Martin Smith
61f4820c13 doc: Remove unnecessary qdoc declaration hack
A special declaration for qdoc was no longer needed.

Change-Id: Ib3486be5c016d57cf09ef89fc8df29045fef0577
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-09 06:39:21 +00:00
Martin Smith
0fd0059a13 doc: Correct qdoc warnings in qobject.cpp and qmetatype.cpp
clang required adding template clauses to a few \fn commands.
There were also a few cases where Q_QDOC was changed to Q_CLANG_QDOC
and a few cases where special declarations for qdoc were removed in
favor of the actual declarations.

Unfortunately, a few qdoc warnings remain unfixed for classes
QObject and QMetaType, but these might be caused by minor bugs
in clang-qdoc itself, so they will be fixed there.

Change-Id: Ib586628cb6d2aa9cf4bcad303b5af09b412a7e57
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-08 19:10:50 +00:00
Jan Grulich
beeb748b2c Fix support for flatpak FileChooser portal
Properly parse filters. First captured substring in QRegularExpression
is at index 1, with index 0 you access the full captured string.

Change-Id: I68b6e314171536a08c606e5acd0f7211c1c3c254
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-01-08 18:41:04 +00:00
Johan Klokkhammer Helsing
923dd4fe8f Add a tech preview eglfs device integration for VSP2 composition
This creates a new device integration for eglfs, eglfs_kms_vsp2, that's very
similar to eglfs_kms_gbm, but includes an extra step for doing VSP2 hardware
compositing.

The main Qt content is drawn to double buffered off-screen GBM buffers which
are converted using drmPrimeHandleToFD so we get DMA buffer file descriptors
that can be used by the VSP2 blending hardware. The blending hardware writes to
double buffered DRM dumb buffers, which are flipped with drmModePageFlip.

Communicating with the VSP2 is done using the Video4Linux2 (V4L2) streaming
API. There are two steps in creating abstractions for this. First, there is the
QLinuxMedia class that consists of a Qt style wrapper for V4L2 without anything
VSP2 specific. Second, there is QVsp2BlendingDevice which hides some of the
streaming details of the VSP2 and has some level of error recovery. Both
classes include a fair bit of logging and error reporting.

The patch is written with Wayland compositors in mind, but should work for
other use cases as well.

This is just the basic support to make compositing work, additional features
may be added in subsequent patches, i.e:

- Auto-detect VSP2 (-feature-vsp2 currently needs to be explicitly enabled).
- Support for setting the alpha value of a layer.
- Support clipping layers.
- Support for scaling layers.
- Support for other output formats than RGBA32.
- Hardware cursor support.
- Support foreign layers below the main Qt layer.
- Support for memory mapped and user pointer buffer types (currently only DMA
  buffers are supported).

Change-Id: I1917d2dbdbaeded0d9c021baaa799d56afe1a9bd
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-01-08 11:51:43 +00:00
Ulf Hermann
8e72f51257 XCB: Undef KeyPress and KeyRelease also when not using xinput2
The defines come from X.h here, which is included via Xutil.h.

Change-Id: I19887424cff28567fcbb1c352b42bb9d750b1928
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2018-01-08 11:43:11 +00:00
Giuseppe D'Angelo
69496d4e22 Introduce QAbstractItemModel::checkIndex()
When implementing a custom model there's the habit, in each and every
function that takes a QModelIndex, to carefully checking the index
passed by the caller. This index is checked for "legality" (*): does the
index belong to this model, is the index pointing to an existing row and
column, and so on.  These checks are hand-rolled and, as such, slightly
different and possibly incomplete (i.e. wrong) every time.

What's worse, these checks are implemented via "ordinary" code (if
statements). However, passing an illegal index to a QAIM function is a
precondition violation, and as such does not (and must not) be
checked in ordinary conditions, as it triggers undefined behavior. On
the other hand, while debugging a custom model or a custom hierarchy
of (proxy) models, having such checks in place can be a significant
aid.

Enter checkIndex(): a debugging helper for QAbstractItemModel and its
subclasses. checkIndex() centralizes the checks for legality of a
given index. User code is free to assert on it, or have some other
fallback mechanism in case a check fails.

(*) Using "legality" here instead of "validity" in order to avoid
confusion between QModelIndex::isValid() and what checkIndex() really
does.

[ChangeLog][QtCore][QAbstractItemModel] Added
QAbstractItemModel::checkIndex(), a debugging function for
QAbstractItemModel subclasses.

Change-Id: I1eea0586b1ac3ededdbfbf46759145022dc5ad86
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
Reviewed-by: David Faure <david.faure@kdab.com>
2018-01-08 09:41:53 +00:00
Marc Mutz
9c53f4d33a QStringBuilder: add support for QStringView
[ChangeLog][QtCore][QStringBuilder] Added support for QStringView.

Change-Id: I5b6803397b107ef69d198a935b3ba4339ac95087
Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-08 09:41:43 +00:00
Marc Mutz
641e010cc7 QStringBuilder: add support for char16_t{,*,[]}
[ChangeLog][QtCore][QStringBuilder] Added support for char16_t
characters and strings.

Change-Id: Iee727f07226f2a326ae0df28d44930336cd8f71e
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-08 09:41:38 +00:00
Robert Szefner
6d0c8825f9 QPSQL: Add support for multiple result sets
This change adds support for multiple result sets in PostgreSQL.

[Important Behavior Changes] The QPSQL driver now supports multiple
result sets. Since QPSQL previously did not support multiple result
sets, there may be some compatibility issues with the existing code
that executed several queries as one and were expecting to get
the results of the last one. In this case use QSqlQuery::nextResult()
to move to the last result set.

[ChangeLog][QtSql][QPSQL] Added support for multiple result sets

Change-Id: I2bfc91f512c4dac83116f3aa42833839a6da084c
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-01-08 09:10:10 +00:00
Eskil Abrahamsen Blomfeldt
cf35bc21c0 Hide EUDC font better when it is available
In ff2ae36551 we added support for
the End User Defined Characters font when it is available, and
it was added as the first fallback font to avoid being overridden
by a symbol font.

An unintended side effect was that we would also override the
default fonts for the selected style hint, so in e.g. the textedit
example, all the text would default to EUDC. We now add it after
the default style hint font instead. We also mark it as a
private font family, since it should not be shown in the font
combo box as a selectable font, but should only be used automatically
as fallback for PUA characters.

Task-number: QTBUG-65308
Change-Id: Id2ffd058a9f1d660cf2b9b1383ba1fdb10dcc97e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2018-01-08 07:58:33 +00:00
Andy Shaw
b4869b8e93 Cocoa: Make AA_MacDontSwapCtrlMeta work
Task-number: QTBUG-22775
Task-number: QTBUG-51293
Change-Id: If615426001a1ea482f854f49cbae33ca1c954e9a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2018-01-08 07:18:01 +00:00
Friedemann Kleint
b096c53d59 QtCore: Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.

Task-number: QTBUG-51673
Change-Id: I211703189ff12f827d94914093369736b6e65d4a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-01-08 04:52:43 +00:00
David Edmundson
78f234d5dd Send NET_WM_SYNC on swapBuffers when using EGL
If a user is using EGL on X, we need to reply to sync requests in the
same way that we do in the GLX backend.

Change-Id: I950de284685dc0ead896688c434828ab1b9c673f
Reviewed-by: Aleix Pol
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2018-01-07 21:45:05 +00:00
Marc Mutz
859a78c0c1 QStringBuilder: clean up test
Add some macros to enable systematic testing of QStringBuilder
expressions.

Change-Id: I6b7dbcb4a4ca0d1aebdfe7cb9861af881c0cd346
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-07 18:32:11 +00:00
Johan Klokkhammer Helsing
a8ac5aaa56 mkspec for Renesas R-Car M3
Change-Id: I2264d7346f15f8488d0f9ef3f7e190c6026d84e9
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2018-01-07 09:44:20 +00:00
Anton Kudryavtsev
79d3351855 QMenuBar: Add overloads of addAction() using Qt 5 signals and slots
[ChangeLog][QtWidgets][QMenuBar] Add overloads of addAction() using Qt 5 signals and slots

Change-Id: Ief21974213b80111f0ca87df490eb72dd6b9c9b9
Reviewed-by: Martin Smith <martin.smith@qt.io>
2018-01-06 18:48:54 +00:00
Robert Szefner
f99d2b21b8 QPSQL: Add support for forward-only queries
With this change, it is possible to significantly reduce memory
consumption of applications that fetch large result sets from databases.
The implementation is based on the new functionality called "single-row
mode" that was introduced in PostgreSQL version 9.2:

https://www.postgresql.org/docs/9.2/static/libpq-async.html

It also uses asynchronous commands PQsendQuery(), PQgetResult():

https://www.postgresql.org/docs/9.2/static/libpq-single-row-mode.html

[ChangeLog][QtSql][QPSQL] Added support for forward-only queries (requires
libpq version 9.2 or later)

[Important Behavior Changes] The QPSQL driver now supports forward-only
queries. To use this feature, you must build QPSQL plugin with PostreSQL
client library version 9.2 or later. See the Qt SQL documentation for
more information about QPSQL limitations of forward-only queries
(sql-driver.html).

[Important Behavior Changes] If you build the QPSQL plugin with PostgreSQL
version 9.2 or later, then you must distribute your application with
libpq version 9.2 or later. Otherwise, the QPSQL plugin will fail to load.

Task-number: QTBUG-63714
Change-Id: I15db8c8fd664f2a1f719329f5d113511fa69010c
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2018-01-06 08:24:32 +00:00
Christian Ehrlicher
3ed91da499 QStyledItemDelegate: adjust editor geometry also in LTR-mode
The editor geometry was adjusted to a proper size in RTL-mode, but not
in LTR-mode. To fix this inconsistency, the geometry is now also
adjusted in LTR-mode to make sure the editor has enough space for the
min/max values for the given datatype.

Task-number: QTBUG-37433
Change-Id: Iff41e854f2fa2104ab5c589d24780facc3ed5815
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-01-06 05:17:13 +00:00
Christian Ehrlicher
20604ea554 QHeaderView: respect min/maximumSectionSize property
QHeaderView::resizeSection() did not check if the given section size is
inside the min/max property bounds.
Also on calling setMin/MaximumSectionSize() the current section sizes
were not checked if they are inside the new given bounds.
This is a small behavior change when a user is setting the section size
via resizeSection() without respecting the min/maxSectionSizes.

Task-number: QTBUG-64173
Change-Id: Ia9c9eebf058d60c776ab5f8f8336642013ec553f
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2018-01-06 05:17:00 +00:00
Martin Smith
1c0ac8c4b8 doc: Correct remaining qdoc warnings in qdeadlinetimer.cpp
clang required adding template clauses to \fn commands and in one
instance, removing a formal parameter name from a \fn command. An
instance of Q_QDOC was changed to Q_CLANG_QDOC in the include file.

Change-Id: Ic7dab56705043d2db8578dfc002d2f41b927f756
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-06 00:26:31 +00:00
Martin Smith
dd3f7c5f2b doc: Correct remaining qdoc warnings in qchar.h and qchar.cpp
Several enum values had to be given \value statements, and a
member function only visible for Windows had to become visible
to clang-qdoc.

Change-Id: I47fbbcf9c5e4333abd13a041ce8fee2c13f9541d
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-06 00:26:15 +00:00
Martin Smith
66a0fecfae doc: Correct remaining qdoc warnings in QStringView
Added missing template clause to \fn commands required by clang-qdoc.
Changed a few Q_QDOC macros to Q_CLANG_QDOC.

Change-Id: I20e6855b13df6384b471fc2bb5de27b0e3b44d1b
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-05 20:22:13 +00:00
Martin Smith
81e4d039a9 doc: Correct remaining qdoc warnings in qstring.cpp
Added missing template clause to \fn commands required by clang-qdoc.
Removed several obsolete \sa targets. Added a few missing return types
to \fn commands.

Also changed a } to ] in a \fn command in qrandom.cpp.

Change-Id: I0f004a1e57507ff5fb035e822ca8b1baa7faad9b
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-05 20:22:01 +00:00
Martin Smith
4d3c55aa31 doc: Correct remaining qdoc warnings in qstack.cpp
Added missing template clause to \fn commands required by clang-qdoc.

Change-Id: Id2cb480a0780025276639c38f595cb21264bd8cb
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-05 20:21:49 +00:00
Martin Smith
d72705c96d doc: Correct remaining qdoc warnings in a few files
Added missing template clause to \fn commands required by clang-qdoc
in qsharedpointer.cpp, qscopedpointer.cpp, and qstringbuilder.cpp.

Change-Id: Ifca5b81db96e678a53e40080d351c69f14db604a
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-05 20:21:37 +00:00
Martin Smith
698fa094b3 doc: Correct remaining qdoc warnings in qscopedvaluerollback.cpp
Added missing template clause to \fn commands required by clang-qdoc.

Change-Id: Ia7bc899153cccedc28e5083d658f427d322acab7
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
2018-01-05 16:03:47 +00:00
Friedemann Kleint
53fae41e42 QWindowsXPStyle: Remove unused code
Fixes a deprecation warning about QDesktopWidget::screenGeometry().

Change-Id: Ib56b2d3f62ddca60d84b4f626571b5e444304804
Reviewed-by: Andre de la Rocha <andre.rocha@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2018-01-05 15:46:32 +00:00
Albert Astals Cid
5e2f583a67 CUPS: Fix conflict handling
The previous code assumed that ppdMarkOption returning non zero (i.e. it has conflicts)
also meant that the option wasn't applied at the ppd level, but it actually is.

What we need to do is after calling ppdMarkOption parse the tree again looking
to see if any option is conflicting and mark it as such in the UI.

Change-Id: I836f1902d14dc8c176bb06776471cbf4ed11786f
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-01-05 15:38:35 +00:00
Andy Shaw
5e9e4ccdc3 Add an option to scroll the QComboBox on macOS with the mouse wheel
Since there may be some applications that want to make their comboboxes
scrollable or not with the mouse wheel then a style hint is added to
make this toggable. It defaults to true for all platforms except macOS
to keep it in line with existing behavior.

[ChangeLog][QtWidgets][QStyle] Added SH_ComboBox_AllowWheelScrolling as
a style hint to enable/disable the use of the mouse wheel in a QComboBox.
This defaults to true in all styles except the macOS one so there is no
change in existing behavior.

Task-number: QTBUG-53094
Change-Id: I6eb61e1990bfc79e3b3ea82d7b91ee39096fa077
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
2018-01-05 15:01:43 +00:00
Friedemann Kleint
bef0db36ac QtPrintSupport: Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.

Task-number: QTBUG-51673
Change-Id: Ib87b2559d0d04fcfa70cabd134ac6936a3c2a261
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-01-05 08:32:21 +00:00
Friedemann Kleint
874c3e3c05 Direct2D: Replace class Direct2DVersion by QVersionNumber
Change-Id: Iad8c659a301c6d71b26964d84a67a51352712218
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2018-01-04 20:25:10 +00:00
Friedemann Kleint
3439f523b8 QtDBus: Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.

Task-number: QTBUG-51673
Change-Id: I0c0ba4e914a1f3b7a324c68c59544a5074f7b075
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-01-04 20:24:09 +00:00
Friedemann Kleint
98a3502fa5 QtSql: Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.

Task-number: QTBUG-51673
Change-Id: I1d0f89784f8fb698828e11ce39086501971f1756
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2018-01-04 20:23:54 +00:00
Friedemann Kleint
c9539f340e QtWidgets: Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.

Task-number: QTBUG-51673
Change-Id: I2ba95bde2b8bbcca1833dc14c344b9a14394bc1d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
2018-01-04 20:23:40 +00:00
Friedemann Kleint
5af4cb5a5a Tests: Raise minimum supported MSVC version to 2015
Remove code for older versions and streamline #ifdefs.

Task-number: QTBUG-51673
Change-Id: If456567691538b1a1f452111814c5f9eba401c43
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2018-01-04 20:23:25 +00:00
Frank Richter
3edcd9420e Support legacy X11 keymaps
Not all X server vendors support the XKB protocol. Furthermore,
while X.org seems to use keycodes that match the usual keyboard
scancodes, other vendors may not do so. This means that using an
XKB keymap suitable for an X.org server results in garbled input
with servers for other vendors.
Both of these issues are addressed by using the core keycode
information as a fallback.

[ChangeLog][X11] Fall back to X11 core keycode information
if an XKB keymap could not be determined through the connection.

Task-number: QTBUG-44938
Change-Id: I64568aa31113d5a3fd90f70c63320a497db21477
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2018-01-04 19:47:53 +00:00