Fix the assert failure in QShortcutMap::find

Don't send Qt::Key_unknown down the shortcut handling pipe, because
unknown keys are not part of a shortcut sequence and results in an assert.

Task-number: QTBUG-30871
Change-Id: Idd451fb793bd07124a96d75ed7b936f7ff584f28
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
(cherry picked from qtbase/c5a6b894e7484544c44a8a415a84e196c4b633c3)
QLocale - Fix Mac date format code translation

Mac uses the CLDR format codes which need to be translated into their
Qt equivalent. The existing code mistranslates the year code, is
outdated for a number of new codes introduced in recent versions of
CLDR, and by default accepted any codes it didn't recognize.

This change updates support to the latest version of CLDR, fixes the
treatment of years, and defaults to ignoring any new format codes
added in the future.

Back-ported from qtbase/77dc33dcdbe0eec8ddc9059c4e0ff9dde264c5fa

Task-number: QTBUG-25057

Change-Id: Ide040eca467cfada46fb0e2010db179a76b3096a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
QLocale: Update Portuguese and Greek locales data

* Update timeFormat for Portuguese/Brazil locale.
* Update abbreviated day names for Greek locale.

Note: Those locales are already fixed in the recent CLDR v23.1
data used in Qt 5.2.

Change-Id: I351e3a9ae65dcff4ab6b4787242141c3c9d86e24
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Revert "Return the correct system font on OS X Mavericks."

This fix is broken and a working solution will replace it shortly.

This reverts commit 7c4c43afb36449c9fb2d281327423df8eb916d64

Change-Id: I764e7da6e7a52916b87650483271d9aed099ed2b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
network: fix multi-phased NTLM authentication

tested manually with internal NTLM proxy.

Patch-by: Jonathan Lauvernier <Jonathan.Lauvernier@gmail.com>

(cherry picked from commit 338da730e8bc23e227e26b094cba6bb6233c42de)

Change-Id: I889056545b60deccf55053c2b41ecb1ea0cba62d
Reviewed-by: Richard J. Moore <rich@kde.org>
BlackBerry: improve BPS event lifetime management

In QEventDispatcherBlackberry::select(), if an event handler called
through filterEvent() starts a nested event loop by creating a new
QEventLoop, we will recursively enter the select() method again.
However, each time bps_get_event() is called, it destroys the last
event it handed out before returning the next event.  We don't want it
to destroy the event that triggered the nested event loop, since there
may still be more handlers that need to get that event, once the
nested event loop is done and control returns to the outer event loop.

So we move an event to a holding channel, which takes ownership of the
event.  Putting the event on our own channel allows us to manage when
it is destroyed, keeping it alive until we know we are done with it.
Each recursive call of this function needs to have it's own holding
channel, since a channel is a queue, not a stack.

However, a recursive call into the select() method happens very rarely
compared to the many times this method is called.  We don't want to
create a holding channel for each time this method is called, only
when it is called recursively.  Thus we have the instance variable
d->holding_channel to use in the common case.  We keep track of
recursive calls with d->loop_level.  If we are in a recursive call,
then we create a new holding channel for this run.

Backport from qtbase/5cc76dae7e985a7a39d839524dc8ad6475e597f3

Change-Id: Ib3584676d2db5a9a3754a1535d5fb6c9e14f5dbc
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Fix resetting of string properties.

Task-number: QTBUG-34171
Change-Id: Ib5fe8194d891eb999e41bafde19834be56c84103
Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
(cherry picked from qttools/78d8ee2513bdf52da2e0141be93dfe7bab8a1488)
Keep web fontdata alive as long as CG uses it

With OS X 10.9 font decoding appears to happen lazily, this means we
have to ensure the data we provide CG is kept alive until CG dereferences
it itself.

Backport of 89ab2671051671ecf440ba480caf0b6b6768b1a9

Change-Id: I29d5bf9d6efac4668ea2c85fa5393ed1c1e621b5
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Make QCoreWlan plugin compile on 10.9

Backport of 79ccb4fc from Qt 5:

We take the path of least resistence and keep the old API code for 10.6 while
updating the code for 10.7 and newer. This means we have some code duplication.
It also means that we only compile the 10.6 code for QCoreWlanEngine when the
deploymen target is 10.6.

The 10.6 version file should be removed once we drop support for Snow Leopard.

Change-Id: I07284a2579ba127abdca660ad4b8573576756399
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Fix tab-completion for variables that have digits in them

In the QtScript Debugger if a variable had a number in it then it would
not tab complete to show the member variables. This accounts for digits
so that it is correctly able to find the variable to complete on.

Change-Id: I4fe0b3b776aba0e3caa6dd524c1a0c59421ea515
Reviewed-by: Mitch Curtis <mitch.curtis@digia.com>
(cherry picked from qtscript/925f1264c590c12aaa5f93a687c7b2aba4370115)
Backport of Qt5 applicationName handling

Currently applicationName returns an empty value unless the user
explicitly sets it. Qt 5 is smarter and get the name either based on the
application arguments or a platform specific way (e.g. OS X using the
menu bar name) if the user didn't set it.

Based on f04b46f34e9446417cd5681f511332344679ef30
and 696060134d10d44175970ffd38618544ecdd9387

Change-Id: Ifc17cf4a74fed8cfabb46b3540dfbd64a5452640
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Expose QTest::currentAppName() and remove hard-coded argv[0] in tests

Except where we're actually testing QCoreApplication::applicationName()
and friends.

Based on a3530859e9a7423db0b6839f15538f248aaf4a79

Change-Id: I36ef8cbb5d8bce45225a7f81409f46f1d584287b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>