DND: Work better with XI2
It turns out that simply using XIGrabKeycode instead of XGrabKey makes the DND keyboard support mostly work (there seem to be some minor issues with modifiers). This means we no longer grab the keyboard actively during DND, which in turn makes Alt-Tab and other window manager shortcuts work again during DND. At the same time, bring the DND key handling code into the multi-backend work, by checking for X11 and XI2 at runtime, in addition to compile time.
Showing with 113 additions and 17 deletions