BlackBerry: Implement the dark palette

This patch only implements the dark palette and returns it by default.

Change-Id: Ieab39c2d5c8f35b9479719b78843b13355c5f123
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Blackberry: Change name from QQnxTheme to QBlackberryTheme

Change-Id: Ia30a18c988986f8c20bc4e4475c5e24b06493035
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Remove usage of QT_NO_SHAPE

First of all QT_NO_SHAPE was never set in configure script, which
means that !contains(DEFINES, QT_NO_SHAPE):LIBS += -lxcb-shape always
was true and we were linking to -lxcb-shape no matter what.

Secondly, we are providing shape.c in qtbase/src/3rdparty/xcb/libxcb, so
users always have an -qt-xcb option available to get this extension.

Change-Id: I7d14a0ac5ca6e36fb9c053225916cae41028b532
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Remove unused QMakeVar QT_NO_XCB

Grepping in Qt source code for QT_NO_XCB didn't find any
references to this variable.

Change-Id: Iabe5679f8b066facede2ac3bfc8c14ec4c0473a2
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Build the cube opengl example both for desktop and ES

No reason to restrict it to desktop only, the code works on ES2 too.

Task-number: QTBUG-35730

Change-Id: I915a88cbf3c95a941d6bafd88ed57fef0b6a25b9
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Clarify QWindow::format() docs

Change-Id: I35c5f9e7a235afc75c0051b3958875371f182b29
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Clarify QOpenGLContext::format() docs

Avoid unrealistic expectations where applications would assume that
requestedFormat() == format().

Change-Id: I12dcfda3d86ce26f1cae9771b1fe2203291864db
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Avoid asserting with QQuickWidget on Windows

Change-Id: I8b4185a9725b27b3e3e0e049e3a001ed61bcf1d5
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
WinRT: Handle window exposure when visibility changes

Expose events should be sent to application windows when the main view
becomes visible (again). This fixes a blank screen which may occur when
resuming an app from suspend.

Change-Id: I33dc00482ef17cdc954a71626a8ad3cd24361a64
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Windows Phone: Handle back-button press

When the back button is pressed, send an immediate key event to the
topmost window (or the application if there is no window). If it is
accepted, mark the native event as accepted and send a key release event.
This way, the application may call accept() on the KeyPress event for
Qt::Key_Back in order to create backstepping behaviors within the app.

This is in line with Android, which quits the app when the event is
ignored. On Windows Phone, the default behavior occurs when the event is
ignored, which is to back out of the application and leave it running
in the background.

Task-number: QTBUG-35951
Change-Id: I46d15478f441f73d3660370370689b2f9fa11f25
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Add Objective-C specific type converters to QByteArray

This patch adds the Objective-C NSData/CDataRef converters to
QByteArray

This will replace the current converters offered in QMacExtras

[ChangeLog][QtCore][Objective-C] Added NSData/CDataRef converters for
QByteArray

Change-Id: I7a0f14bee4271798db345f3c5efd26ac671a3ea4
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Destroy backingstore before window

The window is created before the backingstore, so the destruction should
happen in the reverse order. Also, the backingstore is created based on
a pointer to a QWindow, so the dependency is from backingstore to window.
Thirdly, this fixes a crash when using QQuickWidget/QOpenGLWidget.

Task-number: QTBUG-37045
Change-Id: I6e782c553fddfeef877be30ca2610aff75a425a0
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
Improve code readability

Since we were requesting a multi font engine, the returned font engine
must be a multi one or nothing at all.

Change-Id: I1ee4e1b7c68f54c83a8c7292082d015ebfa0a8cb
Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
Revert the QByteArrayList addition to Qt 5.3

This reverts commits f12b0f9a38c792abb13f3e6ecff4542986a6f96b
("QByteArrayList: optimize op+"),
f96f2fe3670bc8a32389795dc21b9839407465a1 ("Enable QByteArrayList
tests"), and 4f23f0530a9c59400a7f3821cd2c9355801ed8cd ("new
QByteArrayList class").

This class is coming back in Qt 5.4.

[ChangeLog][CHANGELOG FIX] Remove the line about QByteArrayList being
added.

Change-Id: I890ab2b34a9b3e575512eb306d0f241143a867cf
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Make Q_NULLPTR be NULL on C++98

Some compilers actually have a C++11-like null pointer constant in C++98
mode:

$ gcc -dM -E -include stddef.h -xc++ /dev/null | grep NULL
#define NULL __null
$ icc -dM -E -include stddef.h -xc++ /dev/null | grep NULL
#define NULL __null
$ clang -dM -E -include stddef.h -xc++ /dev/null | grep NULL
#define NULL __null

Change-Id: Ie0bcaf36fed6ad27e761a0a24332817129128571
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Export rootWindow to the QXcbNativeInterface

This change exports the root window to the native interface as there
is QX11Info::appRootWindow which so far goes over the QDesktopWidget
to get the window id of the root window. Which is a rather hackish way
considering that the root window is known to the QXcbConnection.

But even more it's a very fragile way and can result in crashes on
startup of applications if the application accesses the appRootWindow
too early.

Change-Id: Ibb09a7fa714cb355f579298fc6df33bf80f73f58
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: David Faure <david.faure@kdab.com>
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
Make QVector* compile on Win/static

Task-number: QTBUG-37122
Change-Id: Ib2283e8c27da7af2bdc08eee3b7cc542fbe55d71
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
BlackBerry: Repair the file picker

The interface for invoking the file dialog has been changed. Instead of a Json object we now
passing a pps object to the invoke target.

Change-Id: I3c5bc8f0e1af1a84d4afb6bc1923f23db2b43d5e
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
BlackBerry: Choose the appropriate file dialog type

This chooses the appropriate file dialog type based on the nameFilters that were set.

Change-Id: I0c674eacbaebf862ce4359e744271c0d6382c216
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Fix description of how themes are created (code comments)

Change-Id: I3b8ed0af5208687a9ab75e916b477f5e24b4d1e2
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>