From 6f98d2fc0ac4d62439af996ea04beb06a64d027e Mon Sep 17 00:00:00 2001 From: coderaiser Date: Tue, 4 Sep 2012 09:57:30 -0400 Subject: [PATCH] removed property keyBinded, from now it's private member of KeyBinding class --- ChangeLog | 3 + client.js | 31 +- lib/client/editor.js | 11 +- lib/client/keyBinding.js | 714 ++++++++++++++++++++------------------- lib/client/menu.js | 16 +- lib/client/viewer.js | 13 +- 6 files changed, 407 insertions(+), 381 deletions(-) diff --git a/ChangeLog b/ChangeLog index 173bcebf..5655fdb8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -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 diff --git a/client.js b/client.js index bdba95fd..b201f04a 100644 --- a/client.js +++ b/client.js @@ -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(); diff --git a/lib/client/editor.js b/lib/client/editor.js index b1dd5968..9e72e5ac 100644 --- a/lib/client/editor.js +++ b/lib/client/editor.js @@ -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; diff --git a/lib/client/keyBinding.js b/lib/client/keyBinding.js index 3a73737b..12015461 100644 --- a/lib/client/keyBinding.js +++ b/lib/client/keyBinding.js @@ -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();//запрет на дальнейшее действие - } - - /* если нажали +r - * обновляем страницу, - * загружаем содержимое каталога - * при этом данные берём всегда с - * сервера, а не из кэша - * (обновляем кэш) - */ - else if(event.keyCode === lKEY.R && - event.ctrlKey){ - console.log('+r pressed'); - console.log('reloading page...'); - console.log('press +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();//запрет на дальнейшее действие } - } - /* если нажали +d чистим кэш */ - else if(event.keyCode === lKEY.D && - event.ctrlKey){ - console.log('+d pressed'); - console.log('clearing cache...'); - console.log('press +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();//запрет на дальнейшее действие + } + + /* если нажали +r + * обновляем страницу, + * загружаем содержимое каталога + * при этом данные берём всегда с + * сервера, а не из кэша + * (обновляем кэш) + */ + else if(event.keyCode === lKEY.R && + event.ctrlKey){ + console.log('+r pressed'); + console.log('reloading page...'); + console.log('press +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();//запрет на дальнейшее действие + } + } + + /* если нажали +d чистим кэш */ + else if(event.keyCode === lKEY.D && + event.ctrlKey){ + console.log('+d pressed'); + console.log('clearing cache...'); + console.log('press +q to remove all key-handlers'); + + var lClearCache = Util.getById('clear-cache'); + if(lClearCache && lClearCache.onclick) + lClearCache.onclick(); + + event.preventDefault();//запрет на дальнейшее действие + } + + /* если нажали +q + * убираем все обработчики + * нажатий клавиш + */ + else if(event.keyCode === lKEY.Q && + event.altKey){ + //document.removeEventListener('keydown', key_event,false); + console.log('+q pressed'); + console.log('+r reload key-handerl - removed'); + console.log('+s clear cache key-handler - removed'); + console.log('press +s to to set them'); + + /* обработчик нажатий клавиш снят*/ + keyBinded = false; + + event.preventDefault();//запрет на дальнейшее действие + } + } + + /* если нажали +s + * устанавливаем все обработчики + * нажатий клавиш + */ + else if(event.keyCode === lKEY.S && + event.altKey){ + /* обрабатываем нажатия на клавиши*/ + keyBinded = true; + + console.log('+s pressed'); + console.log('+r reload key-handerl - set'); + console.log('+s clear cache key-handler - set'); + console.log('press +q to remove them'); event.preventDefault();//запрет на дальнейшее действие } - - /* если нажали +q - * убираем все обработчики - * нажатий клавиш - */ - else if(event.keyCode === lKEY.Q && - event.altKey){ - //document.removeEventListener('keydown', key_event,false); - console.log('+q pressed'); - console.log('+r reload key-handerl - removed'); - console.log('+s clear cache key-handler - removed'); - console.log('press +s to to set them'); - - /* обработчик нажатий клавиш снят*/ - CloudCommander.keyBinded = false; - - event.preventDefault();//запрет на дальнейшее действие - } - } - /* если нажали +s - * устанавливаем все обработчики - * нажатий клавиш - */ - else if(event.keyCode === lKEY.S && - event.altKey){ - /* обрабатываем нажатия на клавиши*/ - CloudCommander.keyBinded = true; - - console.log('+s pressed'); - console.log('+r reload key-handerl - set'); - console.log('+s clear cache key-handler - set'); - console.log('press +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; -}); \ No newline at end of file + /* добавляем обработчик клавишь */ + if(document.addEventListener) + document.addEventListener('keydown', key_event,false); + else document.onkeydown = key_event; + + /* клавиши назначены*/ + keyBinded = true; + }); +})(); \ No newline at end of file diff --git a/lib/client/menu.js b/lib/client/menu.js index 7f7f8001..e534026f 100644 --- a/lib/client/menu.js +++ b/lib/client/menu.js @@ -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){ diff --git a/lib/client/viewer.js b/lib/client/viewer.js index 58979aff..c984d3a8 100644 --- a/lib/client/viewer.js +++ b/lib/client/viewer.js @@ -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){