Commit Graph

33652 Commits

Author SHA1 Message Date
Liang Qi
71ec67a0fd Merge "Merge remote-tracking branch 'origin/5.9' into 5.10" into refs/staging/5.10 2017-09-06 17:57:12 +00:00
Gabriel de Dietrich
03bcf389c0 QMacStyle: Remove theme test in palette polish
macOS doesn't use different colors for alternate rows
between blue and graphite themes. It's always the same
light gray, as seen on Finder, and we're already getting
it right.

Change-Id: Ic9ff1712ed90728bcc7613d9fe9eeb7a9c90f59b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-06 16:07:08 +00:00
Gabriel de Dietrich
2466e17154 QMacStyle: No more background pattern pixmap
This ain't used nowhere.

Change-Id: I107bbc4d8cd223bbc726c3ce2ea00059d97e6f2c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-06 16:06:55 +00:00
Gabriel de Dietrich
0cfe31b122 QMacStyle: Update HIG link, reference version of IB
Change-Id: Iae56312a78431613737b69c0e16472cafff35da9
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-09-06 16:06:26 +00:00
Gabriel de Dietrich
dcef3b1c02 QMacStyle: Render only the selected scrollbar subcontrols
This provides proper support for proxy styles wanting to
override only parts of QSlider.

Change-Id: Ica1e87c42c8d793708c388cb19f11105c0fc97ad
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-06 16:06:14 +00:00
Gabriel de Dietrich
5fa773607e QMacStyle: De-HITheme QSlider
This one uses a hybrid approach. Standalone NSSliderCell has
proven to be quite useless. However, we can access the cell
of a properly configured NSSlider. Then, the cell can be to
render all the QSlider parts as well as getting their rects.

Change-Id: Idedad3e6d80e70631b01125596ed24dae5fde6c7
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2017-09-06 16:05:54 +00:00
Gabriel de Dietrich
ad8f11c756 QCocoaKeyMapper: Remove unused member variables
These are written into, but never read from.

Change-Id: I23af5dbb2d162b06ed93f32459140a8385d65a95
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-06 16:05:48 +00:00
Gabriel de Dietrich
c4c00ea7e4 QMacStyle: No more SInt32
Change-Id: I00805bf55566059f842203faaad13a6d4a5b96f4
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-09-06 16:05:40 +00:00
Liang Qi
19dd2ca93b Merge remote-tracking branch 'origin/5.9' into 5.10
Conflicts:
	examples/opengl/qopenglwidget/main.cpp
	src/3rdparty/pcre2/src/pcre2_printint.c
	src/plugins/platforms/cocoa/qnsview.mm
	src/widgets/widgets/qcombobox.cpp

Change-Id: I37ced9da1e8056f95851568bcc52cd5dc34f56af
2017-09-06 13:26:31 +02:00
Stephan Binner
d332a2d3cc Convert features.networkdiskcache to QT_[REQUIRE_]CONFIG
Change-Id: I8ba76ba1c7210169df14ffab7dabf4b4be086fb9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-06 06:51:00 +00:00
Stephan Binner
c6b9c6e5f2 Convert features.socks5 to QT_[REQUIRE_]CONFIG
The sources were already added conditionally in the project file since
179fe5981f.

Change-Id: I0baaec2e772f3e596d311c1973b9745aa2b80423
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-06 06:50:54 +00:00
Stephan Binner
029e5cde33 Convert features.ftp to QT_[REQUIRE_]CONFIG
QUrlInfo is used only by the FTP implementation, so it uses the same
conditionals.

Change-Id: Ia15abf44d2a538e90b792a31c65926cc9e16aecf
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-06 06:50:47 +00:00
Thiago Macieira
9429226524 Don't call the qAddPreRoutine routines with the mutex lock held
One of those routines could recurse back. This was a pre-existing
problem for Pre-Pre routines, but commit a92ee2518fdbd77fcbe3f8ef4f412aa
made qAddPostRoutine also use the same mutex.

Task-number: QTBUG-63008
Change-Id: I38341f8155354cc4a776fffd14e17a037d25475f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
2017-09-06 06:48:39 +00:00
Jani Heikkinen
68b8f2d408 Add change file for Qt 5.6.3
Task-number: QTBUG-62722
Change-Id: Ibb2f27774b3080eceead5c2228cf59db382205e3
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-05 14:54:38 +00:00
Gatis Paeglis
0919025ff5 vnc: remove unused qlibinputhandler_p.h include
It has been there since the first commit 6d70e543aa
of VNC platform plugin, and it has never actually been used.

Change-Id: I6a9c4e6a27de042e18650fa88728a1849a99b094
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-05 14:24:54 +00:00
Gatis Paeglis
b0da063d8c libinput: make scrolling consistent with other platforms
Default scroll increment on other platforms (e.g. XCB, Windows) is 120.
With libinput it was 15 * 120 = 1800, which results in non-smooth scolling
experience. This patch also replaces deprecated versions of
QWindowSystemInterface::handleWheelEvent().

Change-Id: I363f13a2922fd871a93dbd1bd611778fa18f6122
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-05 14:16:48 +00:00
Gatis Paeglis
90d5959dc4 libinput: remove unused signals
I guess this signal pattern was copy-pasted from evdev input integration
code, where we use similar signals in combination with QDeviceDiscovery.
In libinput, device notifications are delivered via libinput APIs, so
these signals are not necessary. In evdev we do some logging from
slots that are connected to these signals. In libinput this is handled
via libinput_log_set_handler. As we can see, we can simply drop this code.

Change-Id: I50b519784e89b59ceeb3cf296780705fe98a8cbf
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-05 14:16:43 +00:00
Gatis Paeglis
35ed524d92 evdev*,libinput: use functor-based connections
This results in less boilerplate code, among other benefits that
come with functor-based connections. Simple expressions have been
converted to use lambda.

Change-Id: I6887980524027eada24beed95e6f9ba43f0fc8d5
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-05 14:16:38 +00:00
Mitch Curtis
30609e684f testlib: Print event coordinates and window size when event is outside of window
This gives the user a much clearer understanding of which part of the
test caused the warning.

Old warning:

WARNING: tst_controls::Default::Dial::test_linearInputMode(mouse) Mouse event occurs outside of target window.

New warning:

WARNING: tst_controls::Default::Dial::test_linearInputMode(mouse) Mouse event at 501, 179 occurs outside of target window (450x450).

Change-Id: I2943d79bab5a808e9b5b721758db216b91a07bbd
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-09-05 11:45:46 +00:00
Friedemann Kleint
9d8a4d16c6 Windows QPA: Do not call EnableNonClientDpiScaling() on Desktop GL Windows
It causes artifacts when moving the windows between monitors.
Amends e8ecde99df.

Task-number: QTBUG-53255
Task-number: QTBUG-62901
Change-Id: Ia8b0f760370887a75efa05bc9736075afebfe069
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2017-09-05 11:02:40 +00:00
Friedemann Kleint
e29b72384b Hello GL2 example: Fix exit crash
Bail out of cleanup() when run 2nd time.

Task-number: QTBUG-60626
Change-Id: I8a9be2fcfb0e8a5584ce8ed7952affff24bd2a33
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-05 10:55:11 +00:00
Friedemann Kleint
b3717fc7f0 OpenGL examples: Introduce QCommandLineParser
Task-number: QTBUG-60626
Change-Id: I6d102327c89206fcdce10f3ac04e112270b11ad2
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-05 10:54:15 +00:00
Tor Arne Vestbø
d64940891d Add qmake feature and configure option to use ccache
Enabled via configure --ccache, or CONFIG += ccache in 3rd party
projects.

Ensures that we use the right sloppiness and other ccache options
during compilation.

Task-number: QTBUG-31034
Change-Id: I696b3d3f0398873a29b93d1bc2b4d4e06ef23dc9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-05 10:47:35 +00:00
Morten Johan Sørvig
4250993c42 macOS: Don’t color convert the backing store
The backing store was assigned the sRGB color profile
as an unintended side effect of the QImage -> CGImage
conversion function refactoring in ac899f6d. This
caused Core Graphics to add a color convert step, which
in some cases caused performance issues.

Restore fast, previous behavior by assigning the target
display color profile to the backing store image.

Color correctness is still a goal, but we’ll add API
for it and make it opt-in.

Task-number: QTBUG-61384
Change-Id: Ia36d29404c64d8030a100f6a71816d84e484308b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-05 09:32:35 +00:00
Morten Johan Sørvig
0adc14d8db macOS: Don’t color convert the backing store
The backing store was assigned the sRGB color profile
as an unintended side effect of the QImage -> CGImage
conversion function refactoring in ac899f6d. This
caused Core Graphics to add a color convert step, which
in some cases caused performance issues.

Restore fast, previous behavior by assigning the target
display color profile to the backing store image.

Color correctness is still a goal, but we’ll add API
for it and make it opt-in.

Task-number: QTBUG-61384
Change-Id: I107f06a881a34fa711b386265d8dc2edfb246624
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-05 09:32:32 +00:00
Andre de la Rocha
a2a5b7a697 Windows: Make dropped files be opened or attached
Adds QWindowsDropDataObject as a QWindowsOleDataObject subclass
specialized for handling Drag & Drop, which only allows "text/uri-list"
data to be exported as CF_HDROP, to allow files dragged from
Qt applications and dropped into other applications to be recognized as
attachments or opened. Otherwise, files would be imported as URLs and
inserted as local hyperlinks.

[ChangeLog][Important Behavior Changes][Windows] On Windows, a drag
& drop operation of local files URIs, like QListView items backed by a
QFileSystemModel, will result in the attachment or opening of the files
by the target application, instead of the creation of hyperlinks.

Task-number: QTBUG-62662
Change-Id: I51efa4a56574b5e5fb3ee736ede14b5da24caac4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-09-05 08:22:45 +00:00
Giuseppe D'Angelo
c7766a41e3 PCRE2: remove pcre2_printint.c from the imported sources
Follow up of fc37e03699:
while the file is #included from pcre2_compile.c, it's never
actually compiled (seems to be about a debugging aid for developing
PCRE2). So it's safe to get rid of it.

Change-Id: I0affaad730e8c5678d3431e47d5fee0dbedc0e78
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-05 07:12:55 +00:00
Giuseppe D'Angelo
e8e0895a33 PCRE2: disable JIT on all UIKit platforms
Both iOS and tvOS need to have JIT disabled, so use the uikit qmake
scope for that. This was already done for PCRE 1, but the corresponding
change was lost for PCRE 2 (probably due to a bad merge).

Change-Id: Iac7997880c13b34ced46c63b748980c6fb700a0f
Task-number: QTBUG-62993
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-09-05 07:12:49 +00:00
Tor Arne Vestbø
54c3ab7a10 macOS: Fix support for issuing requestUpdate during expose event
AppKit will clear the needsDisplay state of a view when finishing the
display cycle, so if the client requested an update when delivering
the expose event, the update request would not be delivered unless
the view was otherwise exposed in some way at a later point.

Task-number: QTBUG-62964
Task-number: QTBUG-62963
Change-Id: I5ac9bf2f19af775294d093c8b7a414af22efee92
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2017-09-05 05:50:40 +00:00
Tor Arne Vestbø
67a075f485 iOS: Fix implicit conversion warning in QIOSEventDispatcher
Change-Id: Id9650dde73e1cfbe8626b4d31b86e9bbf007be89
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2017-09-04 20:50:43 +00:00
Gatis Paeglis
de7ffee747 evdevtablet: don't use qpa compatibility function
This patch does not attempt to add the necessary functionality
to support other tablet buttons, it simply replaces deprecated
version of QWindowSystemInterface::handleTabletEvent(), by keeping
the previous logic.

Task-number: QTBUG-62886
Change-Id: I23597077774d482492136fda2e998700f8b27e9c
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-04 18:05:46 +00:00
Gatis Paeglis
c06fb51b8a eglfs_x11: remove unused event handlers
Logic that utilizes these event handlers was added by
f610814b05 and few months
later broken by 2b20ed5af4.
The original code used an event mask to select press/release/
motion events when creating window with XCreateWindow.
The XCB replacement (xcb_create_window) changed event mask to 0,
which means that these event handlers have been unused for
about ~4 years and can be safely removed. The eglfs_x11
integration receives mouse input directly from libinput/evedev.

Change-Id: Iac1521365445b8423898a16c3e609deb0806ce5e
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2017-09-04 18:05:17 +00:00
Àlex Fiestas
7d32339762 Pass m_drag_icon_window to getNativeMousePos instead of Event QObject
The QWindow passed to eventFilter is static so it might be in a
different screen when we call getNativeMousePos, resulting in negative
position and all sorts of glitches.

Change-Id: Ibc848c6d85d8b6932ee379aa77851094212a0db2
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2017-09-04 14:35:18 +00:00
Eskil Abrahamsen Blomfeldt
52bda430af macOS: Reset composition when focus object changes inside window
When the focus object inside a window changes and we are
currently composing text, we have to cancel composition to avoid
getting into an inconsistent state. This is what already happens
if you switch to a different top level window.

Note: Because we limit the user's ability to change focus inside
a window when composing text, this would only happen under
certain circumstances, such as creating a new MDI window with
an editor while still composing text in a previous one.

[ChangeLog][macOS] Switching focus objects inside a top level window
while composing text using dead keys or input method events would
leave the application in an inconsistent state. The composition
now automatically cancels when the focus object changes.

Task-number: QTBUG-59222
Change-Id: I06792a7db1441dcc5c87e4bf0861b422a25f7f7c
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2017-09-04 13:51:19 +00:00
Tony Sarajärvi
f9fea20c10 Extend blacklisting of tst_QWidget::maskedUpdate to openSUSE 42.3
Task-number: QTBUG-51399
Change-Id: I7fcc52da2ce539251f6bad0394c4580dd76439a7
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-04 12:11:47 +00:00
Tony Sarajärvi
a2dbf1e779 Blacklist tst_QItemDelegate::enterKey tests on openSUSE 42.3
Task-number: QTBUG-62967
Change-Id: I42f25120f1a9e2ef6a9a147e4f36edcdff2922a6
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-09-04 12:11:44 +00:00
Stephan Binner
093064fdeb Convert features.completer to QT_[REQUIRE_]CONFIG
Change-Id: If45a46c08b37d245229a39f3d6ffbb34154934f2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 11:28:02 +00:00
Stephan Binner
66d9a2b997 Convert features.buttongroup to QT_[REQUIRE_]CONFIG
Change-Id: Id5df397d0aa4cad7f586ef7303902d8ee7b88f1d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 07:53:34 +00:00
Stephan Binner
6380729c48 Convert features.effects to QT_[REQUIRE_]CONFIG
Change-Id: I8421b5e81dc21e8f9f6bdd9f714fb3f535618a3c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 07:53:26 +00:00
Stephan Binner
8a93f50695 Convert features.resizehandler to QT_[REQUIRE_]CONFIG
Change-Id: I44ed1be0cf56daf7dc2a7e4bbd3402419a04a530
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 07:53:17 +00:00
Stephan Binner
dab49434d8 Convert features.scrollarea to QT_[REQUIRE_]CONFIG
Change-Id: Ifc7b0a6b025c282234b4aeaf23daecff8a558236
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 07:53:08 +00:00
Stephan Binner
135da45318 Convert features.keysequenceedit to QT_[REQUIRE_]CONFIG
Change-Id: Id8ffd7f0e6ef4bdc43959179c26342ecee75b280
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 07:52:52 +00:00
Orgad Shaneh
ced0f54ec3 Fix resolution of relative links on Windows
[ChangeLog][QtCore][QFileInfo] Relative symbolic links on Windows are
now resolved to their absolute path by symLinkTarget().

Task-number: QTBUG-62802
Change-Id: I5826517130bd389aef994bf3f4b6d99b2a91b409
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-09-04 07:35:09 +00:00
Stephan Binner
314a591461 Convert features.menubar to QT_[REQUIRE_]CONFIG
Change-Id: Idbd4978852fa280dd18a5684469d499da3892126
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 06:40:14 +00:00
Stephan Binner
b649717784 Convert features.stackedwidget to QT_[REQUIRE_]CONFIG
Change-Id: I06b7fb9736620dcdfda21fc0a06e13cb02f9a1e7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-09-04 06:40:02 +00:00
Frederik Gladhorn
9831118378 Merge dev into 5.10
Change-Id: I5fb5e7e6e57bb5db6fcb1f670f7f6cbc8def2d60
2017-09-02 10:27:09 +02:00
Giuseppe D'Angelo
fc37e03699 PCRE2: remove a source file from the .pro
pcre2_printint.c does not need to be compliled as a standalone source
file, as it's #included from pcre2_compile.c. Apparently qmake does not
detect this in all cases, and sometimes tries to compile pcre2_printint.c,
resulting in compile errors.

Change-Id: If494e5853b52ff1387bfb24f3847b73edcc837b7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2017-09-01 17:03:42 +00:00
Giuseppe D'Angelo
f71a99c0eb QModelIndex: use std::less to compare pointers
Comparing pointers not belonging to the same array requires using
std::less.

Change-Id: I2725aa0899f6b9fece73dadd9ee5c10242d50ae1
Reviewed-by: David Faure <david.faure@kdab.com>
2017-09-01 17:03:33 +00:00
Thiago Macieira
b5d471d0c2 QNativeSocketEngine: disable unused methods about OS socket buffer
They aren't used in the API, so let's stop wasting library size.

Change-Id: I6e9274c1e7444ad48c81fffd14db247ecf825a57
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2017-09-01 16:40:36 +00:00
Thiago Macieira
ca92ee2518 Make qAddPostRoutine & family thread-safe
If one wants to add them on demand, threads may have started, so these
functions should be thread-safe. That includes the calling of the
registered functions: some other thread could be adding post routines
too. Of course, if you're racing, it's your own fault, but we need to
support the routines registered with qAddPostRoutine adding more post
routines.

[ChangeLog][QtCore] qAddPostRoutine() and qRemovePostRoutine() are now
thread-safe.

Task-number: QTBUG-62915
Change-Id: I38341f8155354cc4a776fffd14dffa68bde8345d
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2017-09-01 16:40:33 +00:00