QWizard: Fix frame when using Vista style/MSVC2012

Work around GetSystemMetrics() returning the wrong value using
MSVC2012 and later. The special handling of Windows 8 and later
is then no longer required.

[ChangeLog][QtWidgets][QWizard]  Fixed frame when using Vista style/MSVC2012.

Task-number: QTBUG-36192

Change-Id: I39c2ab70a266f12cd65fa740b10b86edffa60417
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Suppress warnings for Qt builds only.

Qt should not dictate which warnings are disabled for client code.
Therefore warnings will only be suppressed when building Qt.

Change-Id: I1c470ba346c8272bae2a38385e425afa6eb50170
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
QNX: Fixed some window issues

Corrected EGL error code query and cover windows creation in the
"no-rootwindow" case.

Change-Id: I86aaa4b59283f7153f8ab63c5bf231bc9da7538c
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Support multiple native surfaces on Android.

Support for multiple native surfaces is needed by applications that need
to mix raster windows with GL windows.
Rework the raster and opengl implementation, get rid of eglfs and
fbconvenience dependencies.
Create a single android platform plugin.

[ChangeLog][Android] Rework the raster and opengl implementation.
[ChangeLog][Android] Create a single android platform plugin.

Task-number: QTBUG-34650

Change-Id: I9b1ab51554823329dda8cfbf8fef27c38f917c7b
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
QNX: Fixed window positioning

Child windows have to keep their relative position when the parent is
moved.

Change-Id: I7d24d67578c9aaa332136d18ad9b478b120e4696
Reviewed-by: Roger Maclean <rmaclean@qnx.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
qmake: prepare TARGET/VERSION/DISTFILES for sub targets

This is a preparation step for 'make dist' target for subdir projects.
UnixMakefileGenerator needs these variables while extending
writeSubTargets() and writeDefaultVariables() for 'make dist'.

Partial cherry-pick of
https://qt.gitorious.org/qt/jpnurmi-qt/commit/8c4ef19

Task-number: QTBUG-21910
Change-Id: I02a616a98448bc3041ef0f4fd034bfb4c2199e41
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Improve code in sizeHint()

The plan is to do better caching in ensureColumnAndRowData(), and
this patch will benefit for any such changes later

Change-Id: Id1662e3fe7f70079e29ddb6e3d64e6e580ad9e0f
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
iOS: Remove unused file

Change-Id: If082be4b5c50cd5e1d5660bbe26136b9a0ee0352
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
iOS: Fix compilation of some basic tests

The tests themselves may not actually pass, but it's a start, and allows
us to sanity-build a few things in the CI that actually produces a final
binary.

Change-Id: I02643b6ffa1522de1a7d17d737c8ab45ffac6a93
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
QObject: fix connection to function pointer with non-copyable references argument

For example, QObject is non copyable (its copy constructor is deleted or
private via Q_DISABLE_COPY). It should still be allowed to pass a reference
to a QObject as an argument to as signal (or slot).
This fixes a compilation failure.

Task-number: QTBUG-36119
Change-Id: I9bcf477e347d69fdae2543c99781b6421883be78
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Replace win32-g++ with mingw scope

Commit 773dd01 introduced a general mingw platform scope, which
is cleaner and more flexible than matching the spec name.

Change-Id: Ie3a9cb791a83f7c8a51bc4e23069190c452ab521
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Cocoa Helpers: Add qt_mac_flipRect(const QRect &)

Task-number: QTBUG-33082

Change-Id: If72b2744d3694b3899c124c7a6a6ccc6e6397165
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Fix BlackBerry10 build on NDKs prior to 10.2.1

This commit adds a dependency checking for a recently
introduced define. On NDKs 10.2.1 and later it compiles
with support for VIRTUALKEYBOARD_LAYOUT_ALPHANUMERIC.
NDKs 10.2.0 and earlier do not know this define
and therefore it will be ignored.
This is necessary because there is no newer NDK
publicly available than 10.2.0.
Assuming pure QNX SDKs are missing the define completely,
we are only including it on recent BB NDKs.

Change-Id: I6f814e5c2d77c50edf8534f3567b157f71147555
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
eglfs: Move reusable functionality to eglconvenience

The cursor implementation is generic GL(ES) code that should be shared
by all the present and future egl-based embedded platform
plugins. Follow the pattern of QEGLPlatformContext and move this class
into eglconvenience as QEGLPlatformCursor.

Similarly, the common bits from the context implementation context are
moved back to EGLPlatformContext.

eglconvenience has now base classes for integration, screen, window,
etc. too. By using these, eglfs becomes much smaller and cleaner. This
also paves the way for creating new, separate EGL-based platform
plugins for Android, embedded Linux, etc.

Also added some documentation to each of the base classes.

devicediscovery is now fixed to be usable on any platform. The
implementation in this case is naturally a dummy one. This finally
allows using it from anywhere without myriads of ugly ifdefs.

Change-Id: I02946e360c04e02de7fe234a23a08320eff4ccf5
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
qmake: cleanup DISTFILES

Do not include the project file twice or other
.pr? files outside the project tree.

Task-number: QTBUG-21910
Change-Id: I62af842282ccdc5b9099d9227d5395ebe3f0698c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
QNX: Make window groups work reliably

Window group related code worked previously only for the 'root'
window and other windows that had no parents (which then joined
the window group of the root).

Introduced a new function joinGroup that makes the group related
calls, this can both join and leave groups.

Default group joining is performed in setVisible now rather than
setScreen.  The advantage of setVisible is that one can rely on it
getting called at some point but it is also possible to create and
interact with a QQnxWindow before it is called.  This allows
the default group handling to be overridden via the native
interface.  If the group is set (or explicitly not set) then the
default handling is not done.

joinGroup is also called from setParent so that if the parent window
is changed the window joins the parent group.

Change-Id: I03e3801ecb4e4cf901c02e45f00472a87692c2ec
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
QNX: Avoid crashing on exit when have a cover window

QQnxScreen destructor was leaving the cover window to a reference
to it leading to a crash when the cover window itself was destroyed.

Change-Id: Id82097d54fea79b0b9ec1cef439bd704da9ca453
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>