macOS has broken its exposure/redraw model at least twice by always providing the entire area
of an NSView for every call to drawRect, and cannot provide the list of rects. This change
expands the tracking done using the needs_display_region, and does so directly via the
objective C methods of an NSView (and its derived children like GdkQuartzView).
The result is that when we send an expose signal, GDK/GTK code can obtain an accurate
list of the invalidated rects if desired, and thus avoiding redrawing the entire contents
of a window
recent gcc (>=11) sets _WIN32_WINNT >= 0x602 which changes
QS_ALLINPUT to include (QS_TOUCH | QS_POINTER) events which are
only available on Windows 8 and later. Listening to those events
makes ardour unresponsive.