Go to file
Tor Arne Vestbø 75995d8e58 macOS: Synthesize cursor updates on QCocoaWindow::setWindowCursor
The original issue for doing this was that invalidateCursorRectsForView
would not result in an updateCursor callback in certain scenarios on
macOS 11 and below.

In macOS 13, improvements to how tracking areas work now result in
also missing cursorUpdate calls when the mouse is pressed, which
makes sense for tracking areas in general (you don't want a drag
over a text field to reset the cursor to the I-bream), but not for
our specific case of setting a cursor synchronously.

To ensure the cursor is updated immediately, even if the mouse is
pressed, we synthesize a updateCursor event, just like we did for
the invalidateCursorRectsForView workaround.

It's up to clients of QWindow to manage their setCursor calls to
not happen during a drag operation, which we already manage in
Qt Widgets.

Pick-to: 6.5 6.2
Change-Id: I67d6e0f8e270b40da9879828455f4de943da7839
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2023-04-12 14:20:28 +02:00
.github/workflows Repair github action workflow 2021-11-10 18:57:33 +01:00
bin Add simple project generation based on existing source files 2023-02-08 12:59:19 +01:00
cmake CMake: Fix linkage with lld 16.0 2023-04-11 15:19:22 +02:00
coin Add downstream test config 2023-02-16 07:02:54 +00:00
config.tests Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
dist Add Qt 6.0.0 changes file 2020-11-16 10:02:08 +02:00
doc Doc: Fix \examplecategory macro 2023-04-12 11:23:37 +00:00
examples Torrent example: update usage of integer types 2023-04-11 18:25:42 +01:00
lib Purge all fonts 2015-08-18 19:59:14 +00:00
libexec Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
LICENSES Update license specification for PCRE2 2023-03-27 10:55:28 +00:00
mkspecs Change android target SDK version to 31 2023-03-21 14:49:08 +01:00
qmake qmake: Fix incorrect Info.plist replacement of EXECUTABLE_NAME 2023-04-06 20:39:53 +02:00
src macOS: Synthesize cursor updates on QCocoaWindow::setWindowCursor 2023-04-12 14:20:28 +02:00
tests rhi: Remove unused init flag 2023-04-12 11:23:37 +00:00
util Pack languageCodeList tighter 2023-03-15 19:48:30 +01:00
.cmake.conf Centralize copyright information for Qt 2023-03-20 13:03:44 +01:00
.gitattributes Give batch files CRLF line endings 2020-11-04 15:02:29 +00:00
.gitignore git: ignore ._* files 2023-03-28 10:44:57 +02:00
.lgtm.yml Skip LGTM analysis for the bootstrap library and tools 2020-07-16 01:04:34 +02:00
.tag Update the git-archive export options 2012-09-07 15:39:31 +02:00
CMakeLists.txt Change the license of all CMakeLists.txt and *.cmake files to BSD 2022-08-23 23:58:42 +02:00
conanfile.py Conan: Do not force 'qt_host_path' usage in cross-build context 2022-06-22 18:18:42 +03:00
config_help.txt configure: remove -c++ entry from the -help output 2023-03-12 21:28:24 -08:00
configure Retrieve an old -redo behavior 2023-02-07 18:51:58 +00:00
configure.bat Retrieve an old -redo behavior 2023-02-07 18:51:58 +00:00
configure.cmake CMake: remove tests for C++17 and C11 and earlier 2023-03-21 06:49:08 -07:00
dependencies.yaml Re-add dependencies.yaml now that qt5.git wip/qt6 builds fine 2019-09-18 13:19:31 +02:00
qt_cmdline.cmake QCryptographicHash: implement OpenSSL 3.0 support 2022-09-26 17:26:37 +02:00
sync.profile Move qurltlds_p.h out of src/network, and make it a .cpp file 2022-10-01 06:24:51 +00:00