Mac OSX: get the correct key code when the control key is pressed

The control key results in modifiers having Qt::MetaModifier, and then
the correct character is found in charactersIgnoringModifiers.  The
rest of the time, [nsevent characters] seems to be correct.  If we
use charactersIgnoringModifiers too much of the time, then the keycode
will be wrong in some cases even though typing is still possible.

Task-number: QTBUG-29005
Task-number: QTBUG-31811
Task-number: QTBUG-31977
Change-Id: Ib23b89f03bc9a61fe6d177320fa603c05649e979
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
BlackBerry: fix delayed root window posting on OpenGL

The delayed root window posting introduced by
77a06e7e6c517003 broke the OpenGL support. In that patch, the posting of
the root window is trigerred by QQnxRasterRasterBackingStore's call to
QQnxWindow::post(), that obviously does not happen when OpenGL is enabled,
therefore requiring the OpenGL context to explicitly post() the root window.

Task-number: QTBUG-31934

Change-Id: Ifd302c1dde612a03b79c778ec4586aa70f88260d
(cherry picked from commit 6a9333841d9d5233b0457ec6f0da5bdacda8ea5b)
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Android: Fix initial window size for raster backend

We forgot to set the ShowIsFullScreen property for the raster
engine case. OpenGL windows already did the right thing, since
the GL backend is based on eglFS. The iOS backend also has
this logic.

Task-number: QTBUG-31984
Change-Id: I1cf5df32d79f441768126f00632107a7971eb5ad
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Fix win32-icc build: _CHAR16T is not an indication of C++11 support

The macro comes from MSVC's yvals.h header and it actually indicates
absence of C++11 support in MSVC. It is defined if
_HAS_CHAR16_T_LANGUAGE_SUPPORT isn't defined, which is a C++11 feature.

Task-number: QTBUG-31701
Change-Id: I155b8e764f786e95a08de660f70094b2bee38937
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Replace win32-icc/qplatformdefs.h with the MSVC one

There have been fixes done to the MSVC qplatformdefs.h that aren't
reflected in the ICC one -- specially the inclusion of
windows.h. Since ICC is never tested, simply defer to the MSVC one and
hope it's enough.

Task-number: QTBUG-30839
Change-Id: I3c22638cc7fac3399d3606b1583608e95208df6e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Fix compilation with ICC 13.1: the MSVC 2005 & 2008 code is bad

qvariant_p.h(226): error: name followed by "::" must be a class or namespace name
          template<class C> static Yes test(char (*)[(&C::isNull == 0) + 1]);
                                                       ^

Change-Id: I42eef44d46ca0fb7aac8f82150e917c4fb912b15
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
mac frameworks: don't create bogus symlinks

the entry for the normal headers already ensures that there is the
correct version symlink. having an entry for the private headers as well
is pointless, and in fact clobbered the symlink for the actual library.

Change-Id: I2403761bf006b7bfa490ce85c7b0e46d5ef203c0
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
QNX: Fix screen rotation

The behavior introduced by qtdeclarative's 475d1ed4f6a2 mandates that an
expose event follows a geometry change event. The fix for this uncovered a bug
on the raster backing store which caused the rotation to break on QtWidgets.
The problem was rooted on the assumption that the
QQnxRasterBackingStore::flush() method was only called after paints to the
backing store surface, which was discovered to be a false assumption. Flushing
the backing store can occur in other circunstances, which are out of scope on
the context of the QNX plugin.

Task-number: QTBUG-31329
Task-number: QTBUG-31934

Change-Id: Icfc3e85324f5a8745f6b5f189f27f8b763f770c7
(cherry picked from commit 0343b926608a4014ef386b3b21be9a0940d9f8e8)
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Vladimir Minenko <vminenko@rim.com>
Doc: Fixed link to "Downloads" page.

-previous link does not exist

Change-Id: I86cb6311145cdcb0ebccd3e141d1e413744d585a
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Avoid crash when QOpenGLContext is destroyed before the VAO

Change-Id: I19df59453156a95c5075a065268333a74cec2476
Reviewed-by: James Turner <james.turner@kdab.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Deprecate Mac libc++ mkspecs

We handle C++11 and libc++ through c++11.prf now, so separate mkspecs
are not needed. Deprecating them allows us to remove them in a later
release.

Change-Id: I4e525f445aeab88c926fa62cedef6aa9b32a7f55
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
QWindow min/max width/height, contentOrientation are not new in 5.1

so that part of Id03ae17270832a7b5915e4324a508e591c0b6d98 which added
the Q_REVISION(1)'s and \since docs was a mistake.

Change-Id: I159b68491bd7dc55657d8c978bff527094ef4547
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Add Q_REVISION(1) to QWindow::alert().

Task-number: QTBUG-32069
Task-number: QTBUG-30416

Change-Id: Idabf9962def24ecd709be7d981302c91c42ccac4
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
fix location of private headers in mac bundles

Change-Id: I2d9f117d4b25df878abc525499748ed1df9b9c18
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
install qpa headers into frameworks as well

they are a somewhat different kind of private headers, but follow
generally the same logic.

Change-Id: Ic6f42ed7061dde2ffd0e32b1d713354b58a20970
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
remove qt_no_framework_direct_includes from qt build

only the include statements found in public headers are constrained to
work with this flag. our own c++ files and private headers can use other
styles, which this flag breaks.

Change-Id: Icb1ced17dc438083731049788ac28349c87ba7ef
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Merge remote-tracking branch 'origin/release' into stable

Change-Id: I53112e20a65b7d706755b4a22622979f3b91a2c2