blender/intern/ghost
Germano Cavalcante 9bd586a01e Fix T95608: Mac issues with drag drop on multi-monitor
Mousemove events are sent to windows.

In Windows OS, almost all mousemove events are sent to the window whose
mouse cursor is over.

On MacOS, the window with mousemove events is always the active window.
It doesn't matter if the mouse cursor is inside or outside the window.

So, in order for non-active windows to also have events,
`WM_window_find_under_cursor` is called to find those windows and send
the same events.

The problem is that to find the window, `WM_window_find_under_cursor`
only has the mouse coordinates available, it doesn't differentiate
which monitor these coordinates came from.

So the mouse on one monitor may incorrectly send events to a window on
another monitor.

The solution used is to use a native API on Mac to detect the window
under the cursor.

For Windows and Linux nothing has changed.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D14197
2022-03-01 18:25:12 -03:00
..
intern Fix T95608: Mac issues with drag drop on multi-monitor 2022-03-01 18:25:12 -03:00
test Revert "CMake: include BROTLI_LIBRARIES in FREETYPE_LIBRARIES on UNIX" 2022-01-26 20:51:04 +11:00
CMakeLists.txt Cleanup: indentation for CMake files 2022-01-28 14:52:47 +11:00
GHOST_C-api.h Fix T95608: Mac issues with drag drop on multi-monitor 2022-03-01 18:25:12 -03:00
GHOST_IContext.h Cleanup: spelling in comments 2021-07-26 12:32:42 +10:00
GHOST_IEvent.h Cleanup: spelling in comments & minor cleanup 2021-08-21 13:26:54 +10:00
GHOST_IEventConsumer.h Cleanup: doxygen comments in ghost 2020-11-06 14:25:44 +11:00
GHOST_ISystem.h Fix T95608: Mac issues with drag drop on multi-monitor 2022-03-01 18:25:12 -03:00
GHOST_ISystemPaths.h Replace Ghost integrals with stdint fixed width integers. 2021-07-05 11:00:45 -07:00
GHOST_ITimerTask.h Cleanup: doxygen comments in ghost 2020-11-06 14:25:44 +11:00
GHOST_IWindow.h Cleanup: spelling in comments 2021-09-27 21:04:34 +10:00
GHOST_IXrContext.h XR Controller Support Step 1: Internal Abstractions for OpenXR Actions 2021-05-16 03:36:31 +09:00
GHOST_Path-api.h Replace Ghost integrals with stdint fixed width integers. 2021-07-05 11:00:45 -07:00
GHOST_Rect.h Replace Ghost integrals with stdint fixed width integers. 2021-07-05 11:00:45 -07:00
GHOST_Types.h Revert "BLI: Refactor vector types & functions to use templates" 2022-01-12 12:50:02 +01:00