Tweak the DOMTokenList.toggle polyfill (issue 10460)

This commit is contained in:
Jonas Jenwald 2019-01-16 20:11:17 +01:00
parent 5cb00b7967
commit 68ad3e8e9d
2 changed files with 6 additions and 3 deletions

View File

@ -101,14 +101,17 @@ const hasDOM = typeof window === 'object' && typeof document === 'object';
if (div.classList.toggle('test', 0) === false) {
return;
}
const originalDOMTokenListToggle = DOMTokenList.prototype.toggle;
DOMTokenList.prototype.toggle = function(token) {
if (arguments.length > 1) {
const force = !!arguments[1];
return (this[force ? 'add' : 'remove'](token), force);
}
return originalDOMTokenListToggle(token);
if (this.contains(token)) {
return (this.remove(token), false);
}
return (this.add(token), true);
};
})();

View File

@ -180,7 +180,7 @@ class PDFFindBar {
}
Promise.resolve(matchesCountMsg).then((msg) => {
this.findResultsCount.textContent = msg;
this.findResultsCount.classList[!total ? 'add' : 'remove']('hidden');
this.findResultsCount.classList.toggle('hidden', !total);
// Since `updateResultsCount` may be called from `PDFFindController`,
// ensure that the width of the findbar is always updated correctly.
this._adjustWidth();