Commit Graph

22237 Commits

Author SHA1 Message Date
Olivier Goffart
3cf8e426f4 QMetaType: Automatic registration of Q_GADGET and Q_ENUM types
Change-Id: If43dcc2b77fea5ae3ec40cc847467fc21fbd2c83
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-02-12 07:11:04 +00:00
Alex Trotsenko
071716f2da QAbstractSocket: remove unneeded cleanup calls and private member
QAbstractSocket::close() always calls QIODevice::close(), which resets
QIODevice's internal read buffer. So it makes no sense to make same calls
from disconnectFromHost(). This made the closeCalled private member
superfluous.

Change-Id: I4ec64e9711490e44e737763e4ed7fb41bffe2556
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-02-11 21:19:13 +00:00
André Klitzing
2688725eb7 Use a union for different openssl types
Since the algorithm can only be one the underlying structure can
share the same memory.

Change-Id: Ifeaa1a2d5c4ad3566cbbf847445b805876275260
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Richard J. Moore <rich@kde.org>
2015-02-11 21:00:04 +00:00
A. Klitzing
2af1277631 CMake: Introduce qt5_add_binary_resources
Optional parameter DESTINATION to set target rcc file

Example:
qt5_add_binary_resources(GenerateFixture "fixture.qrc")

Task-number: QTBUG-41728
Change-Id: I9dc2fe8e7d5e9ad3873b89f75ab84a2a1b9d1d29
Reviewed-by: Stephen Kelly <steveire@gmail.com>
2015-02-11 20:59:35 +00:00
Jani Heikkinen
83a5694dc2 Update copyright headers
Qt copyrights are now in The Qt Company, so we could update the source
code headers accordingly. In the same go we should also fix the links to
point to qt.io.

Outdated header.LGPL removed (use header.LGPL21 instead)

Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing
combination. New header.LGPL-COMM taken in the use file which were
using old header.LGPL3 (src/plugins/platforms/android/extract.cpp)

Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license
combination

Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe
Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
2015-02-11 06:49:51 +00:00
Friedemann Kleint
29daa7645b Windows: Reintroduce copy of argv.
Since argc/argv is modified by QCoreApplication-derived classes,
a copy of the original arguments is needed for comparison.

This fixes a crash in Qt Quick 2 tests (which use
the -qmljsdebugger=<port> argument) introduced
by dff18b8e80 .

Task-number: QTBUG-30330
Change-Id: Ic145ac923e0a7c504ab16602c8686268e4fd9700
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-02-10 17:00:05 +00:00
Laszlo Agocs
0866680bd9 Merge "Merge remote-tracking branch 'origin/5.4' into dev" into refs/staging/dev 2015-02-10 16:57:11 +00:00
Sergey Radionov
34ea269b3b Win: fix wrong mouse leave event generation
When Qt runs in process with low integrity level,
and place child QWindow to HWND from less restricted process,
ChildWindowFromPointEx could fail with ERROR_ACCESS_DENIED
and QWindowsScreen::windowAt will return 0 despite mouse is on window.

Task-number: QTBUG-44332
Change-Id: I07e1594b90cbde8a9496f8d53ef247a7c69d8715
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-02-10 16:55:37 +00:00
Frederik Gladhorn
fc35f71434 Merge remote-tracking branch 'origin/5.4' into dev
Conflicts:
	src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro
	src/gui/image/qimage_conversions.cpp
	src/gui/opengl/qopenglextensions_p.h
	src/gui/text/qtextengine.cpp
	src/network/ssl/qsslsocket_openssl.cpp
	src/plugins/platforms/eglfs/qeglfshooks_stub.cpp
	src/plugins/platforms/eglfs/qeglfsscreen.cpp
	src/plugins/platforms/eglfs/qeglfswindow.cpp
	src/plugins/platforms/windows/qwindowsfontdatabase.cpp
	src/plugins/platforms/windows/qwindowsfontdatabase_ft.cpp
	src/plugins/platforms/windows/qwindowsnativeinterface.cpp
	src/plugins/platforms/windows/qwindowsscreen.cpp
	src/plugins/platforms/windows/qwindowswindow.cpp
	src/plugins/platforms/windows/qwindowswindow.h
	src/plugins/platforms/xcb/qxcbdrag.h
	src/widgets/itemviews/qabstractitemview.cpp
	src/widgets/kernel/qwidget.cpp
	src/widgets/util/qsystemtrayicon_p.h
	tests/auto/corelib/itemmodels/qsortfilterproxymodel/tst_qsortfilterproxymodel.cpp

Thanks to Friedemann Kleint for resolving the qwindowsfontdatabase.cpp
conflicts.

Change-Id: I937232c30523d5121c195d947d92aec6f129b03e
2015-02-10 09:42:25 +01:00
Jan Arve Saether
68293395ed Add support for snapping to pixel grid
This enables us to do more intelligent distribution than simply doing the
rounding on each individual items geometry (which often leads to larger
spacings than specified).

Instead of doing the rounding on the output geometries, we now do the
snapping inside the layout engine. This allows us to do more intelligent
distribution of items, and spacings should always be respected.

There are some cases where items with fractional size hints might overlap
with less than a pixel.  This was also the case before this patch. Those
cases are impossible to fix properly, since fractional size hints
conflicts with the snapping in some cases.

(Fractional size hints is normal for Text items.)

Task-number: QTBUG-41216
Change-Id: I01a8bc3529f0b8b028d6eb0a530c751b67ac6f4e
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-02-09 12:06:34 +00:00
David Morgan
18aae36a90 OpenGL: Add versioned functions support for opengl 4.4 and 4.5
Previous errors in versioned function classes for OpenGL versions
prior to 4.4 have also been fixed to comply with the new OpenGL
xml specification. Such mistakes were due to either bugs in the
old plain text specification files or problems due to the
difficulty in parsing the old spec files.

In some cases this has meant adding in missing functions that were
absent previously.

The other class of problem was when functions were erroneously
included in the versioned function classes when they should not
have been present. That is, some core profile classes incorrectly
had member functions for deprecated functions that should only
be present in the compatibility profile classes. In these cases
these incorrect functions will now trigger a qFatal if
called. This is fine as any applications that called these by mistake
in the past would have been dereferencing a null pointer as the
function pointer resolution would have failed for these functions.

[ChangeLog][QtGui] Add version function classes for OpenGL 4.4 and 4.5
and deprecate some erroneously classified functions.

Task-Id: QTBUG-33671
Task-Id: QTBUG-44364
Change-Id: I224108dcaf4f8b4933bc121827511841e2a41590
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2015-02-09 11:39:18 +00:00
Allan Sandfeld Jensen
38aafe1a17 Optimize unpremultiply on SSE4.1
Adds an SSE4.1 optimized version of qUnpremultiply and uses it in the
most drawing conversions methods. This gives a speed-up of little over
2x.

Change-Id: Ieb858a94ada1eb86d7af715ac1a100f1587f360d
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-02-09 11:36:49 +00:00
Kai Koehne
868201155f QtCore: Use QDebugStateSaver in (almost) all QDebug operator<<
Unify the behavior of the different operator<< by always using
QDebugStateSaver (appending an optional space at exit), and making
sure that the space(), nospace() setting isn't 'leaked'.

Change-Id: I38e4f82fa6f7419d8b5edfc4dc37495af497e8ac
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
2015-02-09 11:30:02 +00:00
Shawn Rutledge
6389160f04 D-Bus tray icons: save temp file with size 22px
Gnome Classic on Ubuntu shows this icon but fails to scale it down.
So if we do not pre-scale the icon, it will be too wide, and cropped.

Change-Id: If8cf98de3672deff77b99b17da5491bd6c45cfdb
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-02-08 21:14:28 +00:00
Shawn Rutledge
bf65a58e5a remove stray QGuiApplicationPrivate::wheelEventSource declaration
It is unimplemented and probably unnecessary.  Unintentionally included
in commit 74443d7bbb.

Change-Id: I3a1afb20e673fa0611b602a11ceca1953231ac14
Reviewed-by: Andrew Knight <qt@panimo.net>
2015-02-08 21:14:09 +00:00
Richard J. Moore
31e85dc2a1 Remove unnecessary direct access to SSL_CIPHER struct.
The cipher is always valid here, so this check was never needed anyway.

Change-Id: I22be273d166702926b98f0c9443657a1dde65f6e
Reviewed-by: Daniel Molkentin <daniel@molkentin.de>
2015-02-08 20:47:52 +00:00
Richard J. Moore
9f59341d07 Remove legacy ifdefs for ancient openssl.
There were still ifdefs for openssl 0.9.7 and openssl 0.9.8f.

[ChangeLog][QtNetwork] Some legacy ifdefs for openssl 0.9.7 and openssl 0.9.8f
were removed, Qt will no longer build with these versions. In addition there
is no support for openssl built with NO_TLSEXT.

Change-Id: I9268515c0a125a2f6d79add8ee1cb40768e7e898
Reviewed-by: Daniel Molkentin <daniel@molkentin.de>
2015-02-08 20:47:39 +00:00
Laszlo Agocs
d12f65a66a Add more notes regarding the uniform setters
Having overloads for GLuint that call glUniformNi was a mistake to begin with,
and it has only been made worse when later OpenGL versions introduced unsigned
int support and glUniformNui. Note this in the docs.

Task-number: QTBUG-37012
Change-Id: Icc867221d0fbced8c4ff769deee66effa022f1b5
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-02-08 16:37:21 +00:00
Maks Naumov
c2f26d6d0b Use prefix instead of postfix for iterators
The postfix increment(decrement) creates a temp copy of *this before the
modification and then returns that copy. It's needed only when using the
old iterator and then incrementing it.

Change-Id: I7f6702de78f5f987cec3556047e76049b4ee063a
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-02-08 12:25:12 +00:00
Olivier Goffart
163b852951 QtWidgets: use Q_ENUM instead of Q_ENUMS
Change-Id: Id5280c1d9feab95e1506569f3d0eb23eeb74935f
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-02-08 12:19:07 +00:00
Olivier Goffart
e768d96e8b QtGui: use Q_ENUM instead of Q_ENUMS
Change-Id: I92ac2ea218e9134aa36ecb179b8ae790a2dba56a
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-02-08 12:18:52 +00:00
Olivier Goffart
ba7cedb058 QtNetwork: use Q_ENUM instead of Q_ENUMS
Change-Id: I531191fae910354abd2e5ceb7c8ecf0519ccad97
Reviewed-by: Peter Hartmann <peter-qt@hartmann.tk>
2015-02-08 08:48:51 +00:00
Giuseppe D'Angelo
b4bcc50c32 QOpenGLVertexArrayObject: remove a now unnecessary initialize call
Change-Id: I03a14c52dd5a02de0c1cc1c2df5d4529acff9acd
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-02-08 00:22:07 +00:00
Laszlo Agocs
4d19c3a354 Avoid the initializeOpenGLFunctions() call after versionFunctions()
Try making it compatible with QOpenGLContext::functions() which returns
an already initialized QOpenGLFunctions.

Unfortunately we cannot make them 100% compatible because functions()
conveniently requires that the context (or a sharing context) is current.
versionFunctions() has no such requirement and we cannot safely introduce
it anymore.

What we can do is to state that as long as the context is the current one,
the initializeOpenGLFunctions() call can be omitted. If another context (or
no context) is current, the call will still be needed, like it is today.

Also, we require that the exact same context is current. Sharing does not
count since the exact behavior of sharing contexts with different versions
is unknown.

[ChangeLog][QtGui] initializeOpenGLFunctions() no longer needs to be called when
querying a versioned function wrapper object via QOpenGLContext::versionFunctions().

Change-Id: I0b4d1ae1f780da3f5dec9fc8dc67255c13faab6e
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-02-07 20:29:30 +00:00
Laszlo Agocs
b8aeb4a256 Make mipmap levels and texture comparison work with GLES 3.0+
In ES-only builds (-opengl es2) we hit the QT_OPENGL_ES_2 path which
disables all this. Not ideal since all the support is present in GLES 3.0.

Therefore, stop relying on the ifdef and do runtime checks. This also needs
defining the constants manually since they are not available in gl2.h and our
own ES2 extension headers provide some of these with silly silly suffixes.

Change-Id: I8ad7f5091a371bad1e3c6dc4898342a175016274
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-02-07 20:29:27 +00:00
Giuseppe D'Angelo
773e33af43 QOpenGLWidget/Window: improve docs for the dtor
Remove a typo and add the standard sentence about a dtor.

Change-Id: Ie21ad6d2e83977705ea43fdc872d08f496a32376
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-02-07 20:29:16 +00:00
Richard J. Moore
9aabc62312 Stop accessing the internals of the SSL_CTX structure.
Change-Id: I51733e9a3bb0d5d54dc2f61ac75751d899a84bd1
Reviewed-by: Peter Hartmann <peter-qt@hartmann.tk>
2015-02-07 20:08:02 +00:00
Shawn Rutledge
f4b8697c40 Handle gracefully the removal and re-attachment of all QScreens
Don't crash; restore windows when all screens are removed and re-added.
xcb: on configure notify, check for screen change: it may be that a
window belonging to a screen which was removed has now gotten mapped
to the new screen.  On screen change, send a synthetic expose event,
because the real expose events already happened.

Task-number: QTBUG-38326
Task-number: QTBUG-32973
Task-number: QTBUG-42985
Change-Id: If334f55c248468ad3c95e7066bb14eca377d2050
Reviewed-by: Jørgen Lind <jorgen.lind@theqtcompany.com>
2015-02-07 16:19:59 +00:00
Daniel Molkentin
45b60c01ef Flag libproxy as a private library
libproxy is not part of Qt's public interface, but a helper library
used by Qt. Treat it as such by using LIB_PRIVATE.

Task-number: QTBUG-44326
Change-Id: I014f992e4b7a51de1e5a7407ce1bd08dd5352136
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-02-07 16:19:04 +00:00
Jochen Seemann
89bd855efb configure.exe: disable ANGLE backend for Linux targets
As default, configure.exe checks if ANGLE is available and prints a warning
if not. This isn't needed if the target platform is Linux.

Change-Id: I2966965ea194c61bf9847e1ee130f2e765d5b0aa
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-02-07 13:26:47 +00:00
Jochen Seemann
5380281fe1 WinRT: fix QLibrary::isLibrary() due to incomplete #if statement
Q_OS_WINRT was missing in the Windows-condition.
Condition was simplified through use of Q_OS_WIN.

Change-Id: I1a49d2d9c413dc2156930b6915e1675abcdde36f
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-02-07 13:26:37 +00:00
Jeremy Lainé
06524c11dc ssl: add test for server-side QSslSocket::PeerVerifyMode
This adds tests to check the behavior of a QSslSocket-based server when
presented with various client certificates.

Change-Id: I431157e46cfb00880ae8b7a33015cce50e56b6bb
Reviewed-by: Daniel Molkentin <daniel@molkentin.de>
2015-02-07 06:51:05 +00:00
Jeremy Lainé
cbec1ed1a1 ssl: fix QSslSocket::peerCertificateChain in server mode
The OpenSSL backend for QSslSocket return an incomplete peer certificate
chain when in server mode: it does not include the peer's certificate as
the first element of the chain.

This change fixes this issue.

Change-Id: I2f0815bca2f314a075b48a2d0b5a6d5b7af50722
Reviewed-by: Daniel Molkentin <daniel@molkentin.de>
2015-02-07 06:50:51 +00:00
Sérgio Martins
14d5d4bae6 Fix developer build on gcc 4.9
kernel/qnetworkproxy_libproxy.cpp:152:57: error: suggest parentheses around comparison in operand of ‘&’ [-Werror=parentheses]
         if (proxy.capabilities() & requiredCapabilities == requiredCapabilities)

Change-Id: I37eba3443802e4949bab03e9cb4f3fb664fa492d
Reviewed-by: Richard J. Moore <rich@kde.org>
2015-02-06 20:03:59 +00:00
Konstantin Ritt
ba640a75a5 [QQuaternion] Introduce to/from rotation matrix conversion routines
Change-Id: Ic19824e7e135f53a9ce3f2ea7ecd078a589e7425
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2015-02-06 16:14:38 +00:00
Kåre Särs
0d990b9ca1 Fix Meta+... shortcuts on XCB
If the window contains a widget that accepts text input, a Meta+...
shortcut will be interpreted as if no modifier was pressed. This fix
enables the usage of Meta+... shortcuts for the XCB platform plugin.

Change-Id: I80034b7e6bbbf18471c86fc77320d5038f5740be
Task-number: QTBUG-43572
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
Reviewed-by: David Edmundson <davidedmundson@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2015-02-06 11:27:33 +00:00
Maks Naumov
b444769840 Don't crash with invalid QModelIndex or when QTreeWidgetItem is NULL in mimeData()
Change-Id: I0a9abaa05cf136eadf222d3e7d102930719b84ff
Reviewed-by: David Faure <david.faure@kdab.com>
2015-02-06 09:43:38 +00:00
Friedemann Kleint
b3fc5e1ea3 Improve handling of screens in QWidgets.
Historically, the screen number of a QWidget was stored in
QTLWExtra::screenIndex which came in via the Q_WS_QWS platform.
The variable contained the screen number of the QDesktopScreenWidget
and the desired screen number for widget creation (from parent widget
or desktop parent widgets) and was not updated according to widget
geometry or when the associated QWindow moved to another screen.

Storing the screen number is problematic in Qt 5 since it may change
when the list of QScreens in QGuiApplication is rearranged.

This change renames it to initialScreen and changes its usage to only
contain a screen number when a screen is requested by parenting
on a desktop widget or reparenting. A value of -1 indicates no screen
is requested and the number should be deduced from the geometry.

For the usage in QDesktopScreenWidget, add a method to determine the
number via index in the list of QDesktopWidget.

Task-number: QTBUG-44070
Task-number: QTBUG-44213
Change-Id: I153d19073ad4b0fd14ef3d24caa6d3e76f350e82
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-02-06 09:36:16 +00:00
Gunnar Sletta
5666740d88 Revert "Introducing QPlatformHardwareCompositor."
I'm having seconds thoughts about this api. Better to
not commit to it just yet.

This reverts commit ebdd4a0ba7.

Change-Id: I9725e3172b0166b56364a34db246eabb685e855d
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
2015-02-06 07:02:40 +00:00
Eike Ziller
4805714b0f QIcon: Fix that HiDPI image was not found with QRC alias
When using images in QRC and giving the 1x and 2x image files
respective aliases but without any file extension
(for example 'myimage' and 'myimage@2x'),
then QIcon would fail to find the 2x variant.

Task-number: QTBUG-44049
Change-Id: I400bf6d22aeefe0aa351c68e473bf24ac2a36471
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-02-06 06:32:34 +00:00
Samuel Gaist
6246e142a4 Improve QTextDocument::setPlainText/Html doc related to undo stack
This patch aims to improve the documentation of setPlainText/setHtml to
let the user know that the undo stack is cleared when both these
function are called.

Change-Id: I079f9f1dd407387941777ebbc7b5a7bc6dc005ec
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
2015-02-05 23:56:30 +00:00
Samuel Gaist
dd4b09ae1a Fix QLineF Detailed Description
Currently angle() is used in place of angleTo() to describe the
difference with intersect. This patch fixes that.

Task-number: QTBUG-44309
Change-Id: Idfc521932247f76fe15fd980ff8e87e52feec1f1
Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com>
2015-02-05 23:35:25 +00:00
Sune Vuorela
14dc887090 Remove __DATE__ usage from qtbase
This message is just informal, and not really relevant to the test case.

qtbase can now be built with -Werror=date-time

Change-Id: Ic14289f2f801d5a6e811869e60afb9691c7ca98b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-02-05 21:18:26 +00:00
Sune Vuorela
99f8e817fe Make .la file generation reproducible in qmake
qmake seems to be adding current date/time to the .la files for no
reason, so let's stop do that.

This way, two invocations of qmake actually gives bit for bit similar
output of .la files.

Change-Id: I93c7c4075cc1e05214849eec8629f41ce01e5914
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-02-05 21:17:29 +00:00
Stephan Binner
dc393a2bae Fix build of egl integration
Add qtextstream.h includes before header files define Status

Change-Id: I02e1fe710d4371100509a7fafac1eda8f436d80f
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-02-05 20:00:58 +00:00
Laszlo Agocs
95573dfc50 Remove unused function from rpi hooks
This is a leftover from the old experimental mouse cursor support
which got removed. Avoid compiler warnings by removing this function too.

Change-Id: Id269ff987883708d1061a315fef70b8fc6f13706
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
2015-02-05 19:20:39 +00:00
Laszlo Agocs
4849735539 Remove todo note about QXcbWindow::format()
It _is_ the actual format after create(). This is true at least
since modularizing the GLX and EGL integration. See resolveFormat()
in the integration plugins.

This is important to clarify since other platform plugins usually
return the input (requested) format as-is. We must therefore be
careful with misleading notes as the situation is complicated enough
already.

Change-Id: I8e394680fa8fe3c80941a2a08fa873f831d6403c
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
2015-02-05 19:20:17 +00:00
Laszlo Agocs
b066467be7 Set some state before rendering the EGL/GLES mouse cursor
Custom OpenGL rendering code often sets these and, unlike the Quick scenegraph,
may not reset it before calling swapBuffers(). Play nice with the most commmon
settings.

Resetting the active texture unit is critical in particular, since frameworks
like Qt3D will change this.

Change-Id: I86acaf7e0b2ce67a23c731fffce4f20375614321
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
2015-02-05 19:20:10 +00:00
Marc Mutz
f246e380c3 QAbstractTableModel/QAbstractListModel: reimplement sibling()
This basically inlines the call to parent(), which unconditionally
returns QModelIndex().

The change is binary compatible, because even though we newly
override a previously non-overridden virtual method, it doesn't
matter whether old code still calls the base class' method, as
the new implementation is semantically equivalent, at least if
subclasses don't inherit parent() (but why would they).

[ChangeLog][QtCore][Important Behavior Changes] QAbstractTableModel
and QAbstractListModel now reimplement sibling() to avoid calling
parent() (which returns a constant). Subclasses of these models
that override parent(), will likely also need to override sibling()
now.

Change-Id: I9e0cb5622a6d3826e40acaf0e0cd3fdea85cba2d
Reviewed-by: David Faure <david.faure@kdab.com>
2015-02-05 18:31:21 +00:00
Shawn Rutledge
612953a626 xcb: delay showing tray icon window until it is embedded
Otherwise there is a race condition: when the tray implementation
gets around to embedding the window, if it was already shown,
it will be unmapped, embedded, and then remapped. Some tray
implementations will resize the tray icon to 1 pixel wide in
that case. We also never want to show a window that was intended
for the tray in any other location, so it's better that it remain
invisible until we are sure it is embedded.

Task-number: QTBUG-31762
Task-number: QTBUG-35658
Task-number: QTBUG-32811
Change-Id: Id324b0bfded0f8258ff1686a223cb2c069827d42
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-02-05 14:55:10 +00:00