The main fix is the change from !this.checked to this.checked as the toggleFilter was storing the inverted value than was displayed.
I changed the listener from 'click' to 'CheckboxStateChange' event, because previously we listened to click and managed (in toggleFilter) what state was displayed for the checkbox. Now when it is a real checkbox element, it shows and manages its state by itself and we only follow and save the state into filter. So the state of the checkbox could change by other means, not just by click (thus onFilterClick wouldn't be called). So let's tie onFilterClick() to the checkbox state better.
Also notice that when you click the checkbox (or to the right of it), it toggles and the filter row loses proper selection. The background highlight turns grey from blue (on Linux). You can use up/down arrows to move the grey bar and then toggling checkboxes using space key produces interesting effects. I do not fix this here, but it is again a regression, it does not happen on TB60. Geoff, please file and fix that separately.