ANGLE: Don't export DLLMain functions for static builds

These ifdef guards were originally a part of
"0004-Make-it-possible-to-link-ANGLE-statically-for-single.patch",
but were lost during the last ANGLE upgrade.

Task-number: QTBUG-37842
Change-Id: I4340c1641675dd310c14454a851eb4bc0ae2ec0d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
d3dcompiler_qt: Directly link the d3dcompiler DLL on WinRT 8.1

The compiler DLL is a system module starting with Windows 8.1, so
directly link to it instead of expecting a packaged DLL. This makes
shader precompilation completely optional on this platform.

Change-Id: I46cd175ac32e4909a518a059721241b1d6e7be17
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
Android: Convert plain text to html text for native dialogs.

Task-number: QTBUG-37824

Change-Id: I380b41d300b198b6cf3060bbecb5b98e0190b69a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Polish the image gestures example.

- Add a command line parser to properly evaluate help option and
  directory argument, add options to disable gestures.
- Add logging category so that the user can actually see what is
  happening.
- Scale large images.
- Use qreal instead of float.
- Minor polishing: set window title, position file dialog at
  pictures location.

Task-number: QTBUG-37759
Task-number: QTBUG-37203

Change-Id: Ibaf54a13034b150386a8aee476f83a9eba298298
Reviewed-by: Indrajit Tapadar <indrajit.tapadar@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
iOS: Add support for offscreen GL surfaces without using hidden windows

There's no need to create a hidden window to get a surface on iOS, as
the platform supports FBOs. Note that defaultFramebufferObject() returns
0 in the case of offscreen surfaces, which is technically not a valid
FBO on iOS due to the indirect rendering, but binding and rendering
to the zero-FBO seems to be no-ops, so clients may safely call eg
glBindFramebuffer(GL_FRAMEBUFFER, ctx->defaultFramebufferObject())
to restore the default FBO after drawing to its own FBO.

Change-Id: I2e67f5d69c0698562052f5ac1df0bbfaa3337148
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reduce clang compilation time of tst_qmetatype by ~2%

Change-Id: I64fe12dd0bf9c35ae06fc5a68addc36848cdda3b
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Pass events to QGestureManager from the main (GUI) thread only.

Task-number: QTBUG-20946

Change-Id: I964452c1e97bd3d3a521e33abeb2f7d8cdbc89a9
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Android: implement batch editing for input methods

Task-number: QTBUG-37584
Change-Id: I59f063b2e4b6427a66f7b561cfae7193ceafa43c
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Fix disappearing transient scrollbars

When a transient scrollbar is already at the end and user attempts to
scroll further, the scrollbar is "flashed" to indicate that the scroll
area is already scrolled to the end. This is done so that the scrollbar
is first painted with a flag turned on to make it appear visible and
then again with the flag turned off to make qstyle start fading it out.

The previous code that relied on paint events to clear the flag was
error prone, and caused the scrollbars to get stuck in an inconsistent
state. This change makes sure that the flag gets cleared regardless of
whether a paint event in each state is received or not.

Task-number: QTBUG-37787
Change-Id: I907697c32cd4d55208a490804a221a5dd6bf7b0b
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Avoid out of bounds memory reads when scaling images

The calculation of the width/height required for the
scaling algorithm was prone to floating point rounding
issues, where the lower value got rounded down, the higher
one rounded up. This could lead to a situation where we
iterated over one more line/pixel in the line than we have
in the source image.

Correct this by passing the dimension of the source image into
the function and bounds checking the values before iterating.

Task-number: QTBUG-35927
Change-Id: If44b2235a479224660d508a0504fec40d724763a
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Do not rely on the list of standard font sizes for QFontDialog.

QFontDialog should always show the correct size, even if the size
is not available in the list of standard font sizes. Native font
dialogs across common platforms show the correct size at all times.

Inside init() function, the size list requires proper initialization
since the initial value of size is zero.

Task-number: QTBUG-10317
Change-Id: Idc9e922ac95f797ac98bbf6c885e52828c4c48fd
Reviewed-by: Liang Qi <liang.qi@digia.com>
Stabilize tst_qtoolbutton for Windows 8.1.

Ensure triggered() and task176137_autoRepeatOfAction()
are using an active main window. Change click timer in
triggered() to repeat until the menu is visible and
add a timer to close the widget and bail out if the
simulated click fails to close the menu.

Task-number: QTBUG-37822
Change-Id: If675660d02335bffd5caa89796914924dad1a909
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com>
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
tst_qgraphicsproxywidget: Fix hang in actionsContextMenu().

Change the test widget to use a non-single-shot timer
to hide the menu once it has become visible.
The test shows hangs on Windows 8.1 CI nodes.

Task-number: QTBUG-37822
Change-Id: I8fc782e53256616119920aef714f89f25863b39f
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
tst_qaccessibility: Introduce QTRY_VERIFY to menuTest().

Fixes failures on Windows 8.1.

Task-number: QTBUG-37822
Change-Id: I30460f430e2249555c4e857237e27aa9b03dfa1b
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>