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>
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>
Merge remote-tracking branch 'origin/release' into stable

Change-Id: I885821d93a41b0caad627bfc16aa8eed21d2f5b9
qdoc: Fix crash in Generator::generateInnerNode

Using an iterator is not a good idea since the generateInnerNode can
end up adding new items to the childrenNode list and thus the iterator becomes invalid

Without this patch i was getting this trace in valgrind
    ==19251== Invalid read of size 8
    ==19251==    at 0x474350: Generator::generateInnerNode(InnerNode*) (generator.cpp:1018)
    ==19251==    by 0x4A422D: HtmlGenerator::generateTree() (htmlgenerator.cpp:276)
    ==19251==    by 0x4AC369: processQdocconfFile(QString const&) (main.cpp:515)
    ==19251==    by 0x40B894: main (main.cpp:669)
    ==19251==  Address 0x943c1c0 is 0 bytes after a block of size 32 free'd
    ==19251==    at 0x4C2C72E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==19251==    by 0x51676F2: QListData::realloc(int) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.0)
    ==19251==    by 0x51677EE: QListData::append(int) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.0)
    ==19251==    by 0x439BAB: QList<Node*>::append(Node* const&) (qlist.h:533)
    ==19251==    by 0x4B46B3: InnerNode::addChild(Node*) (node.cpp:1262)
    ==19251==    by 0x4B48DC: Node::Node(Node::Type, InnerNode*, QString const&) (node.cpp:179)
    ==19251==    by 0x4B539F: InnerNode::InnerNode(Node::Type, InnerNode*, QString const&) (node.cpp:1193)
    ==19251==    by 0x4B54EB: DocNode::DocNode(InnerNode*, QString const&, Node::SubType, Node::PageType) (node.cpp:1608)
    ==19251==    by 0x4C0C5E: QDocDatabase::findQmlModule(QString const&) (node.h:535)
    ==19251==    by 0x497EEA: HtmlGenerator::generateQmlRequisites(QmlClassNode*, CodeMarker*) (htmlgenerator.cpp:2005)
    ==19251==    by 0x4995B9: HtmlGenerator::generateDocNode(DocNode*, CodeMarker*) (htmlgenerator.cpp:1533)
    ==19251==    by 0x474508: Generator::generateInnerNode(InnerNode*) (generator.cpp:1010)
    ==19251==    by 0x474372: Generator::generateInnerNode(InnerNode*) (generator.cpp:1019)
    ==19251==    by 0x4A422D: HtmlGenerator::generateTree() (htmlgenerator.cpp:276)
    ==19251==    by 0x4AC369: processQdocconfFile(QString const&) (main.cpp:515)
    ==19251==    by 0x40B894: main (main.cpp:669)

Change-Id: I7a6ae0a689ea5edddacf7f27f9dce95b26a441df
Reviewed-by: Martin Smith <martin.smith@digia.com>
Merge "Merge remote-tracking branch 'origin/release' into stable" into refs/staging/stable
Do not overwrite basePixmap of QIconLoader PixmapEntry

Change-Id: I4799af1d9151ba4b0952369e9620d2fab2b002d9
Reviewed-by: David Sansome <me@davidsansome.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>