Add additional video player keyboard shortcuts (#275)
* Skip forward 10 seconds ((CMD OR CTRL) ALT right) Skip back 10 seconds ((CMD OR CTRL) ALT left) Increase video speed ((CMD OR CTRL) +) Decrease video speed ((CMD OR CTRL) -) * Codestyle fix * The 'steps' should be implemented in base2, standard players use 1x, 2x, 4x, 8x, 16x fixed bug with shift + "=" which is "+" * resolve conflicts * remove ide specific data make playback rate more granular add to menu skip and speed entries * intendation fix * conflict resolve * rename setPlaybackRate to changePlaybackRate setRate return boolean depending on whether this cast target supports setting the playback rate. if setRate returns false - don`t change state redundant else if statement in changePlaybackRate function
This commit is contained in:
62
main/menu.js
62
main/menu.js
@@ -92,6 +92,30 @@ function openSubtitles () {
|
||||
}
|
||||
}
|
||||
|
||||
function skipForward () {
|
||||
if (windows.main) {
|
||||
windows.main.send('dispatch', 'skip', 1)
|
||||
}
|
||||
}
|
||||
|
||||
function skipBack () {
|
||||
if (windows.main) {
|
||||
windows.main.send('dispatch', 'skip', -1)
|
||||
}
|
||||
}
|
||||
|
||||
function increasePlaybackRate () {
|
||||
if (windows.main) {
|
||||
windows.main.send('dispatch', 'changePlaybackRate', 1)
|
||||
}
|
||||
}
|
||||
|
||||
function decreasePlaybackRate () {
|
||||
if (windows.main) {
|
||||
windows.main.send('dispatch', 'changePlaybackRate', -1)
|
||||
}
|
||||
}
|
||||
|
||||
function onWindowShow () {
|
||||
log('onWindowShow')
|
||||
getMenuItem('Full Screen').enabled = true
|
||||
@@ -110,6 +134,10 @@ function onPlayerOpen () {
|
||||
getMenuItem('Increase Volume').enabled = true
|
||||
getMenuItem('Decrease Volume').enabled = true
|
||||
getMenuItem('Add Subtitles File...').enabled = true
|
||||
getMenuItem('Skip forward 10 seconds').enabled = true
|
||||
getMenuItem('Skip back 10 seconds').enabled = true
|
||||
getMenuItem('Increase video speed').enabled = true
|
||||
getMenuItem('Decrease video speed').enabled = true
|
||||
}
|
||||
|
||||
function onPlayerClose () {
|
||||
@@ -118,6 +146,10 @@ function onPlayerClose () {
|
||||
getMenuItem('Increase Volume').enabled = false
|
||||
getMenuItem('Decrease Volume').enabled = false
|
||||
getMenuItem('Add Subtitles File...').enabled = false
|
||||
getMenuItem('Skip forward 10 seconds').enabled = false
|
||||
getMenuItem('Skip back 10 seconds').enabled = false
|
||||
getMenuItem('Increase video speed').enabled = false
|
||||
getMenuItem('Decrease video speed').enabled = false
|
||||
}
|
||||
|
||||
function onToggleFullScreen (isFullScreen) {
|
||||
@@ -311,6 +343,36 @@ function getAppMenuTemplate () {
|
||||
label: 'Add Subtitles File...',
|
||||
click: openSubtitles,
|
||||
enabled: false
|
||||
},
|
||||
{
|
||||
type: 'separator'
|
||||
},
|
||||
{
|
||||
label: 'Skip forward 10 seconds',
|
||||
accelerator: 'CmdOrCtrl+Alt+Right',
|
||||
click: skipForward,
|
||||
enabled: false
|
||||
},
|
||||
{
|
||||
label: 'Skip back 10 seconds',
|
||||
accelerator: 'CmdOrCtrl+Alt+Left',
|
||||
click: skipBack,
|
||||
enabled: false
|
||||
},
|
||||
{
|
||||
type: 'separator'
|
||||
},
|
||||
{
|
||||
label: 'Increase video speed',
|
||||
accelerator: 'CmdOrCtrl+plus',
|
||||
click: increasePlaybackRate,
|
||||
enabled: false
|
||||
},
|
||||
{
|
||||
label: 'Decrease video speed',
|
||||
accelerator: 'CmdOrCtrl+-',
|
||||
click: decreasePlaybackRate,
|
||||
enabled: false
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user