Cocoa: Clear window hash entry in ~QCocoaWindow.

The Cocoa platform plugin maintains a NSWindow->
QCocoaWindow hash.

Hash entries was not properly cleared on QCocoaWindow
destruction. Add call to clear the entry for the
destroyed window. Make QCocoaIntegration remove
the key from the hash in this case instead of
setting it to 0.

Task-number: QTBUG-37597
Change-Id: I3adaeee45069aea1d2ecacd948298302eafe1929
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Update Copyright year in commercial nag screens

Change-Id: I70420c44c018dbe733a50badb7f9f7f419459f7a
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
fix/optimize QT_PLUGIN_PATH construction in qtAddTargetEnv()

instead of adding all possible plugin paths (for which QMAKEMODULES
wouldn't have been a reliable source anyway), only add the paths of
plugins of the necessary types.

this necessitates that we create qt_plugin_<foo>.pri files also in shared
builds of qt when making a prefix build. we don't install them unless it's
a static build, though.

Change-Id: Ib56b009562a7131d4dc4dfc259b34ec6581b0f77
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
ensure that there is always an -indexdir argument

even if we are not doing a top-level build, we still need to specify an
index dir. that may be the install dir or the qtbase build dir,
depending on whether we are building against an installed prefix build
or a non-prefix build (building against non-installed prefix builds
outside a top-level build is inherently impossible).

Task-number: QTBUG-35596
Change-Id: Ia37d429855480d3bfe36b7ee29e087029861bfc5
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
do not auto-add install dir to index dirs

the install dir may contain indexes from previous builds. a build must
never refer to previous builds.

Change-Id: I67c04df8f3f82bdbebb67e280f70795ed0a76ccf
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
don't check for doc/ dirs' existence

the doc/ dirs in the build dir won't be created until the docs have been
built, so of course checking whether they are there during the qmake
phase is counterproductive.

this also means that we'll get some complaints about non-existing
directories (for repos that don't create any docs). there is no
reasonable way to query qmake which repos are affected, and writing
shell-specific code to query it at make time seems a bit overengineered.

Task-number: QTBUG-38862
Change-Id: Ie0588e75bfc39718fffd46f0df6785428e396eb2
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
pass (some) index dirs also during -prepare phase

qdoc uses the indexes as "precompiled headers" to obtain type info
necessary to properly parse sources.
the indexes needed are the ones the module actually depends on
(publically).

Change-Id: I6aad0b511d2534d584f7947c8d800300eede94ff
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
install pdb files also for static libraries

the condition is now consistent with that of the target itself (which
means that by setting target.CONFIG=no_dll one can actually suppress
installing the target itself even if it's not a dll, but anyway).

Task-number: QTBUG-39253
Change-Id: Id4684a550a33b463594ab537eaa9e1cbfb61e4ff
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
actually don't install qt dlls into lib/ any more

it helps enormously to use the flag correctly.

amends f0c34eb08f.

Change-Id: I04a63cc59e133169d9f6677f2f88ef98fd5c524c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
unbreak static qml imports again

a) qmlimportscanner has no built-in -importPath, so it can't be omitted
even for non-prefix builds, and b) the QMLPATHS variable is also used
further down, so we can't just do away with it.

amends a658fa40.

Change-Id: I42a47a82fe13694fbac3c4a3962ebbe1d7e7865b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
use the right env var in qmlplugindump call

qml2 needs QML2_IMPORT_PATH.
this didn't affect non-prefix builds (which most developers use), so
it wasn't too serious.

Change-Id: I435dca151348669b66f091f9a9324cd69394284e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
fix qmaccocoaviewcontainer example

- fix build on 10.6
- actually build it at all

Change-Id: Ib929f8b56e55f00191f7fcfb2be25975e46a1af2
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Android: Use exceptionCheck() function.

This was the only place where we didn't use the exceptionCheck()
function. Besides being more consistent, it's also more verbose if an
exception occurs.

Change-Id: Ib1e3dba82b0730cf189ec725f4da425d7ac85cdc
Reviewed-by: Yoann Lopes <yoann.lopes@digia.com>
QNX: Fix build for QNX 6.5

QNX 6.5 does not have readdir64_r, which is selected by current
qplatformdefs.h. There is only a reentrant version (readdir_r) which
does not support large files and a large file version (readdir64) which
is not reentrant. The reentrant version (readdir_r) will be chosen now.

In summary, the following versions will be used:
QNX 6.5:  readdir_r    (postfix '_r': reentrant version)
QNX 6.6: _readdir_r    (prefix  '_' : extra stat info included)
BB 10:   _readdir64_r  (infix   '64': large file support)

Change-Id: I00739f0e2054a32f52555309d03463a6c52e3d99
Reviewed-by: Wolfgang Bremer <wbremer@blackberry.com>
Reviewed-by: Samuli Piippo <samuli.piippo@digia.com>
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Make multisampling more robust in QOpenGLFramebufferObject

Some drivers are reported to get confused when passing different
sample counts (requested vs. actual) to the color and depth/stencil
attachments. To overcome this, pass the requested sample count to all
the attachments.

Task-number: QTBUG-33406
Change-Id: I17b0e3dbbd78de2ab0f45e95164b4f326d47aeff
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Kimmo Leppälä <kimmo.leppala@digia.com>
Avoid polluting the output with warnings on eglfs

Many windowing functions are not supported (since they do not make sense)
on the embedded platforms. Provide empty implementations for a few more
to avoid showing useless warnings, in particular for widget apps. The
user cannot do anything about it and these are not errors.

Task-number: QTBUG-39081
Change-Id: I29afd981e037d1e6772bcdfc33497e6d0ae02008
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Fix visual selection with EGL on xcb

Using a 24-bit visual for 8888 configs is wrong since we loose the
alpha channel. This breaks translucent windows and, among others,
leads to not showing drag pixmaps (that typically have transparent
areas) properly.

Change-Id: I516c84327680b76996b622831e431c29d840471e
Task-number: QTBUG-35126
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Fix alpha in no-opengl configuration on xcb

Like the EGL + xcb configuration, the -no-opengl is broken too when
it comes to translucent windows: Requesting an alpha channel is futile
since the xcb_create_window call always uses the root's depth and visual.

This is now corrected by picking a 32-bit visual.

This will make translucent windows and drag pixmaps appear correctly again.

Task-number: QTBUG-35126
Change-Id: I00e7d6e08b5fcc055ef3ea6d822561740a1f5457
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
QPlatformClipboard::emitChanged(): Do not emit signals when closing down.

Prevents a shutdown crash in the Qt Mfc migration solution.

Task-number: QTBUG-39317
Change-Id: I7f0aa40715baed57ff59682a477084347dfd45bc
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Fix selection by dragging after double click in QWidgetTextControl.

Remove return in mouseMove depending on variable mousePressed which
is not present in Qt 4. The variable was true in Qt versions
before 5.3 due to an additional mouse press event received before
a double click.

Task-number: QTBUG-39023
Task-number: QTBUG-25831
Change-Id: I57ed9284961195c71df9e9b9d697b1cfbad7c228
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>