Prefix undefined event codes with an underscore
Previously, event codes without a kernel define would resolve into properly
named objects, e.g. libevdev.EV_REL.REL_0B
This breaks the API whenever the kernel introduces a new define because that
named object will just disappear. e.g. the above REL_0B
is now
REL_WHEEL_HI_RES
.
Since the undefined names aren't supposed to be used by callers directly
anyway, rename them to be underscored instead: libevdev.EV_REL._REL_0B
This means we can still return them from evbit()
and events()
but the
underscore signals a private API.
The actual name remains the same, so print(_REL_0B.name)
will not have an
underscore. This is to avoid bugs/breakage where the caller uses the 3-lettter
prefix for other purposes.
Fixes #6 (closed)