Fix for controls missing (fixes #1161)

This commit is contained in:
Sam Potts 2018-08-14 09:17:58 +10:00
parent b57b7b2153
commit cfaebe9bf2
2 changed files with 17 additions and 11 deletions

View File

@ -1,3 +1,7 @@
# v3.4.1
- Bug fix for custom controls (fixes #1161)
# v3.4.0 # v3.4.0
- Accessibility improvements (see #905) - Accessibility improvements (see #905)

24
src/js/controls.js vendored
View File

@ -1611,18 +1611,20 @@ const controls = {
// Add pressed property to buttons // Add pressed property to buttons
if (!is.empty(this.elements.buttons)) { if (!is.empty(this.elements.buttons)) {
// Toggle classname when pressed property is set // Toggle classname when pressed property is set
Object.values(this.elements.buttons).forEach(button => { Object.values(this.elements.buttons)
const className = this.config.classNames.controlPressed; .filter(Boolean)
Object.defineProperty(button, 'pressed', { .forEach(button => {
enumerable: true, const className = this.config.classNames.controlPressed;
get() { Object.defineProperty(button, 'pressed', {
return hasClass(button, className); enumerable: true,
}, get() {
set(pressed = false) { return hasClass(button, className);
toggleClass(button, className, pressed); },
}, set(pressed = false) {
toggleClass(button, className, pressed);
},
});
}); });
});
} }
// Edge sometimes doesn't finish the paint so force a redraw // Edge sometimes doesn't finish the paint so force a redraw