Android: Use native platform menus.

This is an Android only patch, a proper implementation
will be pushed soon to stable branch.


Task-number: QTBUG-29462
Task-number: QTBUG-33588

Change-Id: I3447c523b4533a768d7f95e4ae60541b09a7944f
Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
tst_QWindow: Set explicit window position to please qWaitForWindowActive

qWaitForWindowActive waits until the timeout for the window to receive
a non-0x0 position, even when it's active, just in case the WM sets
the position as a response to focus-in.

Change-Id: I748cce2747f406a8cdff556465175f02675fcd13
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
iOS: Don't enable kEAGLDrawablePropertyRetainedBacking

We report our swap-behavior as QSurfaceFormat::DoubleBuffer, which means
there's no point in using retained backing. This was a left-over from
when we reported single-buffered swaps, which didn't work to well as
clients would wrongly assume swap was not needed at all.

Change-Id: Id26df2f8b282892c720d48cfe85eb9e010f1500d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Android: Remove usage of QObject::tr()

Change-Id: I948d9fc36aa52d2d247a84b5d9b2cf949b93387d
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
initialize WHICH, AWK, PERL and MAKE a bit earlier

have this option independent code out of the way before starting option
processing.

Change-Id: I5a08caeb25689b155c256ef82505c000112f5039
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
remove hacks to support solaris 2.[56] and aix < 5

moving dead code out of the way of further refactoring.

Change-Id: If558406cdf13d61478634dd7eff644dc67b0e53d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
don't automatically display help on error

it's entirely pointless to flood the user with information and force him
to scroll back when he most likely just made a typo.

apart from that, this reduces the data dependencies, thus easing further
refactoring.

Change-Id: I7b24274d453de54a4f02481a66d77e27d4ab0657
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
move some option validations to more relevant places

minimizing the amount of code executed before platform detection.

Change-Id: Ib2c0d97ce5040ced8c4c41d74f428fe7d0f75664
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
do CONFIG+=silent after configure tests

it's counterproductive to do it earlier: it's passed down to configure
tests, which then log less info than they could.

but primarily, this serves the purpose of minimizing the amount of code
executed before platform detection.

Change-Id: Iff19b8555de19d048ea6d9341af965871b314c54
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
make help independent from options and environment

the help would echo the defaults adjusted by command line overrides and
environment variables for some options. this was entirely pointless.
it also printed the result of the os detection, which was mostly
useless.

but the primary reason for doing this is reducing data dependencies,
so the code can be moved up.

not touching the windows configure, as it's a lot harder and currently
that behavior isn't in the way of what i need to do.

Change-Id: Ide62119091c8494fb3bea2b607f140268f057919
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Ensure Qt::WA_Mapped is set in case of obscured native windows.

Task-number: QTBUG-33520
Change-Id: I51f9b4634be29fd32f4ad9cc8b5d3e10b19ea2f5
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
print help right after parsing command line

is the only sane thing, and now that there are no dependencies on
anything else any more (in particular anything slow or side effect
laden), we can actually do it.

this removes some nasty OPT_HELP checks spread throughout the code, thus
further reducing data dependencies.

Change-Id: Ib0a00e1514e2aa25ec3b527ba9f5719e3214640b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
don't initialize build dir earlier than necessary

this way, platform detection (and later license checking) become
(mostly) read-only operations.

Change-Id: I4c5ffcf80feadfeee2c6e927cf0285f46fa6ea43
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
consolidate all license checking in the earliest place possible

... which is right after performing the platform detection, as proper
license checking needs to know the target platform.

we can do that now, as we moved all more expensive or side effect laden
processing to a later point.

as a side effect, we also get rid of the weird early cmdline parsing.

Change-Id: I0fda0a15a1ea2082603f7097e89aa422853f30fa
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
clean up mess surrounding PLATFORM_MAC

introduce XPLATFORM_MAC which is properly initialized from the spec
instead of from the host.

use that and BUILD_ON_MAC where appropriate.

minor bug: during command line arg validation we use BUILD_ON_MAC even
when XPLATFORM_MAC would be in order, because the latter is not
available at that point yet. the solution would be delaying the
validation, but that doesn't seem worth the effort now.

Task-number: QTBUG-33896
Change-Id: I63f361212961bfdd82efde2ca71a1f48904a85fb
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
fix overquoting in some mkdir calls

Change-Id: I2ed418064d43ab8cdab87af48e03d983c023ccf5
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
iOS: Send expose events in the window's coordinate system, not the parent's

Change-Id: I4aa1a354ca14864bd9898ebd331871d7b32d3ae0
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
tst_QWindow: Use showNormal() to prevent maximize/fullscreen interference

We don't want platform behavior for whether or not maximized/fullscreen
windows can be resized to affect the test for resize event propagation.

Change-Id: I8c118733ca5d2553aacf24d0b8debeb1a4e27103
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
iOS: Don't keep around reference to a single QIOSViewController

We might have more of them in a multi-screen setup or when implementing
support for modal windows using sub-viewcontrollers.

Change-Id: Ibe98273a13af981fffe2704a2c05bfd9d3f3e9e0
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
iOS: Allow non-top-level windows to be activated

As tested and assumed by tst_QWindow::isActive().

Change-Id: I8d09263ce0acc9c3390a70b4089396257197a1be
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>