mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-01-24 03:05:41 +00:00
added support of shift+f10 for menu calling
This commit is contained in:
parent
1d95942afa
commit
50b0c11ff3
3 changed files with 45 additions and 23 deletions
|
|
@ -1030,6 +1030,8 @@ CloudClient._changeLinks = function(pPanelID){
|
|||
var lOnContextMenu_f = function(pEvent){
|
||||
var lReturn_b = true;
|
||||
|
||||
CloudCommander.keyBinded = false;
|
||||
|
||||
/* getting html element
|
||||
* currentTarget - DOM event
|
||||
* target - jquery event
|
||||
|
|
|
|||
|
|
@ -5,8 +5,10 @@ var CloudFunc;
|
|||
CloudCommander.KEY = {
|
||||
TAB : 9,
|
||||
ENTER : 13,
|
||||
ESC : 27,
|
||||
|
||||
PAGE_DOWN : 34,
|
||||
PPAGE_UP : 33,
|
||||
PAGE_DOWN : 34,
|
||||
END : 35,
|
||||
HOME : 36,
|
||||
UP : 38,
|
||||
|
|
@ -117,7 +119,6 @@ CloudCommander.keyBinding = (function(){
|
|||
CloudCommander.Menu();
|
||||
|
||||
event.preventDefault();//запрет на дальнейшее действие
|
||||
event.returnValue = false;
|
||||
}
|
||||
/* навигация по таблице файлов*/
|
||||
/* если нажали клавишу вверх*/
|
||||
|
|
@ -220,7 +221,7 @@ CloudCommander.keyBinding = (function(){
|
|||
/* если нажали клавишу page up
|
||||
* проматываем экран
|
||||
*/
|
||||
else if(event.keyCode === 33){
|
||||
else if(event.keyCode === lKEY.PAGE_UP){
|
||||
Util.getPanel().scrollByPages(-1);
|
||||
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
|
|
@ -244,7 +245,7 @@ CloudCommander.keyBinding = (function(){
|
|||
}
|
||||
|
||||
/* если нажали Enter - открываем папку*/
|
||||
else if(event.keyCode === 13){
|
||||
else if(event.keyCode === lKEY.ENTER){
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
/* если ненайдены выделенные файлы - выходим*/
|
||||
if(!lCurrentFile)return;
|
||||
|
|
@ -348,7 +349,7 @@ CloudCommander.keyBinding = (function(){
|
|||
* устанавливаем все обработчики
|
||||
* нажатий клавиш
|
||||
*/
|
||||
else if(event && event.keyCode === lKEY.S &&
|
||||
else if(event.keyCode === lKEY.S &&
|
||||
event.altKey){
|
||||
/* обрабатываем нажатия на клавиши*/
|
||||
CloudCommander.keyBinded = true;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,8 @@ CloudCommander.Menu = new CloudCommander.Util();
|
|||
|
||||
CloudCommander.Menu.dir = './lib/client/menu/';
|
||||
|
||||
|
||||
/* enable and disable menu constant */
|
||||
CloudCommander.Menu.ENABLED = false;
|
||||
|
||||
/* function return configureation
|
||||
* for menu
|
||||
|
|
@ -16,6 +17,7 @@ CloudCommander.Menu.getConfig = (function(){
|
|||
return{
|
||||
// define which elements trigger this menu
|
||||
selector: 'li',
|
||||
|
||||
// define the elements of the menu
|
||||
items: {
|
||||
view: {name: 'View', callback: function(key, opt){
|
||||
|
|
@ -26,6 +28,8 @@ CloudCommander.Menu.getConfig = (function(){
|
|||
if(lViewer && lViewer.show)
|
||||
lViewer.show();
|
||||
}
|
||||
|
||||
CloudCommander.keyBinded = true;
|
||||
}},
|
||||
|
||||
edit: {name: 'Edit', callback: function(key, opt){
|
||||
|
|
@ -39,11 +43,14 @@ CloudCommander.Menu.getConfig = (function(){
|
|||
lEditor.show();
|
||||
}
|
||||
|
||||
CloudCommander.keyBinded = true;
|
||||
}},
|
||||
|
||||
'delete': {name: 'Delete',
|
||||
callback: function(key, opt){
|
||||
console.log('delete menu item choosen');
|
||||
|
||||
CloudCommander.keyBinded = true;
|
||||
}},
|
||||
|
||||
download: {name: 'Download',callback: function(key, opt){
|
||||
|
|
@ -77,6 +84,8 @@ CloudCommander.Menu.getConfig = (function(){
|
|||
responseText: 'Error: You trying to' +
|
||||
'download same file to often'});
|
||||
}
|
||||
|
||||
CloudCommander.keyBinded = true;
|
||||
}}
|
||||
}
|
||||
};
|
||||
|
|
@ -129,8 +138,9 @@ CloudCommander.Menu.set = (function(){
|
|||
*/
|
||||
document.onclick = function(pEvent){
|
||||
if(pEvent && pEvent.x && pEvent.y){
|
||||
if(lLayer){
|
||||
var lLayer = lThis.getById('context-menu-layer');
|
||||
|
||||
var lLayer = lThis.getById('context-menu-layer');
|
||||
if(lLayer){
|
||||
var lStyle;
|
||||
|
||||
if(lLayer)
|
||||
|
|
@ -163,6 +173,8 @@ CloudCommander.Menu.set = (function(){
|
|||
*/
|
||||
if(typeof lFunc_f === 'function')
|
||||
lFunc_f();
|
||||
|
||||
CloudCommander.keyBinded = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
@ -192,29 +204,36 @@ CloudCommander.Menu.show = (function(pParent, pPosition){
|
|||
/* key binding function */
|
||||
CloudCommander.Menu.Keys = (function(pPosition){
|
||||
"use strict";
|
||||
|
||||
var lFunc = document.oncontextmenu;
|
||||
document.oncontextmenu = function(){
|
||||
if(typeof lFunc === 'function')
|
||||
lFunc();
|
||||
return CloudCommander.Menu.ENABLED;
|
||||
};
|
||||
|
||||
var key_event = (function(){
|
||||
return function(pEvent){
|
||||
/* если клавиши можно обрабатывать */
|
||||
if(CloudCommander.keyBinded)
|
||||
/* if shift + F10 pressed */
|
||||
if(pEvent.keyCode === CloudCommander.KEY.F10 &&
|
||||
pEvent.shiftKey){
|
||||
CloudCommander.Menu.show();
|
||||
|
||||
pEvent.preventDefault();
|
||||
}
|
||||
};
|
||||
var key_event = (function(pEvent){
|
||||
/* если клавиши можно обрабатывать */
|
||||
if(pEvent.keyCode === CloudCommander.KEY.ESC)
|
||||
CloudCommander.keyBinded = true;
|
||||
/* if shift + F10 pressed */
|
||||
if(pEvent.keyCode === CloudCommander.KEY.F10 &&
|
||||
pEvent.shiftKey){
|
||||
var lCurrent = this.getCurrentFile();
|
||||
if(lCurrent)
|
||||
$(lCurrent).contextMenu();
|
||||
}
|
||||
pEvent.preventDefault();
|
||||
});
|
||||
|
||||
/* добавляем обработчик клавишь */
|
||||
if (document.addEventListener)
|
||||
document.addEventListener('keydown', key_event(),false);
|
||||
document.addEventListener('keydown', key_event.bind(this),false);
|
||||
|
||||
else{
|
||||
var lFunc;
|
||||
else{
|
||||
if(typeof document.onkeydown === 'function')
|
||||
lFunc = document.onkeydown;
|
||||
else lFunc = null;
|
||||
|
||||
document.onkeydown = function(){
|
||||
if(lFunc)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue