Index: chrome/browser/resources/file_manager/js/file_manager.js |
diff --git a/chrome/browser/resources/file_manager/js/file_manager.js b/chrome/browser/resources/file_manager/js/file_manager.js |
index 7db589217ea3f99f483f69cdec90d20bbdf1942c..915ed2c796551e4f644b5638a3ead61d80e450ee 100644 |
--- a/chrome/browser/resources/file_manager/js/file_manager.js |
+++ b/chrome/browser/resources/file_manager/js/file_manager.js |
@@ -62,6 +62,7 @@ function unload() { |
*/ |
var DialogType = { |
SELECT_FOLDER: 'folder', |
+ SELECT_UPLOAD_FOLDER: 'upload-folder', |
SELECT_SAVEAS_FILE: 'saveas-file', |
SELECT_OPEN_FILE: 'open-file', |
SELECT_OPEN_MULTI_FILE: 'open-multi-file', |
@@ -118,6 +119,7 @@ TextMeasure.prototype.getWidth = function(text) { |
*/ |
DialogType.isModal = function(type) { |
return type == DialogType.SELECT_FOLDER || |
+ type == DialogType.SELECT_UPLOAD_FOLDER || |
type == DialogType.SELECT_SAVEAS_FILE || |
type == DialogType.SELECT_OPEN_FILE || |
type == DialogType.SELECT_OPEN_MULTI_FILE; |
@@ -848,6 +850,7 @@ var BOTTOM_MARGIN_FOR_PREVIEW_PANEL_PX = 52; |
this.fileTypes_ = this.params_.typeList || []; |
metrics.recordEnum('Create', this.dialogType, |
[DialogType.SELECT_FOLDER, |
+ DialogType.SELECT_UPLOAD_FOLDER, |
DialogType.SELECT_SAVEAS_FILE, |
DialogType.SELECT_OPEN_FILE, |
DialogType.SELECT_OPEN_MULTI_FILE, |
@@ -1139,6 +1142,7 @@ var BOTTOM_MARGIN_FOR_PREVIEW_PANEL_PX = 52; |
var singleSelection = |
this.dialogType == DialogType.SELECT_OPEN_FILE || |
this.dialogType == DialogType.SELECT_FOLDER || |
+ this.dialogType == DialogType.SELECT_UPLOAD_FOLDER || |
this.dialogType == DialogType.SELECT_SAVEAS_FILE; |
var showSpecialSearchRoots = |
@@ -1791,6 +1795,11 @@ var BOTTOM_MARGIN_FOR_PREVIEW_PANEL_PX = 52; |
defaultTitle = str('SELECT_FOLDER_TITLE'); |
break; |
+ case DialogType.SELECT_UPLOAD_FOLDER: |
+ defaultTitle = str('SELECT_UPLOAD_FOLDER_TITLE'); |
+ okLabel = str('UPLOAD_LABEL'); |
+ break; |
+ |
case DialogType.SELECT_OPEN_FILE: |
defaultTitle = str('SELECT_OPEN_FILE_TITLE'); |
break; |
@@ -3016,7 +3025,8 @@ var BOTTOM_MARGIN_FOR_PREVIEW_PANEL_PX = 52; |
var selection = this.getSelection(); |
if (selection.totalCount == 1 && |
selection.entries[0].isDirectory && |
- this.dialogType != DialogType.SELECT_FOLDER) { |
+ this.dialogType != DialogType.SELECT_FOLDER && |
+ this.dialogType != DialogType.SELECT_UPLOAD_FOLDER) { |
event.preventDefault(); |
this.onDirectoryAction(selection.entries[0]); |
} else if (this.dispatchSelectionAction_()) { |
@@ -3335,7 +3345,8 @@ var BOTTOM_MARGIN_FOR_PREVIEW_PANEL_PX = 52; |
var files = []; |
var selectedIndexes = this.currentList_.selectionModel.selectedIndexes; |
- if (this.dialogType == DialogType.SELECT_FOLDER && |
+ if ((this.dialogType == DialogType.SELECT_FOLDER || |
+ this.dialogType == DialogType.SELECT_UPLOAD_FOLDER) && |
selectedIndexes.length == 0) { |
var url = this.getCurrentDirectoryURL(); |
var singleSelection = { |
@@ -3380,7 +3391,8 @@ var BOTTOM_MARGIN_FOR_PREVIEW_PANEL_PX = 52; |
var selectedEntry = dm.item(selectedIndexes[0]); |
- if (this.dialogType == DialogType.SELECT_FOLDER) { |
+ if (this.dialogType == DialogType.SELECT_FOLDER || |
+ this.dialogType == DialogType.SELECT_UPLOAD_FOLDER) { |
if (!selectedEntry.isDirectory) |
throw new Error('Selected entry is not a folder!'); |
} else if (this.dialogType == DialogType.SELECT_OPEN_FILE) { |