From adb90eff3323aa780f9a0879572e3cf3b9f0b969 Mon Sep 17 00:00:00 2001
From: Ananya Sen
Date: Tue, 21 Feb 2012 13:04:58 -0800
Subject: - file picker - select file on double click - check cloud
 availability before IO operations [open file, new file, Save, Save As].
 Canceling operation if cloud was unavailable, as per team's agreement.

Signed-off-by: Ananya Sen <Ananya.Sen@motorola.com>
---
 .../picker-navigator.reel/picker-navigator.js      | 26 +++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

(limited to 'js/io/ui/file-picker/picker-navigator.reel')

diff --git a/js/io/ui/file-picker/picker-navigator.reel/picker-navigator.js b/js/io/ui/file-picker/picker-navigator.reel/picker-navigator.js
index 411386f9..428e7bab 100644
--- a/js/io/ui/file-picker/picker-navigator.reel/picker-navigator.js
+++ b/js/io/ui/file-picker/picker-navigator.reel/picker-navigator.js
@@ -214,6 +214,7 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, {
 
             this.element.addEventListener("openFolder", function(evt){that.handlePickerNavOpenFolder(evt);}, false);//add icon double click event listener to reload iconList with new set of data
             this.element.addEventListener("selectedItem", function(evt){that.handlePickerNavSelectedItem(evt);}, false);//for single selection only
+            this.element.addEventListener("selectFile", function(evt){that.handlePickerNavSelectedFile(evt);}, false);//for file selection
             this.element.addEventListener("showMetadata", function(evt){that.handlePickerNavShowMetadata(evt);}, false);//show metadata on hover of icon
             this.element.addEventListener("updateMetadata", function(evt){that.handlePickerNavUpdateMetadata(evt);}, false);//show metadata on click of icon
             //this.addressGo.addEventListener("click", this, false);
@@ -669,14 +670,29 @@ var PickerNavigator = exports.PickerNavigator = Montage.create(Component, {
             }
     },
 
+    handlePickerNavSelectedFile:{
+        value: function(evt){
+            var uri = evt.fileUri;
+
+            //do selection if in file selection mode
+            if(this.pickerModel.inFileMode && (this.application.ninja.filePickerController._directoryContentCache[uri].type === "file")){
+                this.okButton.removeAttribute("disabled");
+                //put into selectedItems..currently single selection is supported
+                this.selectedItems = [uri];
+                this.currentURI = uri.substring(0, uri.lastIndexOf("/"));
+                this.handleOkButtonAction();
+            }
+        }
+    },
+
     handlePickerNavShowMetadata: {
         value: function(evt){
-                        //update matadata only if nothing is already selected
-                        if(this.currentSelectedNode == null){
-                            //console.log("handle showmetadata - true");
-                            this.metadataSection.innerHTML = evt.metadata;
-                        }
+                //update matadata only if nothing is already selected
+                if(this.currentSelectedNode == null){
+                    //console.log("handle showmetadata - true");
+                    this.metadataSection.innerHTML = evt.metadata;
                 }
+        }
     },
 
     handlePickerNavUpdateMetadata:{
-- 
cgit v1.2.3