removed property keyBinded, from now it's private member of KeyBinding class

This commit is contained in:
coderaiser 2012-09-04 09:57:30 -04:00
parent aa18e800b5
commit 6f98d2fc0a
6 changed files with 407 additions and 381 deletions

View file

@ -19,6 +19,9 @@ loaded any time by any extension.
* Fixed bug with keyboard not responding when go deeper
in file tree thrue mouse double click.
* Removed property keyBinded. From not it's private
member of KeyBinding class.
2012.08.24, Version 0.1.6

View file

@ -8,6 +8,14 @@
var CloudCommander = (function(){
"use strict";
var cloudcmd = this;
/* глобальные переменные */
var CloudFunc, $, Util, KeyBinding,
/* short names used all the time functions */
getByClass, getById;
/* Клиентский обьект, содержащий функциональную часть*/
var CloudClient = {
/* Конструктор CloudClient, который
@ -16,9 +24,7 @@ var CloudClient = {
*/
init : null, /* start initialization*/
keyBinding : null, /* функция нажатий обработки клавишь*/
keyBinded : false,/* оброботка нажатий клавишь установлена */
KeyBinding : null, /* обьект обработки нажатий клавишь */
Config : null, /* function loads and shows config */
Editor : null, /* function loads and shows editor */
Viewer : null, /* function loads and shows viewer */
@ -759,10 +765,10 @@ CloudClient.Util = (function(){
CloudClient.Util = new CloudClient.Util();
/* функция обработки нажатий клавишь */
CloudClient.keyBinding=(function(){
CloudClient.KeyBinding=(function(){
/* loading keyBinding module and start it */
Util.jsload(CloudClient.LIBDIRCLIENT+'keyBinding.js', function(){
CloudCommander.keyBinding();
CloudCommander.KeyBinding.init();
});
});
@ -900,7 +906,7 @@ CloudClient._editFileName = (function(pParent){
if (lA && lA.textContent !== '..'){
lA.contentEditable = true;
CloudCommander.keyBinded = false;
KeyBinding.unSet();
var lDocumentOnclick = document.onclick;
@ -912,8 +918,8 @@ CloudClient._editFileName = (function(pParent){
var lA = Util.getCurrentLink(pParent);
if (lA && lA.textContent !== '..')
lA.contentEditable = false;
CloudCommander.keyBinded = true;
KeyBinding.Set();
/* backs old document.onclick
* and call it if it was
@ -1006,11 +1012,6 @@ CloudClient._currentToParent = (function(pDirName){
lRootDir.scrollIntoViewIfNeeded();
}
});
/* глобальные переменные */
var CloudFunc, $, Util,
/* short names used all the time functions */
getByClass, getById;
/* Конструктор CloudClient, который
* выполняет весь функционал по
@ -1117,7 +1118,7 @@ CloudClient._changeLinks = function(pPanelID){
var lOnContextMenu_f = function(pEvent){
var lReturn_b = true;
CloudCommander.keyBinded = false;
KeyBinding.unSet();
/* getting html element
* currentTarget - DOM event
@ -1407,7 +1408,7 @@ try{
CloudCommander.init();
/* привязываем клавиши к функциям */
CloudCommander.keyBinding();
CloudCommander.KeyBinding();
/* загружаем Google Analytics */
CloudCommander.GoogleAnalytics();

View file

@ -4,8 +4,9 @@ var CloudCommander, CloudFunc, CodeMirror;
*/
(function(){
"use strict";
var Util = CloudCommander.Util;
var cloudcmd = CloudCommander;
var Util = cloudcmd.Util;
var KeyBinding = cloudcmd.KeyBinding;
CloudCommander.Editor = {
get : (function(){
@ -155,7 +156,7 @@ var CloudCommander, CloudFunc, CodeMirror;
initCodeMirror_f(data);
/* removing keyBinding if set */
CloudCommander.keyBinded = false;
KeyBinding.unSet();
Util.hidePanel();
Util.Images.hideLoad();
@ -168,7 +169,7 @@ var CloudCommander, CloudFunc, CodeMirror;
/* function hides CodeMirror editor */
CloudCommander.Editor.CodeMirror.hide = (function() {
return function(){
CloudCommander.keyBinded = true;
KeyBinding.set();
Util.showPanel();
var lCloudEditor = Util.getById('CloudEditor');
@ -190,7 +191,7 @@ var CloudCommander, CloudFunc, CodeMirror;
var key_event = function(pEvent){
/* если клавиши можно обрабатывать */
if(CloudCommander.keyBinded){
if( KeyBinding.get() ){
/* if f4 or f3 pressed */
var lF3 = CloudCommander.KEY.F3;
var lF4 = CloudCommander.KEY.F4;

View file

@ -1,373 +1,389 @@
var CloudCommander;
/* Key constants*/
CloudCommander.KEY = {
TAB : 9,
ENTER : 13,
ESC : 27,
PPAGE_UP : 33,
PAGE_DOWN : 34,
END : 35,
HOME : 36,
UP : 38,
DOWN : 40,
D : 68,
O : 79,
Q : 81,
R : 82,
S : 83,
F2 : 113,
F3 : 114,
F4 : 115,
F10 : 121
};
CloudCommander.keyBinding = (function(){
(function(){
"use strict";
var Util = CloudCommander.Util;
/* saving state of tabs varibles */
var lTabPanel = {
left : 0,
right : 0
};
var lKEY = CloudCommander.KEY;
var key_event = function(event){
/* получаем выдленный файл*/
var lCurrentFile = Util.getCurrentFile(),
lName, i;
/* если клавиши можно обрабатывать*/
if(CloudCommander.keyBinded && event){
/* open configuration window */
if(event.keyCode === lKEY.O && event.altKey){
console.log('openning config window...');
Util.Images.showLoad();
if (typeof CloudCommander.Config === 'function')
CloudCommander.Config();
}
/* если нажали таб:
* переносим курсор на
* правую панель, если
* мы были на левой и
* наоборот
*/
if(event.keyCode === lKEY.TAB){
console.log('Tab pressed');
try{
/* changing parent panel of curent-file */
var lPanel = Util.getPanel();
var lId = lPanel.id;
var cloudcmd = CloudCommander;
/* private property set or set key binding */
var keyBinded;
/* Key constants*/
cloudcmd.KEY = {
TAB : 9,
ENTER : 13,
ESC : 27,
PPAGE_UP : 33,
PAGE_DOWN : 34,
END : 35,
HOME : 36,
UP : 38,
DOWN : 40,
D : 68,
O : 79,
Q : 81,
R : 82,
S : 83,
F2 : 113,
F3 : 114,
F4 : 115,
F10 : 121
};
cloudcmd.KeyBinding = {};
var KeyBinding = cloudcmd.KeyBinding;
KeyBinding.get = function(){return keyBinded;};
KeyBinding.set = function(){keyBinded = true;};
KeyBinding.unSet = function(){keyBinded = false;};
KeyBinding.init = (function(){
var Util = CloudCommander.Util;
/* saving state of tabs varibles */
var lTabPanel = {
left : 0,
right : 0
};
var lKEY = CloudCommander.KEY;
var key_event = function(event){
/* получаем выдленный файл*/
var lCurrentFile = Util.getCurrentFile(),
lName, i;
/* если клавиши можно обрабатывать*/
if(keyBinded && event){
/* open configuration window */
if(event.keyCode === lKEY.O && event.altKey){
console.log('openning config window...');
lTabPanel[lId] = lCurrentFile;
lPanel = Util.getPanel({active:false});
lId = lPanel.id;
if(lTabPanel[lId])
Util.setCurrentFile(lTabPanel[lId]);
else{
var lFirstFileOnList = Util.getByTag('li', lPanel)[2];
Util.setCurrentFile(lFirstFileOnList);
}
}catch(error){console.log(error);}
event.preventDefault();//запрет на дальнейшее действие
}
/* if f2 pressed */
else if(event.keyCode === lKEY.F2){
}
/* if f3 or shift+f3 pressed */
else if(event.keyCode === lKEY.F3){
Util.Images.showLoad();
if(event.shiftKey &&
typeof CloudCommander.Viewer === 'function')
CloudCommander.Viewer(lCurrentFile);
else if (typeof CloudCommander.Editor === 'function')
CloudCommander.Editor(lCurrentFile, true);
event.preventDefault();//запрет на дальнейшее действие
}
/* if alt+f3 pressed */
else if(event.keyCode === lKEY.F3 &&
event.altKey){
Util.Images.showLoad();
if (typeof CloudCommander.Terminal === 'function')
CloudCommander.Terminal();
event.preventDefault();//запрет на дальнейшее действие
}
/* if f4 pressed */
else if(event.keyCode === lKEY.F4) {
Util.Images.showLoad();
if (typeof CloudCommander.Editor === 'function')
CloudCommander.Editor(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
else if(event.keyCode === lKEY.F10 &&
event.shiftKey){
if (typeof CloudCommander.Menu === 'function')
CloudCommander.Menu();
if (typeof CloudCommander.Config === 'function')
CloudCommander.Config();
}
/* если нажали таб:
* переносим курсор на
* правую панель, если
* мы были на левой и
* наоборот
*/
if(event.keyCode === lKEY.TAB){
console.log('Tab pressed');
try{
/* changing parent panel of curent-file */
var lPanel = Util.getPanel();
var lId = lPanel.id;
lTabPanel[lId] = lCurrentFile;
lPanel = Util.getPanel({active:false});
lId = lPanel.id;
if(lTabPanel[lId])
Util.setCurrentFile(lTabPanel[lId]);
else{
var lFirstFileOnList = Util.getByTag('li', lPanel)[2];
Util.setCurrentFile(lFirstFileOnList);
}
}catch(error){console.log(error);}
event.preventDefault();//запрет на дальнейшее действие
}
/* if f2 pressed */
else if(event.keyCode === lKEY.F2){
}
/* if f3 or shift+f3 pressed */
else if(event.keyCode === lKEY.F3){
Util.Images.showLoad();
if(event.shiftKey &&
typeof CloudCommander.Viewer === 'function')
CloudCommander.Viewer(lCurrentFile);
else if (typeof CloudCommander.Editor === 'function')
CloudCommander.Editor(lCurrentFile, true);
event.preventDefault();//запрет на дальнейшее действие
}
/* if alt+f3 pressed */
else if(event.keyCode === lKEY.F3 &&
event.altKey){
Util.Images.showLoad();
if (typeof CloudCommander.Terminal === 'function')
CloudCommander.Terminal();
event.preventDefault();//запрет на дальнейшее действие
}
/* навигация по таблице файлов*/
/* если нажали клавишу вверх*/
else if(event.keyCode === lKEY.UP){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile) return;
/* если это строка существет и
* если она не заголовок
* файловой таблицы
*/
lCurrentFile = lCurrentFile.previousSibling;
if(lCurrentFile){
/* выделяем предыдущую строку*/
Util.setCurrentFile(lCurrentFile);
/* scrolling to current file*/
Util.scrollIntoViewIfNeeded(lCurrentFile);
}
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали клавишу в низ*/
else if(event.keyCode === lKEY.DOWN){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile)return;
lCurrentFile = lCurrentFile.nextSibling;
/* если это не последняя строка */
if(lCurrentFile){
/* выделяем следующую строку*/
Util.setCurrentFile(lCurrentFile);
/* scrolling to current file*/
Util.scrollIntoViewIfNeeded(lCurrentFile);
/* if f4 pressed */
else if(event.keyCode === lKEY.F4) {
Util.Images.showLoad();
if (typeof CloudCommander.Editor === 'function')
CloudCommander.Editor(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
else if(event.keyCode === lKEY.F10 &&
event.shiftKey){
if (typeof CloudCommander.Menu === 'function')
CloudCommander.Menu();
event.preventDefault();//запрет на дальнейшее действие
}
/* навигация по таблице файлов*/
/* если нажали клавишу вверх*/
else if(event.keyCode === lKEY.UP){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile) return;
/* если это строка существет и
* если она не заголовок
* файловой таблицы
*/
lCurrentFile = lCurrentFile.previousSibling;
if(lCurrentFile){
/* выделяем предыдущую строку*/
Util.setCurrentFile(lCurrentFile);
/* scrolling to current file*/
Util.scrollIntoViewIfNeeded(lCurrentFile);
}
event.preventDefault();//запрет на дальнейшее действие
}
}
/* если нажали клавишу Home
* переходим к самому верхнему
* элементу
*/
else if(event.keyCode === lKEY.HOME){
/* получаем первый элемент
* пропускаем путь и заголовки столбиков
* выделяем верхий файл
*/
Util.setCurrentFile(lCurrentFile
.parentElement.children[2]);
/* move scrollbar to top */
Util.getPanel().scrollByLines(-100000000000000);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали клавишу End
* выделяем последний элемент
*/
else if( event.keyCode === lKEY.END){
/* выделяем самый нижний файл */
Util.setCurrentFile(lCurrentFile
.parentElement.lastElementChild);
/* move scrollbar to bottom*/
Util.getPanel().scrollByLines(100000000000000);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали клавишу page down
* проматываем экран
*/
else if(event.keyCode === lKEY.PAGE_DOWN){
Util.getPanel().scrollByPages(1);
for(i=0; i<30; i++){
if(!lCurrentFile.nextSibling) break;
/* если нажали клавишу в низ*/
else if(event.keyCode === lKEY.DOWN){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile)return;
lCurrentFile = lCurrentFile.nextSibling;
}
Util.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали клавишу page up
* проматываем экран
*/
else if(event.keyCode === lKEY.PAGE_UP){
Util.getPanel().scrollByPages(-1);
for(i=0; i<30; i++){
if(!lCurrentFile.previousSibling) break;
else try{
lCurrentFile
.previousSibling
.previousSibling
.previousSibling
.previousSibling;
}
catch(pError){
break;
}
lCurrentFile = lCurrentFile.previousSibling;
}
Util.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали Enter - открываем папку*/
else if(event.keyCode === lKEY.ENTER){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile)return;
/* из него достаём спан с именем файла*/
lName = Util.getByClass('name', lCurrentFile);
/* если нету (что вряд ли) - выходим*/
if(!lName)return false;
/* достаём все ссылки*/
var lATag = Util.getByTag('a', lName[0]);
/* если нету - выходим */
if(!lATag)return false;
/* вызываем ajaxload привязанный через changelinks
* пробуем нажать на ссылку, если не получиться
* (opera, ie), вызываем событие onclick,
*/
if(lCurrentFile.onclick)lCurrentFile.onclick(true);
else try{
lATag[0].click();
}
catch(error){
console.log(error);
}
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали <ctr>+r
* обновляем страницу,
* загружаем содержимое каталога
* при этом данные берём всегда с
* сервера, а не из кэша
* (обновляем кэш)
*/
else if(event.keyCode === lKEY.R &&
event.ctrlKey){
console.log('<ctrl>+r pressed');
console.log('reloading page...');
console.log('press <alt>+q to remove all key-handlers');
/* Программно нажимаем на кнопку перезагрузки
* содержимого каталога
*/
var lRefreshIcon = Util.getRefreshButton();
if(lRefreshIcon){
/* получаем название файла*/
var lSelectedName = Util
.getByTag('a', lCurrentFile)[0].textContent;
/* если это не последняя строка */
if(lCurrentFile){
/* выделяем следующую строку*/
Util.setCurrentFile(lCurrentFile);
/* если нашли элемент нажимаем него
* а если не можем - нажимаем на
* ссылку, на которую повешен eventHandler
* onclick
*/
lRefreshIcon.onclick();
CloudCommander._currentToParent(lSelectedName);
/* scrolling to current file*/
Util.scrollIntoViewIfNeeded(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
}
/* если нажали клавишу Home
* переходим к самому верхнему
* элементу
*/
else if(event.keyCode === lKEY.HOME){
/* получаем первый элемент
* пропускаем путь и заголовки столбиков
* выделяем верхий файл
*/
Util.setCurrentFile(lCurrentFile
.parentElement.children[2]);
/* move scrollbar to top */
Util.getPanel().scrollByLines(-100000000000000);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали клавишу End
* выделяем последний элемент
*/
else if( event.keyCode === lKEY.END){
/* выделяем самый нижний файл */
Util.setCurrentFile(lCurrentFile
.parentElement.lastElementChild);
/* move scrollbar to bottom*/
Util.getPanel().scrollByLines(100000000000000);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали клавишу page down
* проматываем экран
*/
else if(event.keyCode === lKEY.PAGE_DOWN){
Util.getPanel().scrollByPages(1);
for(i=0; i<30; i++){
if(!lCurrentFile.nextSibling) break;
lCurrentFile = lCurrentFile.nextSibling;
}
Util.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
}
/* если нажали <ctrl>+d чистим кэш */
else if(event.keyCode === lKEY.D &&
event.ctrlKey){
console.log('<ctrl>+d pressed');
console.log('clearing cache...');
console.log('press <alt>+q to remove all key-handlers');
var lClearCache = Util.getById('clear-cache');
if(lClearCache && lClearCache.onclick)
lClearCache.onclick();
/* если нажали клавишу page up
* проматываем экран
*/
else if(event.keyCode === lKEY.PAGE_UP){
Util.getPanel().scrollByPages(-1);
for(i=0; i<30; i++){
if(!lCurrentFile.previousSibling) break;
else try{
lCurrentFile
.previousSibling
.previousSibling
.previousSibling
.previousSibling;
}
catch(pError){
break;
}
lCurrentFile = lCurrentFile.previousSibling;
}
Util.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали Enter - открываем папку*/
else if(event.keyCode === lKEY.ENTER){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile)return;
/* из него достаём спан с именем файла*/
lName = Util.getByClass('name', lCurrentFile);
/* если нету (что вряд ли) - выходим*/
if(!lName)return false;
/* достаём все ссылки*/
var lATag = Util.getByTag('a', lName[0]);
/* если нету - выходим */
if(!lATag)return false;
/* вызываем ajaxload привязанный через changelinks
* пробуем нажать на ссылку, если не получиться
* (opera, ie), вызываем событие onclick,
*/
if(lCurrentFile.onclick)lCurrentFile.onclick(true);
else try{
lATag[0].click();
}
catch(error){
console.log(error);
}
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали <ctr>+r
* обновляем страницу,
* загружаем содержимое каталога
* при этом данные берём всегда с
* сервера, а не из кэша
* (обновляем кэш)
*/
else if(event.keyCode === lKEY.R &&
event.ctrlKey){
console.log('<ctrl>+r pressed');
console.log('reloading page...');
console.log('press <alt>+q to remove all key-handlers');
/* Программно нажимаем на кнопку перезагрузки
* содержимого каталога
*/
var lRefreshIcon = Util.getRefreshButton();
if(lRefreshIcon){
/* получаем название файла*/
var lSelectedName = Util
.getByTag('a', lCurrentFile)[0].textContent;
/* если нашли элемент нажимаем него
* а если не можем - нажимаем на
* ссылку, на которую повешен eventHandler
* onclick
*/
lRefreshIcon.onclick();
CloudCommander._currentToParent(lSelectedName);
event.preventDefault();//запрет на дальнейшее действие
}
}
/* если нажали <ctrl>+d чистим кэш */
else if(event.keyCode === lKEY.D &&
event.ctrlKey){
console.log('<ctrl>+d pressed');
console.log('clearing cache...');
console.log('press <alt>+q to remove all key-handlers');
var lClearCache = Util.getById('clear-cache');
if(lClearCache && lClearCache.onclick)
lClearCache.onclick();
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали <alt>+q
* убираем все обработчики
* нажатий клавиш
*/
else if(event.keyCode === lKEY.Q &&
event.altKey){
//document.removeEventListener('keydown', key_event,false);
console.log('<alt>+q pressed');
console.log('<ctrl>+r reload key-handerl - removed');
console.log('<ctrl>+s clear cache key-handler - removed');
console.log('press <alt>+s to to set them');
/* обработчик нажатий клавиш снят*/
keyBinded = false;
event.preventDefault();//запрет на дальнейшее действие
}
}
/* если нажали <alt>+s
* устанавливаем все обработчики
* нажатий клавиш
*/
else if(event.keyCode === lKEY.S &&
event.altKey){
/* обрабатываем нажатия на клавиши*/
keyBinded = true;
console.log('<alt>+s pressed');
console.log('<ctrl>+r reload key-handerl - set');
console.log('<ctrl>+s clear cache key-handler - set');
console.log('press <alt>+q to remove them');
event.preventDefault();//запрет на дальнейшее действие
}
/* если нажали <alt>+q
* убираем все обработчики
* нажатий клавиш
*/
else if(event.keyCode === lKEY.Q &&
event.altKey){
//document.removeEventListener('keydown', key_event,false);
console.log('<alt>+q pressed');
console.log('<ctrl>+r reload key-handerl - removed');
console.log('<ctrl>+s clear cache key-handler - removed');
console.log('press <alt>+s to to set them');
/* обработчик нажатий клавиш снят*/
CloudCommander.keyBinded = false;
event.preventDefault();//запрет на дальнейшее действие
}
}
/* если нажали <alt>+s
* устанавливаем все обработчики
* нажатий клавиш
*/
else if(event.keyCode === lKEY.S &&
event.altKey){
/* обрабатываем нажатия на клавиши*/
CloudCommander.keyBinded = true;
console.log('<alt>+s pressed');
console.log('<ctrl>+r reload key-handerl - set');
console.log('<ctrl>+s clear cache key-handler - set');
console.log('press <alt>+q to remove them');
event.preventDefault();//запрет на дальнейшее действие
}
return false;
};
return false;
};
/* добавляем обработчик клавишь */
if(document.addEventListener)
document.addEventListener('keydown', key_event,false);
else document.onkeydown = key_event;
/* клавиши назначены*/
CloudCommander.keyBinded=true;
});
/* добавляем обработчик клавишь */
if(document.addEventListener)
document.addEventListener('keydown', key_event,false);
else document.onkeydown = key_event;
/* клавиши назначены*/
keyBinded = true;
});
})();

View file

@ -5,7 +5,10 @@ var CloudCommander, $;
(function(){
"use strict";
CloudCommander.Menu = {};
var cloudcmd = CloudCommander;
var KeyBinding = cloudcmd.KeyBinding;
cloudcmd.Menu = {};
var Util = CloudCommander.Util;
@ -17,8 +20,7 @@ var CloudCommander, $;
CloudCommander.Menu.showEditor = (function(pReadOnly){
Util.Images.showLoad();
var lCloudcmd = CloudCommander;
var lEditor = pReadOnly ? lCloudcmd.Viewer:lCloudcmd.Editor;
var lEditor = pReadOnly ? cloudcmd.Viewer : cloudcmd.Editor;
var lCurrent = Util.getCurrentFile();
if(lCurrent){
if(typeof lEditor === 'function')
@ -41,7 +43,7 @@ var CloudCommander, $;
var m = "clicked: " + key;
console.log(m, options);
CloudCommander.keyBinded = true;
KeyBinding.set();
},
// define the elements of the menu
items: {
@ -175,8 +177,8 @@ var CloudCommander, $;
*/
if(typeof lFunc_f === 'function')
lFunc_f();
CloudCommander.keyBinded = true;
KeyBinding.set();
}
}
};
@ -216,7 +218,7 @@ var CloudCommander, $;
var key_event = (function(pEvent){
/* если клавиши можно обрабатывать */
if(CloudCommander.keyBinded)
if( KeyBinding.get() )
/* if shift + F10 pressed */
if(pEvent.keyCode === CloudCommander.KEY.F10 &&
pEvent.shiftKey){

View file

@ -3,14 +3,17 @@ var CloudCommander, CloudFunc, $;
* https://github.com/fancyapps/fancyBox
*/
(function(){
var cloudcmd = CloudCommander;
var Util = cloudcmd.Util;
var KeyBinding = cloudcmd.KeyBinding;
CloudCommander.Viewer = {
get: (function(){
return this.FancyBox;
})
};
CloudCommander.Viewer.FancyBox = {};
var Util = CloudCommander.Util;
CloudCommander.Viewer.FancyBox = {};
CloudCommander.Viewer.dir = './lib/client/viewer/';
CloudCommander.Viewer.FancyBox.dir = CloudCommander.Viewer.dir +
@ -27,7 +30,7 @@ var CloudCommander, CloudFunc, $;
* before FauncyBox shows
*/
beforeShow : function(){
CloudCommander.keyBinded = false;
KeyBinding.unSet();
},
afterShow : function(){
@ -37,7 +40,7 @@ var CloudCommander, CloudFunc, $;
},
beforeClose : function(){
CloudCommander.keyBinded = true;
KeyBinding.set();
},
openEffect : 'none',
@ -195,7 +198,7 @@ var CloudCommander, CloudFunc, $;
var lCallBack_f = (function(){
var key_event = (function(pEvent){
/* если клавиши можно обрабатывать */
if(CloudCommander.keyBinded)
if( KeyBinding.get() )
/* if f3 pressed */
if(pEvent.keyCode === CloudCommander.KEY.F3 &&
pEvent.shiftKey){