Move uniqueness filter from getQualityOptions to setQualityMenu

This commit is contained in:
Albin Larsson 2018-06-11 17:00:34 +02:00
parent 6d2dad5810
commit db95b3234f
2 changed files with 4 additions and 6 deletions

5
src/js/controls.js vendored
View File

@ -641,9 +641,10 @@ const controls = {
const type = 'quality'; const type = 'quality';
const list = this.elements.settings.panes.quality.querySelector('ul'); const list = this.elements.settings.panes.quality.querySelector('ul');
// Set options if passed and filter based on config // Set options if passed and filter based on uniqueness and config
if (utils.is.array(options)) { if (utils.is.array(options)) {
this.options.quality = options.filter(quality => this.config.quality.options.includes(quality)); this.options.quality = utils.dedupe(options)
.filter(quality => this.config.quality.options.includes(quality));
} }
// Toggle the pane and tab // Toggle the pane and tab

View File

@ -20,12 +20,9 @@ const html5 = {
// Get quality levels // Get quality levels
getQualityOptions() { getQualityOptions() {
// Get sizes from <source> elements // Get sizes from <source> elements
const sizes = html5.getSources.call(this) return html5.getSources.call(this)
.map(source => Number(source.getAttribute('size'))) .map(source => Number(source.getAttribute('size')))
.filter(Boolean); .filter(Boolean);
// Reduce to unique list
return utils.dedupe(sizes);
}, },
extend() { extend() {