Commit Graph

23910 Commits

Author SHA1 Message Date
Richard J. Moore
21ec751cdc Remove unsafe random seeding fallback path.
OpenSSL should automatically seed the random number generator, and the
current fallback code does not offer strong guarantees. It should
never actually be used, so let's remove it entirely.

Change-Id: I9a0a70345fe8df5913871bcac644623b687aea01
Reviewed-by: Peter Hartmann <peter-qt@hartmann.tk>
2015-05-29 21:34:29 +00:00
Friedemann Kleint
0c5befa129 Reanimate test gui/kernel/qtouchevent/tst_qtouchevent.
Add CONFIG += testcase to the .pro file which was missing.
The test thus was never executed by make check and left to
rot.

Fix up code:
- Remove module includes.
- Introduce explicit constructors taking parent object
  for helper classes, removing calls to setParent().
- Ensure test does not leak objects by converting pointers
  to stack variables or introducing QScopedPointer, verify
  by checking for an empty window list in cleanup().
- Simplify code by removing unneeded variables.
- Split up conditions in QVERIFY().

Fix tests:
- Show windows were required when events are sent to
  QWidget::windowHandle().
- Invert the conditions checking whether touch events are
  accepted by widgets since widgets no longer accept them
  by defaults in Qt 5 after
  e50416066c.
- XFAIL multiPointRawEventTranslationOnTouchPad()
  which started to fail at some point in Qt 5.
- Mark as insignificant on OS X due to crash.

Task-number: QTBUG-46266
Change-Id: I6676d021afb015411a24d97d9b8f7c327d4d3c3f
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-29 16:36:48 +00:00
Friedemann Kleint
4964c89540 tst_QDockWidget::restoreDockWidget: Add QSKIP for XCB.
The positioning test has been observed to fail on X11.

Change-Id: I58727126a8742de93ec203e9992a9ae1b454f731
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-29 15:20:00 +00:00
Simon Hausmann
aff3f7f767 Fix QIODevice::errorString() and other places where we expose errno
Commit e486d69133 changed the behavior of
QString::fromLocal8Bit(const QByteArray &) to preserve embedded null
characters. The embedded null character from qt_error_string()'s buffer is not
something we want to preserve, it is merely a safe guard. Therefore let's strip
it away.

Change-Id: Iceac91551f51a1036a942ff30d246baea7a6fd7c
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-05-29 14:47:58 +00:00
Liang Qi
0c5fbd397c Merge "Merge remote-tracking branch 'origin/5.4.2' into 5.4" into refs/staging/5.4 2015-05-29 14:17:21 +00:00
Marc Mutz
c0ddd5fa12 QTextLayout: replace a use of an inefficient QList with QVector
The QTextLayout::FormatRange is larger than void* and thus should not be held in
QList. Use a QVector instead.

Other parts of Qt already hold FormatRanges in QVectors, so this also makes
handling FormatRanges more consistent.

To avoid ugly names for the getter which doesn't overload on return type alone),
rename the set of function to format (from additionalFormats).

[ChangeLog][QtGui][QTextLayout] Added QVector-based alternatives setFormat(),
format(), and clearFormat() to setAdditionalFormats(), additionalFormats(),
and clearAdditionalFormats(), resp.

Change-Id: Ie04a561b43c91c3b2befb3cac2981821f84d5f77
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-29 14:00:10 +00:00
Sérgio Martins
db54498fd1 Mark two member functions const
Change-Id: I42266689ccac2d0234eb0b047d2dc949e6f59196
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-05-29 08:05:33 +00:00
Liang Qi
2670bdeee4 Merge remote-tracking branch 'origin/5.4.2' into 5.4
Change-Id: Ied2a227a25859163a924c7b5717492a1f974c5ca
2015-05-29 10:00:01 +02:00
Lorn Potter
386aca1ba4 Fix no bearermanagement build
As pointed out in the bug, it also fixes API use when configured
with no bearermanagement.

Task-number: QTBUG-46239
Change-Id: Ief8df85ad6acf61e8d5bb3eed54e7d6ecb84c1a0
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
2015-05-29 06:35:08 +00:00
Laszlo Agocs
f5d1c329ce Emphasize the need for calling setDefaultFormat early on OS X
Task-number: QTBUG-46067
Change-Id: I0fe6e7ba309306a8fc471424b30eed4491bd39e7
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-05-29 05:48:50 +00:00
Friedemann Kleint
0a7fcfd612 Windows: Fix font metrics of Vista style wizards.
QVistaHelper::drawTitleBar() used the font returned by
QApplication::font("QMdiSubWindowTitleBar")
(typically "MS Shell Dlg 2",16) to calculate the
bounding rectangle of the title text. However, if the window
is a toplevel QVistaHelper::drawTitleText() uses the theme font
obtained for WIZ_TMT_CAPTIONFONT (typically "Segoe UI",11.25)
to draw the title (since it is a window title). This causes the
font to be cropped when changing the application font or spurious
black rectangles to occur.

Fix this by exposing QWindowsFontDatabase::LOGFONT_to_QFont() via
QWindowsNativeInterface, and creating a QFont from the LOGFONT
obtained for WIZ_TMT_CAPTIONFONT and using that for the
bounding rectangle in the case of toplevel windows.

Split up the HFONT QVistaHelper::getCaptionFont(HANDLE hTheme)
into static LOGFONT getCaptionLogFont(HANDLE hTheme) and use
that to obtain the HFONT in drawTitleText() or QFont in
static QFont getCaptionQFont(), respectively.

Task-number: QTBUG-46360
Change-Id: I9069b403f7f948b6738eec452cb7584be45b8a29
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-05-29 05:00:14 +00:00
Stephen Kelly
e3983c8728 Revert some changes in light of GCC 4 -fPIE reversal
The -fPIE option is now accepted when using GCC 4, which means it
is available for backward compatibility for clients using
CMake 2.8.11 or older which makes use of the
POSITION_INDEPENDENT_CODE feature.

Conditionally use that feature for old versions of cmake with
GCC 4. Restore the tests for those versions, and clarify the
situation in the ChangeLog.

Change-Id: I5a06b155dda7db559d86841a2b34fd8ed95acbd0
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-05-29 00:08:41 +00:00
Thiago Macieira
95b6c4fed6 Make qglobal.h only complain for GCC >= 5 about -fPIE
Commit 3eca75de67 introduced the #error
nagging about use of -fPIE, but it makes the transition quite difficult
for people using other buildsystems. So let's give people a grace period
and enforce only for GCC >= 5.

Clang is affected, but differently. The problem only happens with -flto
-- that is, it happens when the linker detects that it's creating a
final executable. Maybe -Wl,-pie would fix it.

Change-Id: If4d5ac8db0ed4a84a3eaffff13e275edc29a72b7
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
2015-05-29 00:08:36 +00:00
Laszlo Agocs
a47dbb010f windows: Use EGL extensions as they ought to be used
We take some shortcuts still because we know that with ANGLE the header
with the extension constants is always available. A proper implementation
would not rely on the constants being available and would dynamically
check for the extension and would take care of defining the constants if
not available. However, just getting the extension list to check if the
functions needed to get the display are available is already a chicken-egg
problem so we won't go there.

Using eglGetProcAddress properly solves the issues with static builds too
since this always works.

Task-number: QTBUG-46284
Change-Id: Iff23669ebacaffa0c5f76fd2c928af689307874f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Gunnar Roth
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-05-28 21:09:44 +00:00
Alex Trotsenko
ac4b28ce4d QRingBuffer: merge indexOf() overloads
Change-Id: Icfed4a29bc2ac95b3e0300eb4579751fe7e57e77
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-28 13:45:47 +00:00
Ivan Komissarov
bccdb62340 Improve QHeaderView::sectionsInserted performance
Old implementation had complexity O(oldSectionCount); replace it with
O(hiddenSectionCount) algorithm. This boosts performance in case of the
vertical headers for models with big row count.

Change-Id: I7bb02f5579ce83fbdecf5f8c3aa7dcc0ac60dd40
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-28 11:02:22 +00:00
Simon Hausmann
9d662d9d2f Mention cmake changes in ChangeLog for -fPIE -> -fPIC changes
This is a follow-up change to commit 3eca75de67
to mention changes required to CMakeLists.txt for users of Qt.

Change-Id: I1c9ed162427cdc620f998ccf266d59886901c28d
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2015-05-28 07:34:29 +00:00
Samuli Piippo
22ecebcc72 Add QMAKE_LIBDIR_EGL only if it exists
Must not add -L without a directory path, so check that
QMAKE_LIBDIR_EGL actually has a directory to add.

Change-Id: I81920e3427f348739ced045a83f53265d72b261a
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-05-28 07:18:22 +00:00
Caner Altinbasak
5f2e4d3116 Fix for eglfs context sharing problem in qtwebengine widget
EGLFS backend does not use global sharing context. WebEngineWidgets was
failing to access textures created by WebEngineChromium and textures
were ending up as black rectangles.

This fix initialises window surface context with shared context and
fixes the bug.

Change-Id: I97189c06ee593ba55f353f44c23233175ebd3cba
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-05-28 07:18:07 +00:00
Kai Koehne
584576aeee ANGLE: Fix compilation without d3d11
Change-Id: I0b772698cf521083e5ecf35a395af57100a50131
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-05-28 06:52:01 +00:00
Andrew Knight
347cc69cb2 ANGLE: fix DllMain collision in static builds
The symbol is simply renamed in static builds, allowing wrappers of the
library to still call the function if needed.

Task-number: QTBUG-46209
Change-Id: I5d4ad2df59f206a3794b99364d122f9d0f12f8c6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Tim Blechmann <tim@klingt.org>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-05-28 06:42:04 +00:00
Andy Shaw
e22d75d0b1 Translate AM/PM under the QDateTimeParser context so it is consistent
In order to ensure that the same text will be used in both QDateTimeParser
and QDateTimeEdit, use the QDateTimeParser context for the AM and PM
strings.

Task-number: QTBUG-251
Change-Id: I89b0809825251181440bf19cbe5828024a43acfb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-28 06:35:44 +00:00
Simon Hausmann
6255859ebf Fix cmake auto tests failing with cmake 2.8.11
After commit 3eca75de67 the use of
<Module>_EXECUTABLE_COMPILE_FLAGS becomes mandatory for 2.8.11 or older.
Therefore use it in test_use_modules - that's supposed to work with all
cmake versions it seems - and bump test_interface to require 2.8.12.

Change-Id: I7cfb6c6f1e8a97be916d372b9d9148490926693c
Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com>
Reviewed-by: Stephen Kelly <steveire@gmail.com>
2015-05-28 04:39:44 +00:00
Tor Arne Vestbø
5471413522 Add shared implementation of a NSAutoreleasePool wrapper to qglobal
We have at least 5 different (but equal) implementations of a wrapper
in Qt, and some code uses explicit NSAutoreleasePools. Having a shared
implementation lets us clean up things a bit and makes it easier to
reason about which pools are actually needed.

Change-Id: I2fd8eefc3ae7308595ef9899b7820206268362a5
Reviewed-by: Tim Blechmann <tim@klingt.org>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-27 18:45:29 +00:00
Friedemann Kleint
765fea8dad QtGui/Windows: Fix static build.
qtbase\src\gui\kernel\qgenericpluginfactory.cpp:70: error: C2220: warning treated as error - no 'object' file generated
qtbase\src\gui\kernel\qgenericpluginfactory.cpp:70: warning: C4100: 'specification' : unreferenced formal parameter

Change-Id: I2dbb114fa9feaf862b4554b128caca0dcb5e291e
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-05-27 15:29:23 +00:00
Marko Kangas
dd02c1eb38 Add support to disable close button from the tool window in Cocoa.
Fixed regression from Qt4 that close button could't be disabled
from the tool window. With this patch buttons are hidden before
using button hints like it's on Windows.

Change-Id: I00f03ff9528ccae3b1136312404452b9415953b4
Task-number: QTBUG-45971
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-05-27 11:34:10 +00:00
Laszlo Agocs
43e82a3b09 QOpenGLWindow: initializeGL is to be called before resizeGL
This involves deinlining some private class stuff to keep things
readable and maintainable.

Task-number: QTBUG-46002
Change-Id: Ie2888aa6c16a6f5182b61fbaa43288cfcc96cbc4
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
2015-05-27 11:50:35 +00:00
Laszlo Agocs
3311d92d8e Fix failing input device notifications on embedded
The connection to the deviceListChanged() signal may be queued. To make it
work our custom types have to be registered.

The problem is only visible with input backends like evdevtouch that live
on their own thread.

Task-number: QTBUG-46069
Change-Id: I4c03e8031e4337b5e711a3bd2cf405d15d6ce214
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
2015-05-27 11:50:39 +00:00
Kai Koehne
d2da14a9e0 configure: Remove COMMERCIAL_VERSION define
Not used anymore.

Change-Id: I7db671008758e79598697e06e12f1b959bf479c6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 15:28:54 +00:00
Kai Koehne
e63dde4967 configure: Remove traces of "Snapshot" edition
Change-Id: I7f2511e224d848bb820321be5dd190d8b3b8f1c4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 15:28:51 +00:00
Kai Koehne
270313d068 Fix wording of error message
This broke with commit 83a5694dc2 .

Change-Id: Ib641cef9639f1c70a5f38ce0e5d9d9e3071373e4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 15:28:35 +00:00
Tasuku Suzuki
73d3f1b116 Doc fix typo in QT_MESSAGE_PATTERN
Change-Id: I1850c3eb07b06a4174c0e6819074040c4d62c423
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-05-27 15:28:25 +00:00
Timur Pocheptsov
5449589b7c tst_QApplication - quitOnLastWindowClosed (fix for OS X)
Two (?) tests can fail: what they actually try to test is that our application
quits on the second single shot timer (2 s. timeout) and not on the first one
(timeout 1 s.) - on the first timeout we either ignore event, or we still have another
window and should not quit yet, on the second timeout we actually do quit the app.
The test checks this in a quite fragile way, counting the number of timeouts for the third  100 ms
timer. It looks like on OS X (VM-only) there is some delay (~500-600 ms) before we receive the
first timeout so the count is always 14 or less, making the test to fail.

Change-Id: I9e8728e6c956025d91528f4195982767a5d3d320
Task-number: QTBUG-46164
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
2015-05-27 15:26:27 +00:00
Dyami Caliri
970241a11a Fix forkfd on OS X 10.7 and earlier by avoiding waitid altogether
On OS X 10.7 and earlier, waitid() never sets si_pid, even when using
P_PID. So on OS X, check if waitid() works, and if not, use the same
codepath as if HAVE_WAITID were not defined.

Change-Id: I64331a090f9358bb01f435954d3dfd3ab430a96c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-05-27 14:47:54 +00:00
Friedemann Kleint
9749ddeb4b Remove test other/baselineexample.
baselineexample.pro is missing CONFIG += testcase, so,
make check succeeds without doing anything. The test seems
to connect to some network server to retrieve baseline images,
but that infrastructure apparently no longer exists.

Change-Id: I98f4fe5ef8a508fda90e408df2781a944eb99a60
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-27 14:11:22 +00:00
Joerg Bornemann
42b7a7c609 Fix crash due to QTreeView accessing deleted model indexes.
QTreeViewPrivate::updateScrollBars depends on a correctly set up
viewItems vector. If a delayed layout is pending, we must call
QTreeViewPrivate::executePostedLayout before accessing any stored model
indices.

Task-number: QTBUG-45697
Change-Id: I55fcbaf81f225b26181c2cf739283740b85dd16a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-27 14:04:41 +00:00
Alex Trotsenko
310b7ef010 QIODevice::read(): limit the size of result buffer with a proper value
Now its maximum size is QByteArray::MaxSize not INT_MAX.

Change-Id: Id548b3cb94f910a3212665182280a3a2948dd93e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 13:37:04 +00:00
Stephen Kelly
8829ce67d8 Only add -fPIC flags for compilers known to require it.
Commit 083c9269 (Try to ensure that -fPIC is used in CMake
builds, 2015-05-11) added a raw -fPIC to the INTERFACE_COMPILE_OPTIONS
of Qt5::Core, which affects all consuming compilers.

Use the qmake variable $$QMAKE_CXXFLAGS_APP instead, which at least
currently contains only the -fPIC variable or harmlessly expands to
nothing.  If the content of that qmake variable changes in the
future, a $$QMAKE_CXXFLAGS_APP_PIC variable should be extracted in
qmake and used here.

Don't use the POSITION_INDEPENDENT_CODE feature of CMake.  That adds
the -fPIE flag for executables, which is explicitly what qglobal.h
forbids since commit 3eca75de (Make qglobal.h complain if you
use -fPIE, 2015-05-11).  The current behavior of that CMake feature is
tracked here:

 http://public.kitware.com/Bug/view.php?id=15570

Change-Id: I5c5bcc40fe4b310b55a681a3505f45c50adfa054
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-27 11:26:56 +00:00
Olivier Goffart
02f6b21bbc QMetaType: Fix compilation with non default constructible Q_GADGET
Do not try to automatically register the meta type for Q_GADGET that
are not default constructible.
This fixes a source incompatibility in the function pointer syntax
of QObject::connect when such types are used as an argument of a signal.

Task-number: QTBUG-45721
Change-Id: I3065f6d57bc1f37e16988d2dee99118de250ca56
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-05-27 10:51:10 +00:00
Venugopal Shivashankar
18be63de2a Doc: Added the missing \brief and \image for example docs
The Qt TestLib examples are just tutorials so updated
the qdocconf to use the default thumbnail in the
Qt Creator welcome screen.

Task-number: QTBUG-41996
Change-Id: Ia04a42a92e414c97a426b6095a62621a348e7de0
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-05-27 10:27:54 +00:00
Kai Koehne
63660402d8 Run license checker in qmake
Check for a valid license not only in configure, but also in qmake.
To limit the runtime overhead we cache the day of the last run in
a .stash file. This allows us to run licheck only for the top-level
qmake call, and only once per day.

This requires an updated licheck executable that supports the new
check mode.

[ChangeLog][Tools][qmake] For commercial builds, qmake now checks for
a valid Qt license. This requires setting up a Qt Account (or
.qt-license file) on the development machine.

Change-Id: I2c2a05a4602cc661560568b76ddf520cb8134769
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 10:23:10 +00:00
Kai Koehne
40327b6feb Resolve path to right licheck
In the unix commercial packages, licheck so far has been a shell
script that redirected to the 'right' licheck. To simplify things
we now resolve the right executable path in configure itself.

Change-Id: I1183d000a11bf42729f3e0405a0bc1d4b618933c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 10:23:07 +00:00
Kai Koehne
5d707bff3d Make Qt Edition available to qmake
Allow .pro, .prf ... files to check the edition (OpenSource,
Evaluation, Preview, Enterprise ...) of the Qt installation.

Change-Id: If2a8e3877d066b225b1777916cef1d23c65f8512
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 10:23:04 +00:00
Tobias Koenig
5f21aa22fb Haiku: Fix reported geometry of platform window
Report the proper window geometry and adapt the
geometry parameters of expose events to be relative
to the window coordinate system.

Change-Id: Ifb32b2663fdf41df0c9783e76e0ebc5e5cf978a3
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-05-27 08:41:25 +00:00
Sérgio Martins
6764e1b646 QStandardPaths: Use QDir::listSeparator() instead of ifdefs
Change-Id: I1783ce7bcbaabb4920166440e2ed0b41d6daa7aa
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-05-27 08:07:15 +00:00
Sérgio Martins
35175b8fa5 Introduce QDir::listSeparator()
Qt should help abstract such platform differences.
This ifdef is proliferating in user code (seen a few times
in KDE) and even in Qt code (qstandardpaths.cpp).

[ChangeLog][QtCore][QDir] Added listSeparator().

Change-Id: Icad082a51c8efd5d63f7af9bbaedbe4bc15b8937
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-05-27 08:07:09 +00:00
Marc Mutz
16b95b65a6 Q*GlyphCache: de-inline dtor and export vtable
The destructor is the first virtual method. By not defining it
out-of-line, we provoke multiple copies of vtables, not all of
which can be merged by the linker. If the linker fails, RTTI
such as dynamic_cast and catch-blocks involving the type will
not work.

Additionally, QFontEngineGlyphCache was not exported, and
therefore also not its vtable, making it impossible for
users outside of QtGui to get a unique RTTI for the class.

Change-Id: Ib265945934216bb609629431eb4c71996d4fd39d
Reported-by: Volker Krause <volker.krause@kdab.com>
Task-number: QTBUG-45582
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-05-26 17:51:47 +00:00
Marc Mutz
10d53a3f0e Add qHash(QKeySequence)
Key sequences can be compared for equality,
so qHash should be overloaded, too.

[ChangeLog][QtGui][QKeySequence] Added qHash(QKeySequence).

Change-Id: I3cf896292459897d66198d96dfcdba1a39bdafce
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2015-05-26 17:51:42 +00:00
Giuseppe D'Angelo
d1de6c521e QVector: add const first/last getters
Convenience to avoid annoying detaching (instead of using at()),
especially on temporary vectors (returned by functions or so).

[ChangeLog][QtCore][QVector] Added the convenience constFirst
and constLast functions.

Change-Id: If61b1f0096f6a7a1c9074340e237cc2376ce3d18
Task-number: QTBUG-46026
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-26 15:21:21 +00:00
Oliver Wolff
a42330dc12 winrt: Fixed timer handling in case where additional user events occur
When timers are used in connection with widgets, it is possible that
additional events occur (e.g. deferred deletions). If these happen, the
event dispatcher also has to handle timers after handling these events
as timer events might not be handled at all otherwise. So instead of
returning early, we check whether timer events happened and might
return afterwards.

Task-number: QTBUG-46299
Change-Id: I3ef0fb23b3ae9a1e13e42497bcfb0976cf4e1b91
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
2015-05-26 13:03:47 +00:00