Commit Graph

27043 Commits

Author SHA1 Message Date
Richard Moe Gustavsen
0e70d35f15 iOS: Return correct QLocale from QIOSInputContext
Ensure we return a correct QLocale on iOS by overriding
QPlatformInputContext::locale().

A broader implementation involving subclassing QSystemLocale
will be done in dev.

Task-number: QTBUG-48772
Change-Id: I5250bdad320cbe66d63456926f6eab6fc2865424
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2016-05-27 11:20:56 +00:00
Jake Petroules
2ceacd5372 Fix httpwindow example.
DownloadLocation is not writable on some platforms (iOS) in Qt 5.6,
and qt-project.org HTTPS does not work anymore.

Change-Id: I78bfbee1472cd39cd05ec7f846d1195d4fbb1b2c
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2016-05-26 01:55:49 +00:00
Jake Petroules
4605ca2013 Remove QNetworkReplyNSURLConnectionImpl.
This class is no longer needed now that SecureTransport is the default
SSL backend on iOS. It also uses NSURLConnection, which is deprecated
on iOS and tvOS and completely prohibited on watchOS (in favor of
NSURLSession).

[ChangeLog][Important Behavior Changes] The NSURLConnection backend of
QNetworkAccessManager has been removed, since SecureTransport is the
default SSL backend on iOS and is enabled by default. This means that
building with -no-openssl -no-securetransport will no longer provide SSL
capabilities on iOS.

Task-number: QTBUG-45031
Change-Id: I86b774fa369c7d76197bfc0504d5ad234bb47e5c
Reviewed-by: Richard J. Moore <rich@kde.org>
2016-05-26 01:51:37 +00:00
Ralf Nolden
11353ea6a5 Compile fix: C++11 usage: Replace nullptr with Q_NULLPTR
Another compile fix when compiling qt with -stdc++ c++98 option. Replace
nullptr with Q_NULLPTR.

Change-Id: I7765905031fa91250dbbcc9768b9e8b109e7594d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-25 17:29:21 +00:00
Timur Pocheptsov
f75b78a92a Cocoa integration - fix QCocoaWindow::setContentView
- QCocoaWindow::setContentView calls -removeFromSuperView
and this is not valid for a view that is a content view for a NSWindow:
using it will release the view but not clear the window.contentView pointer.
Set contentView to nil instead.

Fixing this makes visible the second problem:

- QNSWindowHelper in its -handleWindowEvent: can access content view and assumes
it's QNSView - it is not always guaranteed and can result in invalid message
sent to a view, we can use m_qtView instead (it will be nil if it
has a type different from QNSView, the call will be noop then).

Task-number: QTBUG-53325
Change-Id: I0472eba8165a04b6a3f81b2171b3bb9827ff5681
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
2016-05-25 12:55:58 +00:00
Ralf Nolden
e0ab94b525 Compile fix: for OpenBSD: <sys/select.h> not included by <sys/types.h>
On OpenBSD, <sys/select.h> isn't included in <sys/types.h>, so that
leads to compile errors on files that include qcore_unix_p.h:

qcore_unix_p.h:335:69: error: 'fd_set' has not been declared

Just move the whole select include section from qcore_unix.cpp, no
functional changes.

The patch is adapted from OpenBSD ports maintainer Vadim Zhukov
<persgray@gmail.com> patch for qt ports.

Change-Id: I35ba693440b1c1644bcfcdb69823e2b37870ad97
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-25 11:45:19 +00:00
Ralf Nolden
5c16b73243 Compile Fix: unused variable in q_refreshRateFromFb() on non-linux
To fix a compile warning under non-Linux systems, declare
framebufferDevice in q_refreshRateFromFb() as Q_UNUSED like in the other
functions.

Change-Id: I31a4e788f07d27d3cff7f6ea7fd82813a7acc7d9
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-05-25 11:45:10 +00:00
Edward Welbourne
b057fdbb12 Improve documentation of BLACKLIST file format.
In particular, make sure the word BLACKLIST appears in it so it can
actually be *found*.  Mention the comment format, mention version
suffixes, mention negation; expand and clarify the description.
Break it up into paragraphs for ease of reading.

Corrected the example to use osx, not its old platform name.  Gave it
a comment that I wish I'd found in the BLACKLIST file that obliged me
to come looking for this in the first place.  Illustrated the use of
comments to document reasons for ignoring tests.

Change-Id: I78d49b4706c0f70b714f7a410f850fb42ebb77c0
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2016-05-25 11:17:28 +00:00
Edward Welbourne
6f59926e67 qtestblacklist: check against duplicating versioned distro
Also check the version is non-empty.
Probably makes no difference, but it's obviously more correct.

Change-Id: I05eee5623ac432d2ea02f7aad874513beeb2ceeb
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-05-25 11:17:16 +00:00
Edward Welbourne
832715a679 qtestblacklist: only generate the distro and version once
We were looking up distro and version, in order to conditionally add
them to keywords if missing, on every keyword line of each BLACKLIST
that we parsed.  In particular, this meant the static holding the list
of keywords couldn't be const.  Move the distro-handling to an
intemediary function that adds to the raw keywords and supplies
one-off initialization for the list of conditions to match.

Change-Id: Ia383ec060e24b7f72d2c8fd6ae65816318daafd0
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-05-25 11:17:08 +00:00
Edward Welbourne
07667b4390 tst_QNetworkReply: Un-blacklist recently fixed test.
A recent fix now makes
authenticationCacheAfterCancel(http+socksauth)
work again, so un-blacklist it.
Added a helpful comment while I was at it.

Change-Id: I2d7eae8d80c12957d22659a82e5072301735c41f
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2016-05-25 11:12:00 +00:00
Andy Shaw
84ab88ce41 QWindowsPrintDevice: Handle return value of DocumentProperties correctly
If the return value is less than 0 which signifies an error then trying
to malloc that will cause an exception.

Change-Id: Ia0153d4cb7aac1dacb509280b45be149a093b7c4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-05-25 09:56:48 +00:00
Thiago Macieira
cd25866f65 Use the code we already have for parsing the transition time too
It's there and it's more efficient anyway.

Change-Id: Ie9fd7afe060b4e4a8052fffd144fc40647430268
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Brett Stottlemyer <bstottle@ford.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-05-24 19:31:47 +00:00
Thiago Macieira
e9041c7fc1 Fix parsing of tzfile(5) POSIX rule zone names with bracket quotes
POSIX.1-2001 allows quoting a zone name so that it can contain other
characters besides letters, by enclosing it in angle brackets ('<' and
'>'). This hadn't been used until recently (tzdata2016b), when the
Asia/Barnaul rule started using a zone name "+07" (the name variable
contained the value "<+07>-7").

Thanks to Paul Eggert for reporting and investigating the root cause.

Task-number: QTBUG-53071
Change-Id: Id5480807d25e49e78b79ffff1449bc410776cb66
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-05-24 19:31:40 +00:00
Laszlo Agocs
61521b64a4 Avoid missing paints when resizing GV with QOpenGLWidget viewport
There is nothing guaranteeing there will be a paint request after
resizeViewportFramebuffer() is called. However we must not be left
with a framebuffer with uninitialized content. So trigger an update.

Include also a half-hearted autotest. QOpenGLWidget (or QGLWidget)
viewports have not been autotested at all. Try to verify that it
is functional at least, even if we cannot check the actual output.

Change-Id: I34d78fe32e94c39dad919216b5a4f4bb2aea3cc2
Task-number: QTBUG-52419
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2016-05-24 19:16:46 +00:00
Friedemann Kleint
c96ddd9ee5 QWindowsTheme: Suppress error dialogs when calling SHGetFileInfo().
Set the error mode flag SEM_NOOPENFILEERRORBOX when calling Win32 API
SHGetFileInfo() to prevent it from prompting to insert media
as does QStorageInfoPrivate::mountedVolumes().

Task-number: QTBUG-32457
Task-number: QTBUG-48823
Change-Id: I01a2f99b5a75b39dd729509ca319f634e3dcd695
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2016-05-24 17:32:44 +00:00
Richard Moe Gustavsen
17a4384d12 iOS: ensure we don't break UIKit IM state when sending key events
We need to be careful about calling textDidChange on the input
delegate, since that will reset the internal IM state in UIKit
and stop any ongoing text composition or spell checking.

For that reason we set m_inSendEventToFocusObject to true whenever
we send an IM event to Qt, to not call the abovementioned method when
callbacks from UIKit is the reason for changing the text.

But until now we never applied the same protection for key events.
This lead to ligatures not working correctly (e.g when using Korean
IM), since UIKit composes ligatures by first selecting the characters
that can be truncated, then do a deleteBackwards, then insert the ligature.
And deleteBackwards leads us to send backspace key events, which
ends up in a textDidChange call, which confuses UIKit.

This patch will ensure we don't call textDidChange as a result of
sending key events.

Task-number: QTBUG-52486
Change-Id: Ida268edae517f55a5b5f975340a5d3821f7b8f52
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2016-05-24 12:32:22 +00:00
Gabriel de Dietrich
b092f681cf QNSView: Reset the internal buttons state after dragging ends
We only track left and right mouse buttons when dragging. But
some applications may do this with other mouse buttons.

In this case, instead of tracking which button was pressed and
which one was released, we just ask Cocoa for the current state.

Change-Id: I0df7799b7ae6d7816377f881bc0ede867737d245
Task-number: QTBUG-53374
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2016-05-24 06:13:11 +00:00
Timur Pocheptsov
a324194b59 QWidgetLineControl::Command - delete default ctor.
While dealing with Coverity's CID 11424 ('missing initializer'), it was
recommended (by Marc, thanks) to get rid of Command's default ctor,
since it's apparently not needed at all (replacing QVector with std::vector also).

Change-Id: Ibe9d2789c67431a9810feb7db4fa1bce0b61921c
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2016-05-24 06:13:00 +00:00
Oswald Buddenhagen
40074bc985 Bump version
Change-Id: I944b2a5e1b377fb2d39f9cbf549e1a9c01894cde
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-05-23 18:28:33 +00:00
Thiago Macieira
f156c81d7f Restore the -fno-lto build of qversiontagging.cpp
I'm not sure how one of my machines has this problem and the other
doesn't (same distribution and same compiler version). Must be operator
error. But this is required to compile QtGui when QtCore was compiled in
LTO mode.

qversiontagging.cpp used to be built with -fno-lto before commit
629ceec208. This commit restores that
functionality, but not the clang "-no-integrated-as" part.

Change-Id: Ie9fd7afe060b4e4a8052fffd144fb9c1a1166854
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-05-23 18:22:15 +00:00
Thiago Macieira
cf6a2e9617 forkfd: Make sure we handle SIGPIPE too
We can't depend on the application/library ignoring the signal for us,
so we do it. O_NOSIGPIPE exists on the BSDs and I'll add it to Linux. If
it isn't supported, then we need to ignore SIGPIPE globally.

Change-Id: I25d85d86649448d5b2b3fffd1450f6afeaea8b18
Reviewed-by: Ralf Nolden <nolden@kde.org>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2016-05-23 18:22:07 +00:00
Allan Sandfeld Jensen
3cae115d6d Correct compositionMode documentation
Most composition modes require an alpha-channel to be meaningful, but
not all, and there is no requirements of specific formats.

Change-Id: I11e930ccc07e9ff5df06dbda6745e4afb79f5e08
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2016-05-23 18:21:03 +00:00
Friedemann Kleint
ffd99e1d18 Add section "Getting Started" to QPlatformHeader's documentation.
Change-Id: Id57c65a5f5281ed0ff8f4e5876cf121781f2ae90
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
2016-05-23 14:05:15 +00:00
Ralf Nolden
644d0e7524 Cleanup NIS support leftover from Qt 3/4
Qt 3/4 had NIS configure options and tests for NIS defines,
those were used in QPrintDialog at the time to support
NIS-printers. As the implementation went away a long time ago
and no NIS featueres are implemented anywhere in Qt, the
configure options and config.tests for NIS can be removed.

Change-Id: Ie920e6a422540bf938623265b6ee68c793aeff84
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-05-23 13:48:23 +00:00
Laszlo Agocs
1937a4e8b9 Add a workaround for render-to-texture widgets in fullscreen windows
The performance optimization of falling back to flushing windows the normal
(raster) way once no render-to-texture widgets are visible has issues with
fullscreen windows, presumably due to the compositor's special handling of
such windows. Disable our smartness and stick with composeAndFlush for
ever in case the window is fullscreen.

Change-Id: Ifb31e0d36bd0a3933fcfe55a9a7d502513d6e3cf
Task-number: QTBUG-53515
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-05-23 12:37:34 +00:00
Laszlo Agocs
bdb1c18e41 windows: Fall back to D3D9 when 11 fails
It is assumed that this happens automatically but that is not always the
case. Do not become stuck with a non-functional D3D11-backed EGL environment.
Instead, try again as if QT_ANGLE_PLATFORM=d3d9 was requested.

Task-number: QTBUG-52056
Change-Id: I12ac6ca5f1d06f9504d05120d8e1053e97edfab3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-05-23 12:37:23 +00:00
Ralf Nolden
5c6d27b8df Make eglfs-egldevice check work with pkgconfig as well
Until now the check didn't use pkgconfig at all, but using pkgconfig
alone does not work for some devices (special cases), so we have to
use a combination of both here.

Change-Id: Ia19a279d80a65352c467661d91a3762448c23ae6
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-05-23 11:24:36 +00:00
Edward Welbourne
932cce18f7 QSocks5SocketEngine: connect after auth fail as if connecting afresh.
If the client has responded to an earlier auth fail sensibly, further
use of the socks connection probably means we have fresh credentials.
So treat AuthenticatingError like Uninitialized.  This makes
tst_QNetworkReply::authenticationCacheAfterCancel(*+socksauth) work
again.

Task-number: QTBUG-51545
Change-Id: I237ca5a3194b093cc6480dd33aa7709b7b584941
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2016-05-23 10:55:00 +00:00
Ralf Nolden
5f02feae05 Compile fix: add -lexecinfo on NetBSD and OpenBSD
Add -lexecinfo for backtrace(3) on NetBSD and OpenBSD. Without,
qlogging.cpp linking will result in undefined references to backtrace
and backtrace_symbols. The behavior required is identical to FreeBSD so
no additional fixes are required (see src/corelib/global/global.pri:41)

Change-Id: I3cfd1d75f1fb5b8505c08a880f91e7b39a5a650d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:39 +00:00
Ralf Nolden
e3d1058ae9 Compile fix for NetBSD: only BSD using statvfs, disable f_flags define
Compile fix for NetBSD's use of statvfs having f_flags.All other BSDs use
statfs instead of statvfs, so the f_flags define needs to be prevented
on NetBSD.

Fix obtained from Kamil Rytarowski <n54@gmx.com>, NetBSD qt ports
maintainer.

Change-Id: Ifbd7ba0cba7f6cf280f5984c64abd7649f667332
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:35 +00:00
Ralf Nolden
f8c3820de7 Compile fix: remove unused variable bool isEmpty
The local variable isEmpty triggers a compile warning with GCC:
variable ‘isEmpty’ set but not used [-Werror=unused-but-set-variable],
so remove the variable assignment and declaration.

Error is triggered on FreeBSD and NetBSD with gcc.

Change-Id: I37bdb3408ad69093708f2d4bdb04392da66e04e5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:30 +00:00
Ralf Nolden
725a9c2702 Compile fix: add NetBSD define for ffsll usage
On NetBSD, ffsll needs to be defined to compile. The fix adds the
according Q_OS_NETBSD define to the list of operating systems
needing the define.

Fix obtained from NetBSD port maintainer Kamil Rytarowski <n54@gmx.com>
via IRC.

Change-Id: I966a7b3fba43fb56e72f19f6b7f7cacc19c3c6cf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:26 +00:00
Ralf Nolden
9b153f989b Compile fix: convert argument to long to match parameter comparison
GCC creates a warning "enumeral and non-enumeral type in conditional
expression" as the types of the two arguments don't match. Fix
the compile warning by converting the first argument to (long) to match
the type of the second parameter.

Fix confirmed to work on NetBSD and FreeBSD, obtained from
Kamil Rytarowski <n54@gmx.com>, NetBSD qt ports maintainer.

Change-Id: I777dd066a0a8cc8a46e34bd39b256882080a7773
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:22 +00:00
Ralf Nolden
14ae00dd50 Compile fix: undefine types before defining them
On NetBSD, the types uint64_t, uint32_t and uint8_t
are already defined in sys/types.h which leads to compile errors.
Those types need to be properly undefined before defining
them with the Qt code.

Change-Id: Icd58f421619f15b899cf5c5de1cfb22a519a4e4b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:18 +00:00
Ralf Nolden
e91be71ef0 Add OpenBSD to list of BSD systems defines using kqueue too
Besides FreeBSD and NetBSD, OpenBSD uses kqueue too, so
add the according Q_OS_OPENBSD define here to make that work.
Patch obtained via OpenBSD qt ports maintainer Vadim Zhukov
<persgray@gmail.com> from OpenBSD qt ports patches.

Change-Id: Ib9e6f6303b661beb88666bd3c2bf36a77e929f9d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:13 +00:00
Ralf Nolden
defec688d2 Use -liconv on OpenBSD as well in config.tests
OpenBSD iconv is in -liconv, so it needs to be added here. NetBSD
has iconv in libc, so only OpenBSD is affected.

Patch obtained from Vadim Zhukov <persgray@gmail.com>,
OpenBSD qt ports maintainer.

Change-Id: Icce25d154857f0ce161b5f6b7ddac3c150a02bb8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:09 +00:00
Ralf Nolden
e28d31dbfa Move freebsd-g++ mkspecs back for supported FreeBSD 9.3 and up
FreeBSD 9.3 is still supported and uses gcc as the default
compiler, therefore FreeBSD ports require patching the mkspecs
back. To avoid patching, move the mkspecs back to the right
place and adapt the path in the qmake.conf/qplatformdefs.h

[ChangeLog][FreeBSD] The freebsd-g++ mkspec was moved back and no
longer requires the "unsupported/" prefix, matching the FreeBSD
ports tree, as FreeBSD 9.3 still defaults to using GCC. Users of
GCC that did not previously use the ports patch will need to adapt their
build scripts and drop the "unsupported/" prefix.

Change-Id: Ideda4a33cccf5381000f6f50b6ae92a5c24ba9d4
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-23 09:51:02 +00:00
Ulf Hermann
eda29451e9 Enable -separate-debug-info for mingw toolchains
Having the debug info in separate files is very helpful, especially on
memory constrained 32bit systems. When the debug info is compiled into
the object files, processes can run out of memory when trying to load
them.

Change-Id: I1808a32e855d6a62e17e1b734c511b31db5f03f1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-05-23 09:49:46 +00:00
Maurice Kalinowski
11f14a0442 Turn off optimization for checkForAlphaPixels on Windows ARM
This function is optimized in a way that it returns bad results with the
arm msvc compiler.

Task-number: QTBUG-52007
Change-Id: Ica4517dfb7dde5a78d563f9253c4c907090c9459
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-05-23 09:35:32 +00:00
Jesus Fernandez
c18b802e33 Fixed variable type
A port was being assigned to qint16 instead of quint16.

Change-Id: I9414e2dcca52beab1bc17ef61cfff56db8ab83a0
Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2016-05-21 19:59:06 +00:00
Ralf Nolden
d2af1d71c1 Remove obsolete freebsd-icc mkspecs
The freebsd-icc mkspec was intended to be used with the Intel
compiler, which nowadays is still only available in version
8.1.038 (https://www.freshports.org/lang/icc/) and for i386 only
while the current version is around 17. On FreeBSD the port
was actually never supported by Intel anyway.

Change-Id: I03b1939be63eef4363bd6b074a6b739365f495ac
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-20 21:51:50 +00:00
Gabriel de Dietrich
1acb29c3dd QMenu auto-test: Add test for two-level tearable menus
This has been fixed in 5.6.1 but we can afford the extra test
to guard against regressions.

The setup for this test is two menus, one parent of the other.
The submenu is tearable. We open the parent menu, open its
submenu and then move the mouse cursor straight over the
submenu's tear-off area. The submenu should stay open even
after a short delay.

Change-Id: Ia8ad326d78dde31b6dd91b0ebacf0db1898715d4
Task-number: QTBUG-53068
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
2016-05-19 18:17:40 +00:00
Ralf Jung
cdf1e67de1 QDesktopWidget: fix tracking QScreens.
The old code failed to reliably detect new QScreens and connect their signals to
its own slots.  For example, if the QApplication added a new screen at the
beginning of the screen list (which happens if the new screen is primary), the
signal-connecting loop would actually instead add the now second screen to
QDesktopWidget's list *again*, and connect its signals, but not connect any
signal to the new, first screen.

Furthermore, QDesktopWidget would miss geometry changes because QWidget (and
hence QDesktopScreenWidget) automatically shrinks when the screen it is on gets
smaller.

To fix all of this, QDesktopScreenWidget now keeps its own record of the screen
and its geometry, and it always scans over the entire screen list without
relying on any ordering guarantees on behalf of QApplication.

Change-Id: I2ee8361adf643849f43b7dd9a95966920fd13528
Task-number: QTBUG-52101
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2016-05-19 18:13:33 +00:00
Joerg Bornemann
9c0a7cac83 Doc: Fix references to QGuiApplication::clipboard()
QClipboard's documentation still referred to QApplication::clipboard(),
where the method was located in Qt4.

Change-Id: I7fc31bacf5afa783f8ca38723773f24cd0bda347
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
2016-05-19 13:09:44 +00:00
Robin Burchell
b2e9c680e3 qpa: Use LIBS_PRIVATE, not LIBS when linking in font database bits.
LIBS_PRIVATE is more correct (these shouldn't be part of the public API),
and additionally, using LIBS_PRIVATE also ensures these libraries come last
on the link command, which fixes builds using -Wl,--as-needed.

Change-Id: I9f2e4e78855a30a53ce9013623597b840a2832bd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-05-19 12:45:36 +00:00
Oswald Buddenhagen
eff3a7ded1 delay application of -D/-I/-L/-l on windows as well
clearly, "the windows configure does not have any of this magic to start
with" was flat-out wrong.

Task-number: QTBUG-53312
Change-Id: I80ac10bc8b1581e61c57fcd97f25626990d120ec
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2016-05-19 11:06:33 +00:00
Friedemann Kleint
6086c81e4d Windows QPA: Improve workaround for non-Areo theme GL rendering.
Reportedly, clearing the clip region is sufficient to fix the issue.
InvalidateRect() should be avoided when handling WM_PAINT as it
may cause events.

Task-number: QTBUG-7865
Change-Id: Id9a7c280fcc2c8242bb34c34e73e53c3146e7a6e
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2016-05-19 10:55:54 +00:00
Oleksandr Tymoshenko
e9628fbd39 Fix dynamic librariy support detection for platforms without libdl
Some platforms (e.g. FreeBSD) do not have libdl, but dlopen and related
functions are part of libc. So first check for dlopen in libc, and only
if that fails, look for it in libdl.

Task-number: QTBUG-52951
Change-Id: I65a8ed18fce157da32f4e1ffeba30d7513385a8f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-19 10:15:42 +00:00
Ralf Nolden
dd8745e1d4 Remove linux only-dependency from devicediscovery
As libudev and libevdev have their config.tests and do work on other
operating systems as well (FreeBSD, evdev), there is no need to
make this exclusive for linux only. Thus, use the checks only;
the else-section can go with that at the end, too.

Change-Id: I2a5175a154b4f3e001bb42d187d8c7640c014049
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-05-19 10:15:32 +00:00