| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
it ends up in QtGui via two different routes (freetype and the png
handler), and we really don't want to have two copies of it in there.
Change-Id: I40760bcb6c615b90ed9f402450bb657c77884613
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This routine is often called to down-convert pixmaps and backing
stores to RGB32.
This patch replaces a comparison in each pixel, with a single AND in
each pixel and a comparison at each line. The new form is also auto-
vectorized by at least GCC.
Change-Id: I3e07585a3ec12f888321d35da57ac99b561dbec4
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
|
|
|
|
|
|
|
|
|
| |
Add convenience QWindowsWindow::formatWindowTitle() and use
that in QWindowsIntegration::createPlatformWindow().
Task-number: QTBUG-53394
Change-Id: I76ebade97c5af71ffa3d11075511b94a54a3dbf8
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
|
|
|
|
|
|
|
| |
Both checks are not relevant in Qt's context and were skipped before but
they sneaked back in with the latest ANGLE update.
Change-Id: Ic44de5468a3254afd76ef4804d97d245676daeb1
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Affects systems like the NVIDIA DRIVE CX. This did not show up so far
because there was no error when Q_PROCESSOR_ARM was not set.
Task-number: QTBUG-53493
Change-Id: I107155b6dc1a881eca6f57374ad8db4458875243
Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
configure
src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
src/network/access/qnetworkaccessmanager.cpp
src/plugins/platforms/cocoa/qcocoacolordialoghelper.mm
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.cpp
src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.h
src/widgets/widgets/qlineedit_p.cpp
src/widgets/widgets/qlineedit_p.h
src/winmain/winmain.pro
tests/auto/corelib/io/qstorageinfo/tst_qstorageinfo.cpp
tests/auto/dbus/qdbusconnection/tst_qdbusconnection.cpp
tests/auto/dbus/qdbusconnection/tst_qdbusconnection.h
tests/auto/testlib/selftests/expected_cmptest.teamcity
tests/auto/testlib/selftests/expected_cmptest.txt
tests/auto/widgets/itemviews/qtableview/tst_qtableview.cpp
tools/configure/configureapp.cpp
Change-Id: Ib9997b0d0f91946e4081d36c0c6b696c5c983b2a
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/network/socket/qnativesocketengine_winrt.cpp
Change-Id: I8edb72f8ba958d80c3d7993b3feaaae782ca8d9c
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As the functionality is not available for udp sockets trying to
call it will cause a crash on socket close.
Task-number: QTBUG-53424
Change-Id: Id80b36a248d12bf360135b2374c0a0efdab3a1f0
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In commit c6c9304, the earlier size limit of 128 was raised to the
format's defined maximum of 256. But the required special storage of
this size in the image structures was not implemented. Hence,
attempting to store such big icons would result in invalid image
files.
Fix the size storing details, and add some autotests of ico format
writing since that was practically uncovered.
Task-number: QTBUG-53259
Change-Id: I00e17a04e90c32dcf1124ba5adaf53728fb74dc7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Min and max expressions need matching types, which means we have to
take care both values are qreal.
Task-number: QTCREATORBUG-15851
Change-Id: I5f123e979fa896006ff6eafaac1f65b667db975d
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
...from the docs of the signals it emits.
Task-number: QTBUG-53228
Change-Id: Ifdd91404cae9dd6480ae29b31f2a48fa024df442
Reviewed-by: Nico Vertriest <nico.vertriest@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Examples in binary packages now directly match the install path.
Change-Id: Ic1487bc766cfd3b0a0a340cc4ae4ba49d953eaa6
Task-number: QTBUG-52953
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Shared handles are not supported on Windows 7 and below. If the
according flag is set CreateTexture2D will fail with E_OUTOFMEMORY. The
check already happens with newer ANGLE versions, which we use in 5.7
but has to happen here as well. Otherwise Qt applications running on
Windows 7 and below will crash at startup.
Change-Id: I8f539f16dce298611fb1ec7b2f6804d4a04d04e0
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The combination of vendor and device ID being 0000 indicates, that the
standard VGA driver is used, and happens when using Qt in a:
- Windows 7 machine without proper GPU drivers
- Windows 7 machine with disabled GPU
- HyperV vm
The default driver does neither support D3D9 nor D3D11 properly so that
we have to fall back to warp mode for ANGLE.
Change-Id: Ia766e32d680c910a50ec3d6b5002892cdb90fdbb
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I22003b840f1a7ac685a1ec3353d7e7dbd84c3953
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since QCocoaMenu can live longer than its m_attachedItem pointer,
this pointer is becoming invalid after QCocoaMenuItem deleted
(and its 'm_native' was released).
Task-number: QTBUG-53251
Change-Id: I6d97b75b2c09e2443cd21415c5db94206d5d89ce
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
from the perspective of freetype, this looks like a system zlib.
Change-Id: Idb961850b2a92d456cfa2b027bdc85ce5e4be771
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
our zlib header includes qglobal.h, so we need the qtcore include dirs,
and qtcore is also where the actual code is compiled into.
Change-Id: I09f530a1b4e6160438215a6d7223c0771ce94f05
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Apple Mail will pick up and attempt to use the vCard
flavor, which then fails since the data Qt placed
on the clipboard is not actually a valid vCard.
Place data in the vCard format on the clipboard
only if the mime type is “text/vcard”.
[ChangeLog][OS X] Pasting text from Qt applications
to Apple Mail now works.
[ChangeLog][OS X] “text/vcard” is now required as
the mime type when placing vCards on the clipboard.
Task-number: QTBUG-48953
Change-Id: Id029b20317f2c5ad8ae225912484de3c97498d29
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When a URL is dropped on a Firefox window, the "text/x-moz-url" data
takes precedence over the "text/uri-list". The "text/x-moz-url" is
interpreted as UTF16, however, the data from Qt 5 applications is not
in the correct format. The code to create correct UTF16 data exists,
but it is not called for two reasons: The atomName will never be
"text/x-moz-url" because it is changed to "text/uri-list" by
mimeAtomToString() and the InternalMimeData::hasFormatHelper() case is
already handled above and the else part will never be considered.
This patch fixes the check and brings it into the right order.
Task-number: QTBUG-49947
Change-Id: I5ebd31914cc6c1417c513c1ff09e0e858a16915d
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When dropping URLs from Firefox or Chrome, the contents are encoded as
UTF16, but not correctly decoded. Moreover, the special handling of
"text/x-moz-url" drops does not work because this format is converted to
"text/uri-list" before. This fixes the handling for URL list and also
for UTF16 "text/html".
Task-number: QTBUG-47981
Change-Id: I1153f21ede07b2bfe4d104e0fe8bc8487ec5c165
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
QMenuBar now receives a parent changed event for each of its parent,
grand-parent, ... This fixes a crash caused by an invalid QWidget
pointer and makes sure the keyboard shortcuts events are relayed to the
menu bar in all parenting/re-parenting cases by installing an event
filter on each parent
Task-number: QTBUG-53205
Change-Id: I419e6cbc52e28a67fb08a848a7161b4cb8ae4ae5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
make the 'cleaned' more robust by making sure we do not read past the
buffer in some cases. We must also use resize and not reserve on the
outpt buffer because reseve is meant as a hint and we are not supposed
to write past the size of the QByteArray even if it is reserved.
[ChangeLog][moc] Fixed crash on file ending with \\\r
Task-number: QTBUG-53441
Change-Id: I901e6c0ffc7f8877de3d07fd08cf26495461d294
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
EGL headers including X headers has traditionally been problematic due
to getting macros for Status, None, etc.
In most cases this is not an issue anymore because on embedded one will
almost always use a driver targeting the framebuffer or DRM/KMS and
therefore the EGL headers do not pull in X dependencies.
Furthermore, Mesa supports MESA_EGL_NO_X11_HEADERS which we set, avoiding
the problem altogether with Mesa regardless of targeting X11 or KMS.
However, other drivers do not have this option. On i.MX6 for instance,
targeting X11 is problematic due to not having EGL_API_FB defined, which
in turn means the EGL headers pulls in X headers in order to be able to
define the native display and window types as Display and Window.
Try to play nice with this use case by reshuffling the includes and
undefining the problematic names.
This restores patch set 2 from the previously merged, and then reverted
commit. This here is safe since the egl.h include and the following undefs
are only done internally for eglfs and can have therefore no effect on
other code.
Task-number: QTBUG-52928
Change-Id: I383e783d5064dc8fb41f3ef56d2a4f4fcd31a6cf
Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Remove _POSIX_C_SOURCE usage as the reason why it was added is not
clear anymore and it causes compile errors on BSD systems if not
circumvented by adding further defines to re-enable function calls
hidden by the _POSIX_C_SOURCE define. (__BSD_VISIBLE on FreeBSD/OpenBSD
and _NETBSD_SOURCE on NetBSD)
Change-Id: Ic6b49ddcd6c481b0f2acd598cea5470604e00507
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
don't pretend that these two flags can be set separately - the
configures set them in tandem.
Change-Id: Ib0beae0152de09026d4627fd3ae0feabd9ce1b81
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Using multiple concurrent requests can cause a delay between a socket
closing and getting deleted. At that point the state was closingDown,
but not wasDeleted yet. Especially on slower arm devices, callbacks are
done from another thread causing synchronization issues.
Hence closingDown needs to be synced and handleReadyRead needs to have
more criterias to return early to avoid invalid access crashes.
Easiest to reproduce is heavy scrolling on the mapviewer example when it
downloads a huge amount of tiles and cancels those requests when not in
view anymore.
Change-Id: I442b6243bbefb3af938b6b1b3739a6a85b4887c0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
QDialogButtonBox does not have translations, it queries
QPlatformTheme for button texts. So in order to ensure
that the buttons added to QColorDialog natively are
translated it should be set to use QPlatformTheme instead.
Change-Id: I67d0e509398aa81f9de9b8785544c1e23bb596d9
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
QVariant::canConvert<Enum> was returning true for everything can can be converted
to integer, but not for integer itself. That's because in QVariant::canConvert
we set the targetType to Int of it's an enum, but the Int->Int case was not
on the conversion matrix. So this commits adds it to the conversion matrix
and now QVariant::canConvert<Enum> returns consistently true for int itself.
But even tough canConvert returned true, it did not actualy do any conversion
to the enum type itself. Fix that by handling the case properlt in 'convert'
[ChangeLog][QtCore][QVariant] Fixed QVariant::canConvert and conversion from
integer types to enumeration types.
Task-number: QTBUG-53384
Change-Id: I6ac066f3900e31bfcea7af77836ddfc7730bd60b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Introduce a function going up the widget hierarchy determining a QTransform
for mapping the coordinates applying the transformations of any QGraphicsView
instances found. In mapFromGlobal(), use the inverse of it. This fixes the
case of widget hierarchies embedded into QGraphicsView with transformations.
Increase fuzz in the tests due to float rounding errors.
Task-number: QTBUG-41135
Task-number: QTBUG-50030
Task-number: QTBUG-50136
Task-number: QTBUG-52507
Change-Id: I507e0bccd546250fe9c2d1b74ef38657d61490b4
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Detected by GCC 6.
Change-Id: I24a735698d3c4a719fc9ffff1425f193511406f9
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The <QHash> only contains the container these days,
while <QHashFunctions> contains the qHash() function
overloads and related functions. This is where these
two functions belong, too.
This change is BC and SC, since qhash.h includes
qhashfunctions.h.
Change-Id: I2e7febb0ffca209af67fb9f2cd363596867a44e1
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
[ChangeLog][QtNetwork][QAuthenticator] Fixed crash when
comparing a initialized QAuthenticator with an uninitialized
QAuthenticator.
Task-number: QTBUG-53338
Change-Id: Ib8b732b9c65c02ee542885e5d6fe9bd1589a6b1a
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Remove the hardcoded size 16 from QLineEditIconButton. Replace
QLineEditPrivate::iconSize() by QLineEditPrivate::sideWidgetParameters()
returning a struct SideWidgetParameters containing icon size, widget size and
margins. The 32x32 icon will then be used on a High DPI screen without scaling.
Task-number: QTBUG-49374
Change-Id: I23c4a0cd078a58581c940aacfa65a3ad493c12dc
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
15b42af11123f9d1eb4bbd79870185585103ea8d changed the qt_cpu_features
variable to be an array and never fixed this #if branch of the code.
Change-Id: Id69569111e7d4e619e22ffff144cf930f86f478e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Use a simple Q_GLOBAL_STATIC
Change-Id: Ifea6e497f11a461db432ffff1449b14b63628c12
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is just a compile test for the the bootstrapped version of QtDBus
(no QObject). Nothing depends on it in regular, non-cross-compilation
builds.
Change-Id: Id69569111e7d4e619e22ffff144da8e646d037d9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This allows applications to use two or more QSystemTrayIcons.
Task-number: QTBUG-53021
Change-Id: I520db99c1c3718906669d1b544d44a8d2f71e1ce
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Set the error mode flag SEM_NOOPENFILEERRORBOX when calling Win32 API
GetLogicalDrives() to prevent it from prompting to insert media
as does QStorageInfoPrivate::mountedVolumes().
Task-number: QTBUG-18729
Task-number: QTBUG-32457
Change-Id: I5c76afbb5bf2ec5ec84194650c316fe531578d5b
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The standard https://freedesktop.org/wiki/Specifications/XDND/
states: "In order for the proxy window to behave correctly, the
appropriate field of the client messages, window or data.l[0],
must contain the ID of the window in which the mouse is located,
not the proxy window that is receiving the messages."
So compare it with the current target window instead of the
current proxy window.
Change-Id: Ie31fd3aeadebcf5a9be7b9a9194f35a4ec7bdebb
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ic61374d5b6ce395dfe8d0b30813ea437b5e16e9d
Task-number: QTBUG-52497
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is no longer true on at least Cocoa, Windows and xcb.
Change-Id: I214caae46a8707ab7c89138646219140079e919a
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-52743
Change-Id: I0bea1451dfe7b049c129b11716d593115e3d8374
Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It could happen that the stroker would attempt to join empty subpaths,
resulting in an invalid path structure that would cause assert later.
Task-number: QTBUG-43474
Change-Id: Ia369a31e60c40cdae3900d96f15f3e83c9e78b97
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Create parent nodes with the corresponding paths, not with
the absolute path of the child node. Otherwise we will get
incorrect QFileInfo at least in the following case:
QFileSystemModel model;
model.setRootPath("/usr/bin");
QModelIndex idx = model.setRootPath("/usr");
qDebug() << model.fileInfo(idx).absoluteFilePath();
Without the fix it prints "/usr/bin".
It's a regression triggered by 61cefb2f7a7cb16dfa2732e26d2319017039ef62
(De-inline QFileSystemModel::fileInfo() and implement it efficiently).
Change-Id: I3b4e5f5b256711e27ad50824eaa8492dbc096808
Task-number: QTBUG-51586
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QCocoaWindow::setMouseGrabEnabled/setKeyboardGrabEnabled calls
resignKeyWindow. According to Apple's docs, we should _never_ call
this function (it's done by Cocoa automatically).
Calling this function leaves a window in weird state where it can
not become key again until you explicitly make another window key first.
Task-number: QTBUG-53050
Change-Id: I7a887659df8df11880328ffa2adc07c4a3af63e6
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We guard QWidgetWindow's widget with a QPointer to avoid
sending it events during destruction (which may result in
undefined behavior, since this originates from ~QObject and
we expect the object to behave as a QWidget). Therefore, we
need to harden all access to that widget since it can now
be null, specially during destruction.
As an example, QGestureManager may crash when we delete a
top-level widget. The crash stack trace is:
1 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>>::data() const
2 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>>::pointer qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>>>(QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>> const&)
3 QWidget::d_func()
4 QGestureManager::filterEvent(QWidget *, QEvent *) <-- the widget ptr is null
5 QGestureManager::filterEvent(QObject *, QEvent *)
6 QApplication::notify(QObject *, QEvent *)
7 QCoreApplication::notifyInternal2(QObject *, QEvent *)
8 QCoreApplication::sendEvent(QObject *, QEvent *)
9 QWindow::destroy()
10 QWidgetPrivate::deleteTLSysExtra()
11 QWidgetPrivate::deleteExtra()
12 QWidgetPrivate::~QWidgetPrivate()
13 QWidgetPrivate::~QWidgetPrivate()
14 QWidgetPrivate::~QWidgetPrivate()
15 QScopedPointerDeleter<QObjectData>::cleanup(QObjectData *)
16 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>>::~QScopedPointer()
17 QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData>>::~QScopedPointer()
18 QObject::~QObject()
19 QWidget::~QWidget()
Task-number: QTBUG-53103
Change-Id: I1bb32648270c4f7791f668b8f0b639ddb4235703
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
~QWidgetPrivate() may end up calling QWidgetPrivate::
deleteTLSysExtra() which, in turn, calls QWindow::destroy().
This sends an event to the window itself. This reaches
QWidgetWindow::event() which will forward the event to
the widget. However, the widget has just been deleted
since the sequence was initiated by ~QObject().
Task-number: QTBUG-53103
Change-Id: Ib511714a76bbc1e734d6f2800a983eb1459bbf0b
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Depending on the windowstate passed to QWinRTWindow constructor we might
act on the uiElement which has not been created yet. This happened
especially in release mode, probably due to timing.
Hence delay uiElement changes until we created it in the constructor and
can ensure it is valid.
Change-Id: I00daa9fcf8542a0535bbcb663a76d85c36e510e2
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In some cases the mouse release event won't arrive, i.e. when window is
minimized on button press. Check for mouse buttons state on mouse move
event and properly unset the mousePressWindow to avoid blocking
enter/leave events in this case.
Amends: c511466d747d99ee76465cfe90ce594fa1f27469
Change-Id: I543a75104f528df1bf644bace13f78a6af017455
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
|