Cocoa: Post event to "show()" a modal window

The way we were doing it, we may have interferred with other
events in the CFRunLoop source and call processEvents() at
the wrong moment or for the wrong reason. By using a posted
event, we make the notification channel unambiguous.

This ammends ff3dcc49c4a1912189091e35e87cb61af2f62d47.

Task-number: QTBUG-38214
Change-Id: I94f7e89cf4c9803289749394f85119cba62ef0e7
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Doc: document obsolete QApplication::setGraphicsSystem()

Change-Id: I5a87564d2dbfa5e739d1ca40db480e8e0c1b7fdf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Doc: document QTimeZone::swap()

Change-Id: I80d55df65546b671772ed93cb852e88ee040114a
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Cocoa: Don't consume events when closing tool tips

With change acebf677 we treat Qt::ToolTip similar
to Qt::Popup and close them on a mouse click on the
parent window. This mouse click is not forwarded
to the standard mouse event handler.

Add an exception for Qt::ToolTip.

Task-number: QTBUG-38267
Change-Id: Ie3121f651a6ccc2427040e61db4f63967467604d
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
docs: Q_CLASSINFO is used in a couple more places besides ActiveQt

Change-Id: I000f538dc11477224efbf2edc91873822eb9fef2
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Make HarfBuzz-NG the default shaper on Mac

For AAT shaping support, we need either the pre-QPA shaping trick
or the new HarfBuzz on Mac; prefer the latter.
Disable some test cases aimed to test the HB-old behavior; enable ones
that should guarantee shaping-unaware behavior.

[ChangeLog][OS X] Use CoreText text shaping engine for support of
complex scripts. If required, the shaping engine used in previous
versions can be preferred by configuring Qt with -no-harfbuzz.
Alternatively, the QT_HARFBUZZ environment variable could be set to "old".

Task-number: QTBUG-18980 (relates)
Task-number: QTBUG-38246
Change-Id: Iee6fe4f5bc047e77259182b8585385c5febd02b3
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Improve the Unicode script itemization implementation

Make it closer to the Unicode specs (UAX#24):
* Common now inherits the preceding character's script, if any;
* In a combining character sequence, if the base character is
  of Common script, the entire sequence is treated like if it were
  of the first non-Inherited, non-Common script in the sequence.
See http://www.unicode.org/reports/tr24/tr24-21.html for more details.

[ChangeLog][QtGui] Fixed regression in arabic text rendering.

Task-number: QTBUG-28813
Task-number: QTBUG-29930 (related)
Task-number: QTBUG-35836
Change-Id: Id85761965b08ca94c674d5f3613fe58b82b2ce9c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Ahmed Saidi <justroftest@gmail.com>
Disable threaded rendering if Mesa is used

Mesa and xcb show some bad interaction which leads to frequent crashed
on multithreaded access. Also, the selective approach to blacklisting
only specific chipsets isn't feasible, given the resources available.

The client glx vendor string is used to identify mesa instead of the
server GL vendor and/or renderer string as that is much more reliable.

Task-number: QTBUG-38221
Change-Id: I2d8c037aa4fd9c38eb9537452a5e7e62f72a081d
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Handle parent is None from query_tree_reply in QxcbWindow::frameMargins

None is a valid return value for parent in xcb_query_tree_reply_t.
If that is used as the new parent the next call to
xcb_query_tree_unchecked will fail with a BadWindow error.

Change-Id: Iafe29b223ca65c86ecfd40fe51e67d4bd7abc1ce
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
Doc: Remove QX11EmbedContainer/QX11EmbedWidget snippets

- These classes no longer exist in Qt 5
- These snippets are not actually used in current docs

Change-Id: I155e70b09933417c8ce1b14d033fb1c17a1c32db
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
QNX: Fix QTreeView autotest

The style is dpi dependent. I.e. on high dpi displays the pixel size of
sections and rows of a QTreeView will be larger.

Change-Id: I7477bfdd641d4db67973cafef5147f026f72c111
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Restrict QFontComboBox's popup width to screen width

Change-Id: I5a92308beb2f245d9f031918bb8154757316ef56
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
QNX: Fix QWizard autotest

In "task177022_setFixedSize" show was replaced with showNormal because on QNX
and some other platforms show translates to a showFullScreen.
For BlackBerry the test is skipped because the first top level window
is always forced into fullscreen mode.

Change-Id: I9df37c6bc47b47cbad4a1623b3eafa723abc6714
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
QNX: Fix QGuiApplication autotests

On QNX a window can only be activated if it has either a egl surface
or a raster backingstore.

Change-Id: If075093e39f1553eb8b25e35f7d372b1b15aa8af
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
QNX: Fix QMdiArea autotests

Change-Id: I1c4b0bbe4984182c217ee97957e2f21f43caf116
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Reviewed-by: Bernd Weimer <bweimer@blackberry.com>
Fix documentation of QRegExp

Change-Id: I6c9083941eb791eb34ce982986e3e04ac5a765ad
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
QNX: Fix QDir::entryInfoList()

If D_FLAG_FILTER is set, duplicate name entries are filtered out, so
this flag has to be set along with D_FLAG_STAT in the call to dircntl.

Also releaved dependencies between defines__EXT_QNX__READDIR_R,
__EXT_QNX__READDIR64_R and _POSIX_THREAD_SAFE_FUNCTIONS

Task-number: QTBUG-38189
Change-Id: I4e620cb9967e3d1baf6f2109a7c83703702f805b
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Remove the #ifdef check just before #undef

No warning is printed anyway. This code is only for one compiler (GCC on
QNX, a.k.a. QCC).

Change-Id: I28d085c72ab5a957146efab0a36c72f213d9d2c3
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Disable all C++11 rvalue refs with Dinkumware C++ library too

Our code assumes that Q_COMPILER_REF_QUALIFIERS implies
Q_COMPILER_RVALUE_REFS. Technically, it should check both macros, but
the only point of ref qualifiers is to have both lvalue- and rvalue-
reference member functions. We might then use std::move without a check
to see if the standard library does provide it.

Change-Id: Ia3eedd298c2218f100aee2e41bdea6e2c5c07a15
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
QNX: Fix QComboBox autotest

Change-Id: I9fe4da6e02921c0474bf7ef31a2ba14e751584bf
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>