From 143bcd65b6a2b7ef9615611f84137b30b480e28f Mon Sep 17 00:00:00 2001 From: coderaiser Date: Thu, 3 Oct 2013 11:27:26 +0000 Subject: [PATCH] feature(menu) add "(Un)Select All" --- README.md | 1 + lib/client/dom.js | 14 ++++++++++++++ lib/client/key.js | 10 ++-------- lib/client/menu.js | 1 + 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 5c0689e6..e1d5172a 100644 --- a/README.md +++ b/README.md @@ -100,6 +100,7 @@ Right mouse click button shows context menu with items: - Rename - Delete - Zip file +- (Un)Select All - Upload to (Dropbox, Github, GDrive) - Download - New (File, Dir, from cloud) diff --git a/lib/client/dom.js b/lib/client/dom.js index 452bc40d..f476fdfa 100644 --- a/lib/client/dom.js +++ b/lib/client/dom.js @@ -1478,6 +1478,20 @@ var CloudCmd, Util, DOM, CloudFunc; return this; }; + this.toggleAllSelectedFiles = function(pCurrent) { + var i, n, + isStr = Util.isString(pCurrent), + lCurrent = !isStr && pCurrent || Cmd.getCurrentFile(), + lParent = lCurrent.parentElement, + lNodes = lParent.childNodes; + + /* not path and fm_header */ + for (i = 2, n = lNodes.length; i < n; i++) + DOM.toggleSelectedFile( lNodes[i] ); + + return Cmd; + }; + /** * setting history wrapper diff --git a/lib/client/key.js b/lib/client/key.js index d813883f..ef6ef032 100644 --- a/lib/client/key.js +++ b/lib/client/key.js @@ -269,14 +269,8 @@ var CloudCmd, Util, DOM; case Key.A: if (pEvent.ctrlKey) { - var lParent = lCurrent.parentElement, - lNodes = lParent.childNodes; - - /* not path and fm_header */ - for (i = 2, n = lNodes.length; i < n; i++) - DOM.toggleSelectedFile( lNodes[i] ); - - DOM.preventDefault(pEvent); + DOM .toggleAllSelectedFiles(lCurrent) + .preventDefault(pEvent); } break; diff --git a/lib/client/menu.js b/lib/client/menu.js index 24a04b7c..d35f51bb 100644 --- a/lib/client/menu.js +++ b/lib/client/menu.js @@ -180,6 +180,7 @@ var CloudCmd, Util, DOM, CloudFunc, $; setTimeout( Util.retExec(DOM.renameCurrent), 100); }, 'Delete' : Util.retExec(DOM.promptDeleteSelected), + '(Un)Select All': DOM.toggleAllSelectedFiles, 'Zip file' : DOM.zipFile };