Revert "QAIV - Fix scollbars with ScrollPerPixel to scroll 1 pixel."

This reverts commit 934f06220391eb0e0ebf66a2eb037f48adb4c43c.

The patch needs to be modified a bit. Many users considers
not having the old feature as a big regression.

The feature needs to be improved with a variable that is
only set when the user uses setSingleStep.

Task-number: QTBUG-33906

Change-Id: I35e5d3e9d3d7a3ebd01807b03a0e7a424185d483
Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Stabilize tst_QAbstractItemView::task200665_itemEntered()

It seems that sometimes QCursor::setPos() will not get the opportunity
to run the event loop before scrolling the list view unless we do it
explicitly.

Task-number: QTBUG-35060
Change-Id: Ic635bd8d1a4e3dbcadf9605e88197df6a0f69fc7
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Remove Mac unified toolbar workarounds.

QMainWindow::unifiedTitleAndToolBarOnMac() will
again return true, but the new implementation is
much more similar to the cross platform one so these
workarounds are not needed.

Task-number: QTBUG-34411
Change-Id: I8f63067f929c94aab252fc2e88f98fb94c870c44
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Implement QMainWindow::setUnifiedTitleAndToolBarOnMac

Fix a feature regression from Qt 4.

Unlike the Qt 4 implementation this does not move
the tool bars out of the QMainWindow while pretending
they are still there.

Instead, use setContentBorderThickness from the Cocoa
platform plugin to draw a background gradient that
unifies the title and toolbar area.

QToolBar can then draw itself with a transparent
background and let the gradient shine throughout.

This is a style-only change, toolbar behavior is
kept as-is.

[ChangeLog][Platform Specific Changes][OS X] Implemented
QMainWindow::setUnifiedTitleAndToolBarOnMac.

Task-number: QTBUG-34411
Change-Id: Idcaab6399f249b11edb1147856d9aece9923ab36
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Doc: Update links in INSTALL file

Documentation URLs no longer use module names in path. Also, the
pages discussing installation from source have been renamed.

Change-Id: I135dc527ec9170eab62b0ffd1f4a80cdd834e186
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Cocoa: Popups should not become key

... at least not like that.

We still need to find a way for the popup to receive and process key
events on its own, instead of depending on other layers inside Qt.
This would make Qt Quick control's PopupWindow implementation much
simpler, for example.

Revert "Cocoa: Allow popups to grab mouse and keyboard"

This reverts commit a25e6528d3806d3b5fd87c5a1cacd6c748215db1.

Task-number: QTBUG-35820
Task-number: QTBUG-35904
Change-Id: Ica10529308ab25938397c16b9c1e1ce6cbd8f247
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Revert "Cocoa: fix single punctuation input via CJK input method"

This change makes a regression.

This reverts commit a79f8a3a6774875fc16fd63461e04c2791a8d03d.

Task-number: QTBUG-36033
Change-Id: Ibcb19cd8631f85c81433c9625bbbf280404db1c4
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Fix crash due to a stale pointer dereferencing

The HB face caching mechanism introduced in 227e9a40cfeb7e00658cd3
wasn't complete due that fact that HB-NG doesn't parse the entire
font table at once but rather references a table on-demand.
This incompleteness caused a crash in case the engine doesn't
get cached or when it removed from the cache and then re-used.

Task-number: QTBUG-36099

Change-Id: I7816836107655ce7cf6eb9683bb5dc7f892f9cd1
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Michael Krasnyk <michael.krasnyk@gmail.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
[QNX] Set Window usage

Set Window usage prior to use the framebuffer.
For OpenGL windows set OpenGL usage and for
normal painting set it to native usage.

Some QNX libscreen implementations don't set
usage automatically, so we must set this explicitly.

Task-number: QTBUG-35912
Change-Id: I5154c0bcf9c65ef6d47af6a1cf8f17765ccf51dd
Reviewed-by: Fabian Bumberger <fbumberger@rim.com>
Reviewed-by: Vladimir Minenko <vminenko@rim.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Windows: Do not try to update keymap on WM_IME_CHAR messages

Task-number: QTBUG-35806

Change-Id: Ie1082353155aa7ee61f49f2fbcbfdb01d57e797c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Use non-threaded render loop on Samsung Galaxy Tab 3

We get EGL_BAD_ACCESS from eglMakeCurrent() on this device, and
only on this device, so we simply work around it by disabling
the threaded render loop.

[ChangeLog][Android] Add workarounds for OpenGL bugs on Samsung
Galaxy Tab 3.

Task-number: QTBUG-34984
Change-Id: I309881f8317473ff87aea2f92d0f6f1b898342d3
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Cocoa: avoid a crash for cursor in QCocoaWindow

It need to be copied.

Task-number: QTBUG-35887
Change-Id: Ia165e6a8f9dc23733e53e11f9e1e98bf54e7dd20
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Suppress unsafe warnings of MSVC

Added a define to suppress MSVC warning “C4996:
This function or variable may be unsafe.”
If the code is really "unsafe" then it is unsafe on
other platforms as well; so fixing these warnings just
for MSVC builds, would clutter the code and wouldn't help
in fixing issues that might exist on other platforms.
Using the same functions across all supported platforms
keeps the code clean and helps in writing code that is
safe across all platforms.

Change-Id: I470072eda4f8174bb911567ef3f061a3582ba449
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Retain compiler warning state

Added push and pop pragma warning statements. Suppression of warnings
should not propagate to user code. Therefore, suppression of warnings
is restricted to the file where it is used.

Change-Id: Ib7973cbc0205ebbe75e002d035e44fd9b447460f
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Fix compilation of ANGLE with mingw-tdm64 gcc 4.8.1

Do not rely on sprintf_s being declared/defined. This also fixes
deployment to Windows XP.

See https://chromium-review.googlesource.com/#/c/182975/ for a similar
commit proposed upstream.

Task-number: QTBUG-36242
Change-Id: I520e2f61aeab34963e7a57baafd413c7db93f110
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Work around FBO readback bug on Samsung Galaxy Tab 3

Symptom of the error is garbled text in Qt Quick 2, and the
fix has been confirmed to be enabling the texture resize workaround.

Task-number: QTBUG-34984
Change-Id: If6f621b43120c7913cbd33ab326c52ad6e2599bc
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Fix a bug in some QString comparison operators

Some comparison operators comparing to const char *
where not implemented correctly.

Task-number: QTBUG-34024
Change-Id: Idbdc64c8ed93e88d9f2b2f55213bc785b33cb543
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
Don't skip content drawing for QtQuickControls SpinBox

If XPThemeData::noContent is set to true, the SpinBox from
QtQuickControls renders with transparent background, which is being
workarounded by simply adding white rectangle inside the QQC SpinBox,
which in turn breaks other themes.

This works in normal widget's QStyle because the spinbox there
is drawn with a frameless QLineEdit, which fills the background.

Setting XPThemeData::noContent to false for QtQuick items only makes the
QQC SpinBox render correctly with Windows Vista style.

Change-Id: I3229a2582dd1cad95c77e0961aaef502a8c6159a
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Do not limit clang generated debug info to dwarf-2 on mac.

Dwarf-2 is treated as deprecated (at best) by llvm, and does not support
a lot of C++ language features. Most notably, it does not support
namespaces and template parameters. By not specifying the dwarf version,
the compiler can decide which version to use.

Change-Id: Ic32f9101c4db0f06a8ace8f5e04af9236d01598e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
Initialize QGuiApplicationPrivate::lastCursorPosition to inf

This makes sure that we don't think a mouse area at position 0, 0
contains the mouse on startup.

Task-number: QTBUG-36191

Change-Id: I68a8aed195531f506372ef465734661069b60f57
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>