Discussion of these changes can be found on the Mercury developers
mailing list archives from June 2018.
COPYING.LIB:
Add a special linking exception to the LGPL.
*:
Update references to COPYING.LIB.
Clean up some minor errors that have accumulated in copyright
messages.
Branches: main, 11.01
Make the easyx library in the extras distribution compile again.
extras/graphics/easyx/easyx.m:
Rename the event/0 type to x_event/0 in order to avoid conflicting
with the event keyword used in event goals.
extras/graphics/easyx/*.m:
Conform more closely to our current formatting style.
Use can_pass_as_mercury_type assertions where possible.
Estimated hours taken: 1
Branches: main
Fixed a latency bug in the easyx interface. One has to tell the
Xlib XSync function to discard any pending events in the input queue
in order to avoid noticable event processing lag in applications with a high
refresh rate.
easyx.m:
Moved the import of xlib to the implementation section (xlib is
not used in the interface.)
Added easyx.sync/3.
xlib.m:
Changed xlib.sync/1 to discard any events waiting in the input queue.
samples/bounce.m:
Now uses easyx.sync/3 rather than easyx.flush/3, which dramatically
improves responsiveness.