| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/plugins/platforms/windows/qwindowsmousehandler.cpp
src/plugins/platforms/xcb/qxcbimage.cpp
tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp
tests/manual/qtabletevent/regular_widgets/main.cpp
Done-with: Friedemann Kleint<Friedemann.Kleint@qt.io>
Done-with: Mårten Nordheim<marten.nordheim@qt.io>
Change-Id: I5b2499513a92c590ed0756f7d2e93c35a64b7f30
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/plugins/platforms/direct2d/direct2d.pro
src/plugins/platforms/ios/qiosclipboard.mm
src/plugins/platforms/windows/windows.pro
Change-Id: Idffa03b3990bd642784f528821c5446b2e1008ef
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Mouse position is converted from native pixels later, so we must
provide native pixels for "QWindowSystemInterface::handleEnterEvent".
Amends 7091be1b7999d93fe2126042161dcd1d8fd20026
Task-number: QTBUG-63865
Change-Id: I813c171f2fc1d321af702ac30eb5f2e4232e97c4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Guard #include by QT_CONFIG.
Task-number: QTBUG-63874
Change-Id: I33f4a4c4fbdae3d25874ee9cdc3f1c7e1ab783e3
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-63876
Change-Id: Ib9216977dd495e05d032e679c2f23ffe6a6953a6
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Both QNSMenu and QSystemTrayIconQMenu aren't referenced anywhere
else, including within qcocoasystemtrayicon.mm, since the QPA
backend was added.
Change-Id: I632c1b230226b2d08afce7f0f0019e9f7c030ba5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A QVariant can only be converted to a QByteArray if it has user type
QMetaType::QByteArray or QMetaType::QString. The way it stood, we
always tried to convert the mime data to a QByteArray, and
then put the result into a QVariant. This would fail if the mime
data contained e.g a QPixmap.
This patch will inspect what kind of data the QMimeData contains, and
convert it to a QVariant using the expected API.
Backport of 6d3c483
Task-number: QTBUG-57428
Task-number: QTBUG-63660
Change-Id: I09b4a94aef7b52773e1a79c468ead71b36dfbfc5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I5924ab0ddb442624f5aeeef023428be228348707
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
I am not sure if this is going to help, but it is required that the
bridge checks that the interfaces it accesses are valid, since that
protects from accessing them when they are in the destructor.
This should be done, whether it fixes the issue or not.
Task-number: QTBUG-45855
Change-Id: I2b96999ca4043f8b33607c864d1d178695d03192
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Move the check for totalPacks below; it prevents leave notifications
from being handled.
Task-number: QTBUG-53628
Change-Id: I2436c51308803337e6d48ef958e03123283d4a1d
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The QTextCharFormat documentation said that the used style is based on
QStyle::SH_SpellCheckUnderlineStyle style hint, however in fact the
implementation (drawTextItemDecoration in qpainter.cpp) uses
themeHint(QPlatformTheme::SpellCheckUnderlineStyle) instead since Qt 5
(see commit 1f9ae50457a3750f).
Make the documentation match that behavior, and update QPlatformTheme
to use the correct default value.
Also, switch Cocoa theme to use DotLine, as that is what native macOS
applications use.
Change-Id: I2a6bb3da6c7b0686dca87ed2c251b6abc006123c
Task-number: QTBUG-50499
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I637b33ba6d05f40486d8da927ae5cc5148299348
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-63621
Change-Id: I4ee6885d19907bff553149bef9efcffb209eb1f5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |\ \
| | | |
| | | |
| | | | |
refs/staging/5.10
|
| | |\|
| | | |
| | | |
| | | | |
Change-Id: I3cf73c53cf131d0babfb558c2507bed0e0fc5f08
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We need it
1. to be sure, that thread is already attached to jvm
when we attach debugger to the process
2. to have a human-friendly name for main native thread
Change-Id: I1e572a0f09ec8af24a910835aaa6d302f6f2cb43
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is need from macOS 10.13 onwards. See NSWindow related notes on
https://developer.apple.com/library/content/releasenotes/AppKit/RN-AppKit/
Change-Id: I4b4653d7342de985d22b128d73940e7163bdb1e8
Task-number: QTBUG-63444
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the native visual was BGR888, the XCB plugin would assert as soon as
it needed to find the corresponding QImage format. Fix by adding the
required mapping in qt_xcb_imageFormatForVisual().
Task-number: QTBUG-62840
Change-Id: Idd9eb01a60f605ad004d5b0c3025ded63ed64271
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
329a029c361bcbaf70f3aa919693f0bef48a152f made ::raise and ::lower do nothing
for topmost and bottommost windows. This made it impossible to
e.g. raise one topmost window above another topmost window using
QWindow::raise.
Task-number: QTBUG-62021
Change-Id: I5f60816cbc48d69c0411e3bd68852d8bd8e300bb
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The semantics of QWindow::requestUpdate() is that it's used when the
window needs updates outside of the normal window invalidation callbacks
such as expose and resize events, e.g. when doing animations.
As a result, user code might not be prepared to handle window
invalidations in the update-request callback, assuming those
will still be delivered as normal, so that's what we do.
This was exposed by resizing one of the simpler Qt Quick examples,
where the resize's expose event was delivered as an update request,
but didn't trigger an unconditional draw of the window as it should,
as the scenegraph didn't change in response to the resize, which is
typical for an update request.
Change-Id: Ida8f85f1cf61c332aa9b199520e6854c48d3ab40
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Use QOperatingSystemVersion for comparisons and remove
code for versions < Windows 7.
Change-Id: I5a5e3d08a29accd42f170da3ee9c9021ca499f82
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Like eglfs, linuxfb (when QT_QPA_FB_DRM=1) can be configured to
use a buffer and fb of a format other than the default XRGB8888.
Most notably, adding "mode": "rgb565" to the first output in the
config file pointed to by QT_QPA_KMS_CONFIG will switch over
to using 16 bpp dumb buffers and a QImage::Format_RGB16 wrapping
QImage. Note that linuxfb/drm has no multiple output support atm,
so only the first output is taken into account.
The BGR variants (e.g. xbgr8888) are available but cause no
difference when it comes to Qt's painting (still maps to RGB32 etc.).
This may need to be revisited later.
Has no effect on the regular (fbdev) path in linuxfb.
Task-number: QTBUG-63272
Change-Id: Ie7d0b05e3449b336104332d9568dab60b4bedaa8
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
|
|\| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
examples/network/fortuneclient/client.cpp
examples/network/fortuneserver/server.cpp
src/platformsupport/platformcompositor/qopenglcompositorbackingstore_p.h
src/plugins/platforms/cocoa/qcocoabackingstore.h
src/plugins/platforms/cocoa/qcocoaintegration.h
src/plugins/platforms/cocoa/qcocoascreen.h
src/plugins/platforms/ios/qiosbackingstore.h
src/plugins/sqldrivers/oci/qsql_oci.cpp
src/widgets/kernel/qwidgetwindow.cpp
Change-Id: Ia6dd2c52d4a691b671cf9a2ffca70deccece8f10
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Otherwise we'll end up creating a NSPanel for the QMacNativeWidget which is
never closed, even if the backing NSView is moved to a new superview.
Ideally this would be based on [NSView viewDidMoveToSuperview] and
[NSView viewDidMoveToWindow], with retain/releases of the corresponding
NSWindow, but that needs more research, especially as AppKit on macOS
10.13 will always keep a strong reference to the NSWindow.
Task-number: QTBUG-63443
Change-Id: I9eec5ea871373d00dedf154600bf7005898cf37a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The modern approach to offscreen rendering on macOS is via FBOs, which
means there's no reason to allocate an NSView and corresponding NSWindow
just for that. In the offscreen case the NSOpenGLContext has a nil-view.
Change-Id: I2d1d407069af4d5283e6f56fba83db8eaf694ac6
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: Ic9dc6a24ef793a29c2652ad37bc11120e2e6ceef
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's confusing to keep it along with an unrelated class. Let's keep it
in its own file like for most other platform plugins.
Change-Id: I449ee061ff9fd5dc7ef06cadd633414d6b16358f
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's been for years that QMenu's rounded corners in qmacstyle_mac were
done via QWidget::setMask(QRegion). Unfortunately, QRegion mask does not
work well with retina displays and also does not support translucency.
That's why in this change we explicitly make QMenu's background
transparent and then draw a rectangle with rounded corners in
QMacStyle::drawPrimitive(PE_PanelMenu). This not only gives much better
result than the mask-based approach, but also de-HIThemes QMenu.
As a consequence, QComboBoxPrivateContainer doesn't get any mask from
QMacStyle anymore. Therefore, when the mask is empty, we need to paint
PE_PanelMenu before invoking QFrame's paint event handler.
Made-with: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Change-Id: Ia9236176113f23b86e45507fa6ddf77236084ce3
Reviewed-by: Oleg Yadrov <oleg.yadrov@qt.io>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
|
| |\ \
| | | |
| | | |
| | | | |
refs/staging/5.10
|
| | |\|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
src/corelib/global/qconfig-bootstrapped.h
src/corelib/global/qglobal.h
src/corelib/tools/qcryptographichash.cpp
src/corelib/tools/qcryptographichash.h
src/corelib/tools/qmessageauthenticationcode.cpp
src/plugins/platforms/windows/qwindowswindow.h
tests/auto/gui/kernel/qwindow/BLACKLIST
tests/auto/widgets/itemviews/qitemdelegate/BLACKLIST
Change-Id: Ib68112de985a3d714c2071f47c10e907e4f0229a
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Change-Id: I743aef0e15ef42347c5222d0e50577b006483cc4
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When Cmd+W is used to close a window, check if m_platformWindow is still valid
before accessing window property.
Task-number: QTBUG-63389
Change-Id: I9abda19b8482e7a1fd07b07d8981b6a768e96c2e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
QMdiSubWindows may have WindowStaysOnTopHint set.
Task-number: QTBUG-63121
Change-Id: I21f80311fdf57e775df895122299bb7beb6ec4e6
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When dragging a window by its border, detect the screen by mouse position
to prevent it from oscillating between screens when it resizes.
Task-number: QTBUG-62971
Change-Id: I0a4a584ef8ff3bb7288d1abec4de51fb4091dccd
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-62971
Change-Id: Ida0a8e758723f0f617011a89dc89c266d2506aad
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It's included unconditionally from qxcbconnection.cpp and qxcbscreen.h.
Task-number: QTBUG-53537
Change-Id: I6e1fe42ae4b742a7b811fffd14e5d374155660f3
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The resources allocated by QPlatformBackingStore are owned by the class,
and should be allocated in a context the class also owns. This removes
the asymmetry of having to pass in a context to composeAndFlush, while
having to make the same context current before destroying the platform
backingstore.
The context owned by QPlatformBackingStore is shared with the associated
window though a new QWindowPrivate::shareContext() API.
The result is that on e.g. iOS, the backingstore does not need to tie
the resource allocation of QPlatformBackingStore to the global share
context, but can instead tie them to the per-window context, and hence
clean them up after each window is closed.
Task-number: QTBUG-56653
Change-Id: Ic1bcae50dafeeafaa8d16a7febd83b840ec6367a
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The call to CGImageCreateCopyWithColorSpace took a naked toCGImage(),
which left the resulting CGImageRef without a release, causing the
extra ref by toCGImage() to never be derefed, and a subsequent detach
of the image data on the next paint event.
Wrapping the call in a QCFType<CGImageRef> solves the problem. The code
has also been moved directly into QCocoaBackingStore::flush(), as there
is no need to keep the CGImageRef a member.
A local autorelease pool has been added to QCocoaBackingStore::flush(),
so that the NSImage used for blitting the backingstore is released upon
exit of the function, thereby releasing the corresponding CGImageRef.
Note that for layered mode, the QImage will still detach, as the view's
layer.contents property keeps a reference to the image data until being
replaced in a subsequent flush.
Task-number: QTBUG-63559
Change-Id: I06b9298f65a84deae7cc2eff617ba75c92ec3b87
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Window icons on macOS are tied to document windows, and should not show
up unless a represented filename has also been set according to the HIG.
We follow this, and no longer create a document button based on the window
title if one did no exists. We also fall back to using the filename of
the file if a title has not been set, including being able to restore
this default title after setting a custom title.
The icon is no longer reset to nil after setting a QIcon(), which would
remove the icon completely, but instead we restore the default behavior
of showing the default filetype icon of the file.
Finally, the two callbacks in QNSWindowDelegate dealing with the document
icon/title popups and drags have been taught to look for spaces in the
represented filename. This allows clients who really want the old
behavior of setting an icon without caring about the filename to set
the filename to a single space character, which will prevent the
dropdowna and drag from occurring.
The reason for not tying this behavior to the existence of the file in
the filesystem is that being able to represent a file that is yet to
be saved is a valid usecase.
Task-number: QTBUG-63338
Change-Id: I7d4377c6358226fb6058f8c2b3c28588eec77ce5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Convert QSysInfo/QOperatingSystemVersion to __builtin_available where
required or possible, or to QOperatingSystemVersion where
__builtin_available cannot be used and is not needed (such as negated
conditions, which are not supported by that construct).
Change-Id: I83c0e7e777605b99ff4d24598bfcccf22126fdda
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Otherwise QWindow::setFilePath() before create() would have no effect.
Change-Id: Ia2171054aa13e21316d525193d330efaf4653dbf
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Child QWindows (or in the case of QWindows embedded in native applications:
top level QWindows where the corresponding NSView is a child of another
view, so not being the contentView of its window), still need some of the
NSWindow notifications to e.g. update their exposed state when the window
becomes visible.
We make sure to send the notification to all QCococaWindow children of
the relevant NSWindow, and let each callback decide if it should only
apply to content views.
This fixes an issue where a QWindow would never be exposed if the window
was a child NSView and added to a NSWindow that was yet to be shown.
Change-Id: I7f7df8bc5f4ca3ac553a2c146f8c3229b197c059
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QGuiApplicationPrivate::processExposeEvent updates the QWindow's exposed
state, so we need to call QWindowSystemInterface::handleExposeEvent()
when going from non-exposed to exposed.
Change-Id: I461b2fb27cd8fd4bdb250d05d47f9af6cb3eb15c
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Overrides keyboardRect() and isInputPanelVisible() in QWindowsInputContext
in order to provide support for virtual keyboard geometry and visibility
information in the Windows platform.
Change-Id: I15382e604dc076929d253c0c1fbe64ea7da853ce
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
... and deprecate QWSI APIs that accepts mouse event without mouse button/
type data.
In the early days of Qt5 it was decided to centralize mouse button/type
handling in QGuiApplication (because of limitation of some now unknown
platform). This has proven to be problematic as mouse handling details
differ across platforms (e.g on X11 we do not receive mouse release event
when closing popup windows or ordinary windows that are closed from the
mouse press event). Instead of hacking around platform specific behaviors
in Qt Gui, we should move this task back to platform plugins (similar to
how this was done in Qt4 with native APIs sending mouse details directly
to QApplication). There are even cases where it simply is not possible
to deduce (from QGuiApplication) which button caused the event (e.g. when
more than one button is involved and some event goes missing). Besisdes,
throwing away information which is already available at QPA level (for free)
and trying to deduce it again at Qt Gui level seems impractical, fagile
(as probably noticed by people fixing all the unexpected issues) and adds
unnecessary complexity.
Note:
Removing the deprecated QWSI APIs from offscreen plugin depends on fixing
autotests that rely on QOffscreenCursor::setPos() logic.
For the convenience of testing use QT_QPA_DISABLE_ENHANCED_MOUSE to restore
to the old code path where QGuiApplication does the mouse state deducing.
Other platforms have similar issues. I do not have all supported platform
available on my desk, so other platform maintainers will need to take care
of porting those platforms to the new APIs. And mainly, I don't want to deal
with all the hacks that other platforms have added to workaround this broken
mouse logic.
In Qt6 we need to remove deprecated code path from QGuiApplication.
This patch:
- Extends QWindowSystemInterfacePrivate::MouseEvent ctor with QEvent::Type
and Qt::MouseButton. We use this extra data when processing mouse events in
QGuiApplication. This actually is similar to KeyEvent, where we do pass the
type (press or release) to QtGui.
- Refactors QGuiApplicationPrivate::processMouseEvent and qtestlib to use
the new APIs.
Task-number: QTBUG-59277
Task-number: QTBUG-62329
Task-number: QTBUG-63467
Change-Id: If94fd46a7cccfea8264dcb1368804c73334558b8
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Store "event->data.data32[0]" in a variable with a meaningful name.
This improves code readility.
- Use categorized logging.
- Wrap lines where it makes sense (Qt Coding Style discorages more than
100 chars per line).
Change-Id: I163abab8380b459fd349227f22dc417a444aefa7
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Make a common function to replace the two existing ones that convert
from XCB visuals to QImage format.
Change-Id: I2ae08ef4df96df950910a45e71c9d9cd98375b2e
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
They are available on Windows 7.
Change-Id: Ia937c459fe0df0d39d407ca0e65641f8aa583f4a
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If the server and client has different endian we need to swizzle the
image pixels, we can do that by swizzling the masks and try to match
the new configuration. This is a rather rare setup so we don't try
to match every combination.
This patch fixes the colors when running Qt in a bigendian QEMU chroot.
Change-Id: Ie83f9607563cba137b2e1a63e996a05d43ff603e
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
|
|\| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/gui/kernel/qguiapplication.cpp
src/platformsupport/input/libinput/qlibinputpointer.cpp
src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.h
src/plugins/platforms/cocoa/qcocoawindow.h
src/testlib/qtestsystem.h
Change-Id: I5975ffb3261c2dd82fe02ec4e57df7c0950226c5
|