I reckon we can drop ExtConfPatches for versions over a year old
like, everyone should have receiving this and future updates should be on 5.x, or at least on 4.5.x
This commit is contained in:
parent
6eb96f917d
commit
95d3d962f4
@ -7,391 +7,6 @@ import BrowserDetect from './BrowserDetect';
|
|||||||
|
|
||||||
const ExtensionConfPatch = [
|
const ExtensionConfPatch = [
|
||||||
{
|
{
|
||||||
forVersion: '4.2.0',
|
|
||||||
sites: {
|
|
||||||
"old.reddit.com" : {
|
|
||||||
type: 'testing',
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true,
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
querySelectors: '.reddit-video-player-root, .media-preview-content'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
css: '',
|
|
||||||
},
|
|
||||||
"www.reddit.com" : {
|
|
||||||
type: 'testing',
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true,
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
querySelectors: '.reddit-video-player-root, .media-preview-content'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
css: '',
|
|
||||||
},
|
|
||||||
"www.youtube.com" : {
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true,
|
|
||||||
querySelectors: "#movie_player, #player",
|
|
||||||
additionalCss: "",
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
playerNodeCss: "",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.2.3.1',
|
|
||||||
sites: {
|
|
||||||
"old.reddit.com" : {
|
|
||||||
type: 'testing',
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true,
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
querySelectors: '.media-preview-content, .reddit-video-player-root'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
css: '',
|
|
||||||
},
|
|
||||||
"www.reddit.com" : {
|
|
||||||
type: 'testing',
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true,
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
querySelectors: '.media-preview-content, .reddit-video-player-root'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
css: '',
|
|
||||||
},
|
|
||||||
"www.youtube.com" : {
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true,
|
|
||||||
querySelectors: "#movie_player, #player",
|
|
||||||
additionalCss: "",
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
playerNodeCss: "",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.3.0',
|
|
||||||
sites: {
|
|
||||||
"old.reddit.com" : {
|
|
||||||
type: 'testing',
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: false,
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
querySelectors: '.reddit-video-player-root, .media-preview-content'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
css: 'video {\n width: 100% !important;\n height: 100% !important;\n}',
|
|
||||||
},
|
|
||||||
"www.reddit.com" : {
|
|
||||||
type: 'testing',
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: false,
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
querySelectors: '.reddit-video-player-root, .media-preview-content'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
css: 'video {\n width: 100% !important;\n height: 100% !important;\n}',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.3.1.1',
|
|
||||||
sites: {
|
|
||||||
'www.twitch.tv': {
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: false,
|
|
||||||
querySelectors: "",
|
|
||||||
additionalCss: "",
|
|
||||||
useRelativeAncestor: false,
|
|
||||||
playerNodeCss: ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.4.0',
|
|
||||||
updateFn: (userOptions, defaultOptions) => {
|
|
||||||
// remove 'press P to toggle panning mode' thing
|
|
||||||
const togglePan = userOptions.actions.find(x => x.cmd && x.cmd.length === 1 && x.cmd[0].action === 'toggle-pan');
|
|
||||||
if (togglePan) {
|
|
||||||
togglePan.scopes = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
// add new actions
|
|
||||||
userOptions.actions.push({
|
|
||||||
name: 'Don\'t persist crop',
|
|
||||||
label: 'Never persist',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-ar-persistence',
|
|
||||||
arg: 0,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
site: {
|
|
||||||
show: true,
|
|
||||||
},
|
|
||||||
global: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
userAdded: true,
|
|
||||||
name: 'Persist crop while on page',
|
|
||||||
label: 'Until page load',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-ar-persistence',
|
|
||||||
arg: 1,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
site: {
|
|
||||||
show: true,
|
|
||||||
},
|
|
||||||
global: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
userAdded: true,
|
|
||||||
name: 'Persist crop for current session',
|
|
||||||
label: 'Current session',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-ar-persistence',
|
|
||||||
arg: 2,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
site: {
|
|
||||||
show: true,
|
|
||||||
},
|
|
||||||
global: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
name: 'Persist until manually reset',
|
|
||||||
label: 'Always persist',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-ar-persistence',
|
|
||||||
arg: 3,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
site: {
|
|
||||||
show: true,
|
|
||||||
},
|
|
||||||
global: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
name: 'Default crop persistence',
|
|
||||||
label: 'Default',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-ar-persistence',
|
|
||||||
arg: -1,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
site: {
|
|
||||||
show: true,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// patch shortcuts for non-latin layouts, but only if the user hasn't changed default keys
|
|
||||||
for (const action of userOptions.actions) {
|
|
||||||
if (!action.cmd || action.cmd.length !== 1) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
try {
|
|
||||||
// if this fails, then action doesn't have keyboard shortcut associated with it, so we skip it
|
|
||||||
|
|
||||||
const actionDefaults = defaultOptions.actions.find(x => x.cmd && x.cmd.length === 1 // (redundant, default actions have exactly 1 cmd in array)
|
|
||||||
&& x.cmd[0].action === action.cmd[0].action
|
|
||||||
&& x.scopes.page
|
|
||||||
&& x.scopes.page.shortcut
|
|
||||||
&& x.scopes.page.shortcut.length === 1
|
|
||||||
&& x.scopes.page.shortcut[0].key === action.scopes.page.shortcut[0].key // this can throw exception, and it's okay
|
|
||||||
);
|
|
||||||
if (actionDefaults === undefined) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
// update 'code' property for shortcut
|
|
||||||
action.scopes.page.shortcut[0]['code'] = actionDefaults.scopes.page.shortcut[0].code;
|
|
||||||
} catch (e) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.4.1.1',
|
|
||||||
sites: {
|
|
||||||
"www.disneyplus.com": {
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
periodicallyRefreshPlayerElement: true,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.4.2',
|
|
||||||
updateFn: (userOptions, defaultOptions) => {
|
|
||||||
try {
|
|
||||||
userOptions.actions.push(
|
|
||||||
{
|
|
||||||
name: 'Stretch source to 4:3',
|
|
||||||
label: '4:3 stretch (src)',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-stretch',
|
|
||||||
arg: StretchType.FixedSource,
|
|
||||||
customArg: 1.33,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
page: {
|
|
||||||
show: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
path: 'crop'
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
name: 'Stretch source to 16:9',
|
|
||||||
label: '16:9 stretch (src)',
|
|
||||||
cmd: [{
|
|
||||||
action: 'set-stretch',
|
|
||||||
arg: StretchType.FixedSource,
|
|
||||||
customArg: 1.77,
|
|
||||||
}],
|
|
||||||
scopes: {
|
|
||||||
page: {
|
|
||||||
show: true,
|
|
||||||
}
|
|
||||||
},
|
|
||||||
playerUi: {
|
|
||||||
show: true,
|
|
||||||
path: 'crop'
|
|
||||||
}
|
|
||||||
});
|
|
||||||
} catch (e) {
|
|
||||||
console.error("PROBLEM APPLYING SETTINGS", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.4.3.1',
|
|
||||||
sites: {
|
|
||||||
"www.disneyplus.com": {
|
|
||||||
mode: ExtensionMode.Enabled,
|
|
||||||
autoar: ExtensionMode.Enabled,
|
|
||||||
autoarFallback: ExtensionMode.Enabled,
|
|
||||||
override: true, // ignore value localStorage in favour of this
|
|
||||||
stretch: StretchType.Default,
|
|
||||||
videoAlignment: VideoAlignmentType.Default,
|
|
||||||
keyboardShortcutsEnabled: ExtensionMode.Default,
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
periodicallyRefreshPlayerElement: true,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.4.7',
|
|
||||||
updateFn: (userOptions, defaultOptions) => {
|
|
||||||
if (!userOptions.sites['www.netflix.com'].DOM) {
|
|
||||||
userOptions.sites['www.netflix.com']['DOM'] = {
|
|
||||||
"player": {
|
|
||||||
"manual": true,
|
|
||||||
"querySelectors": ".VideoContainer",
|
|
||||||
"additionalCss": "",
|
|
||||||
"useRelativeAncestor": false,
|
|
||||||
"playerNodeCss": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (!userOptions.sites['www.disneyplus.com']) {
|
|
||||||
userOptions.sites['www.disneyplus.com'] = {
|
|
||||||
mode: ExtensionMode.Enabled,
|
|
||||||
autoar: ExtensionMode.Enabled,
|
|
||||||
override: false,
|
|
||||||
type: 'community',
|
|
||||||
stretch: StretchType.Default,
|
|
||||||
videoAlignment: VideoAlignmentType.Default,
|
|
||||||
keyboardShortcutsEnabled: ExtensionMode.Default,
|
|
||||||
arPersistence: true, // persist aspect ratio between different videos
|
|
||||||
autoarPreventConditions: { // prevents autoar on following conditions
|
|
||||||
videoStyleString: { // if video style string thing does anything of what follows
|
|
||||||
containsProperty: { // if video style string has any of these properties (listed as keys)
|
|
||||||
'height': { // if 'height' property is present in style attribute, we prevent autoar from running
|
|
||||||
allowedValues: [ // unless attribute is equal to anything in here. Optional.
|
|
||||||
'100%'
|
|
||||||
]
|
|
||||||
}
|
|
||||||
// 'width': true // this would prevent aard from running if <video> had a 'width' property in style, regardless of value
|
|
||||||
// could also be an empty object, in theory.
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
DOM: {
|
|
||||||
"player": {
|
|
||||||
"manual": true,
|
|
||||||
"querySelectors": ".btn-media-clients",
|
|
||||||
"additionalCss": "",
|
|
||||||
"useRelativeAncestor": false,
|
|
||||||
"playerNodeCss": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
userOptions.sites['wwww.disneyplus.com']['DOM'] = {
|
|
||||||
"player": {
|
|
||||||
"manual": true,
|
|
||||||
"querySelectors": ".btn-media-clients",
|
|
||||||
"additionalCss": "",
|
|
||||||
"useRelativeAncestor": false,
|
|
||||||
"playerNodeCss": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.4.9',
|
|
||||||
sites: {
|
|
||||||
"www.youtube.com": {
|
|
||||||
override: true,
|
|
||||||
DOM: {
|
|
||||||
player: {
|
|
||||||
manual: true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, {
|
|
||||||
forVersion: '4.5.0',
|
forVersion: '4.5.0',
|
||||||
sites: {
|
sites: {
|
||||||
"www.wakanim.tv": {
|
"www.wakanim.tv": {
|
||||||
|
Loading…
Reference in New Issue
Block a user