| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 29 matching lines...) Expand all Loading... |
| 40 this._fileSystemPath = fileSystemPath; | 40 this._fileSystemPath = fileSystemPath; |
| 41 | 41 |
| 42 var header = this.element.createChild("div", "header"); | 42 var header = this.element.createChild("div", "header"); |
| 43 var headerText = header.createChild("span"); | 43 var headerText = header.createChild("span"); |
| 44 headerText.textContent = WebInspector.UIString("Edit file system"); | 44 headerText.textContent = WebInspector.UIString("Edit file system"); |
| 45 | 45 |
| 46 var contents = this.element.createChild("div", "contents"); | 46 var contents = this.element.createChild("div", "contents"); |
| 47 | 47 |
| 48 WebInspector.fileSystemMapping.addEventListener(WebInspector.FileSystemMappi
ng.Events.FileMappingAdded, this._fileMappingAdded, this); | 48 WebInspector.fileSystemMapping.addEventListener(WebInspector.FileSystemMappi
ng.Events.FileMappingAdded, this._fileMappingAdded, this); |
| 49 WebInspector.fileSystemMapping.addEventListener(WebInspector.FileSystemMappi
ng.Events.FileMappingRemoved, this._fileMappingRemoved, this); | 49 WebInspector.fileSystemMapping.addEventListener(WebInspector.FileSystemMappi
ng.Events.FileMappingRemoved, this._fileMappingRemoved, this); |
| 50 WebInspector.isolatedFileSystemManager.excludedFolderManager().addEventListe
ner(WebInspector.ExcludedFolderManager.Events.ExcludedFolderAdded, this._exclude
dFolderAdded, this); | 50 WebInspector.isolatedFileSystemManager.addEventListener(WebInspector.Isolate
dFileSystemManager.Events.ExcludedFolderAdded, this._excludedFolderAdded, this); |
| 51 WebInspector.isolatedFileSystemManager.excludedFolderManager().addEventListe
ner(WebInspector.ExcludedFolderManager.Events.ExcludedFolderRemoved, this._exclu
dedFolderRemoved, this); | 51 WebInspector.isolatedFileSystemManager.addEventListener(WebInspector.Isolate
dFileSystemManager.Events.ExcludedFolderRemoved, this._excludedFolderRemoved, th
is); |
| 52 | 52 |
| 53 var blockHeader = contents.createChild("div", "block-header"); | 53 var blockHeader = contents.createChild("div", "block-header"); |
| 54 blockHeader.textContent = WebInspector.UIString("Mappings"); | 54 blockHeader.textContent = WebInspector.UIString("Mappings"); |
| 55 this._fileMappingsSection = contents.createChild("div", "section"); | 55 this._fileMappingsSection = contents.createChild("div", "section"); |
| 56 this._fileMappingsListContainer = this._fileMappingsSection.createChild("div
", "settings-list-container"); | 56 this._fileMappingsListContainer = this._fileMappingsSection.createChild("div
", "settings-list-container"); |
| 57 var entries = WebInspector.fileSystemMapping.mappingEntries(this._fileSystem
Path); | 57 var entries = WebInspector.fileSystemMapping.mappingEntries(this._fileSystem
Path); |
| 58 | 58 |
| 59 var urlColumn = { id: "url", placeholder: WebInspector.UIString("URL prefix"
) }; | 59 var urlColumn = { id: "url", placeholder: WebInspector.UIString("URL prefix"
) }; |
| 60 var pathColumn = { id: "path", placeholder: WebInspector.UIString("Folder pa
th") }; | 60 var pathColumn = { id: "path", placeholder: WebInspector.UIString("Folder pa
th") }; |
| 61 | 61 |
| 62 this._fileMappingsList = new WebInspector.EditableSettingsList([urlColumn, p
athColumn], this._fileMappingValuesProvider.bind(this), this._fileMappingValidat
e.bind(this), this._fileMappingEdit.bind(this)); | 62 this._fileMappingsList = new WebInspector.EditableSettingsList([urlColumn, p
athColumn], this._fileMappingValuesProvider.bind(this), this._fileMappingValidat
e.bind(this), this._fileMappingEdit.bind(this)); |
| 63 this._fileMappingsList.addEventListener(WebInspector.SettingsList.Events.Rem
oved, this._fileMappingRemovedfromList.bind(this)); | 63 this._fileMappingsList.addEventListener(WebInspector.SettingsList.Events.Rem
oved, this._fileMappingRemovedfromList.bind(this)); |
| 64 | 64 |
| 65 this._fileMappingsList.element.classList.add("file-mappings-list"); | 65 this._fileMappingsList.element.classList.add("file-mappings-list"); |
| 66 this._fileMappingsListContainer.appendChild(this._fileMappingsList.element); | 66 this._fileMappingsListContainer.appendChild(this._fileMappingsList.element); |
| 67 | 67 |
| 68 this._entries = {}; | 68 this._entries = {}; |
| 69 for (var i = 0; i < entries.length; ++i) | 69 for (var i = 0; i < entries.length; ++i) |
| 70 this._addMappingRow(entries[i]); | 70 this._addMappingRow(entries[i]); |
| 71 | 71 |
| 72 blockHeader = contents.createChild("div", "block-header"); | 72 blockHeader = contents.createChild("div", "block-header"); |
| 73 blockHeader.textContent = WebInspector.UIString("Excluded folders"); | 73 blockHeader.textContent = WebInspector.UIString("Excluded folders"); |
| 74 this._excludedFolderListSection = contents.createChild("div", "section exclu
ded-folders-section"); | 74 this._excludedFolderListSection = contents.createChild("div", "section exclu
ded-folders-section"); |
| 75 this._excludedFolderListContainer = this._excludedFolderListSection.createCh
ild("div", "settings-list-container"); | 75 this._excludedFolderListContainer = this._excludedFolderListSection.createCh
ild("div", "settings-list-container"); |
| 76 var excludedFolderEntries = WebInspector.isolatedFileSystemManager.excludedF
olderManager().excludedFolders(fileSystemPath); | |
| 77 | 76 |
| 78 this._excludedFolderList = new WebInspector.EditableSettingsList([pathColumn
], this._excludedFolderValueProvider.bind(this), this._excludedFolderValidate.bi
nd(this), this._excludedFolderEdit.bind(this)); | 77 this._excludedFolderList = new WebInspector.EditableSettingsList([pathColumn
], this._excludedFolderValueProvider.bind(this), this._excludedFolderValidate.bi
nd(this), this._excludedFolderEdit.bind(this)); |
| 79 this._excludedFolderList.addEventListener(WebInspector.SettingsList.Events.R
emoved, this._excludedFolderRemovedfromList.bind(this)); | 78 this._excludedFolderList.addEventListener(WebInspector.SettingsList.Events.R
emoved, this._excludedFolderRemovedfromList.bind(this)); |
| 80 this._excludedFolderList.element.classList.add("excluded-folders-list"); | 79 this._excludedFolderList.element.classList.add("excluded-folders-list"); |
| 81 this._excludedFolderListContainer.appendChild(this._excludedFolderList.eleme
nt); | 80 this._excludedFolderListContainer.appendChild(this._excludedFolderList.eleme
nt); |
| 82 this._excludedFolderEntries = new Map(); | 81 /** @type {!Set<string>} */ |
| 83 for (var i = 0; i < excludedFolderEntries.length; ++i) | 82 this._excludedFolderEntries = new Set(); |
| 84 this._addExcludedFolderRow(excludedFolderEntries[i]); | 83 var excludedFolders = WebInspector.isolatedFileSystemManager.fileSystem(file
SystemPath).excludedFolders(); |
| 84 for (var i = 0; i < excludedFolders.length; ++i) |
| 85 this._addExcludedFolderRow(excludedFolders[i]); |
| 85 | 86 |
| 86 this.element.tabIndex = 0; | 87 this.element.tabIndex = 0; |
| 87 this._hasMappingChanges = false; | 88 this._hasMappingChanges = false; |
| 88 } | 89 } |
| 89 | 90 |
| 90 WebInspector.EditFileSystemDialog.show = function(fileSystemPath) | 91 WebInspector.EditFileSystemDialog.show = function(fileSystemPath) |
| 91 { | 92 { |
| 92 var dialog = new WebInspector.EditFileSystemDialog(fileSystemPath); | 93 var dialog = new WebInspector.EditFileSystemDialog(fileSystemPath); |
| 93 WebInspector.Dialog.show(dialog, false, true); | 94 WebInspector.Dialog.show(dialog, false, true); |
| 94 var glassPane = dialog.element.ownerDocument.getElementById("glass-pane"); | 95 var glassPane = dialog.element.ownerDocument.getElementById("glass-pane"); |
| (...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 267 var fileSystemPath = entry.fileSystemPath; | 268 var fileSystemPath = entry.fileSystemPath; |
| 268 var urlPrefix = entry.urlPrefix; | 269 var urlPrefix = entry.urlPrefix; |
| 269 if (!this._fileSystemPath || this._fileSystemPath !== fileSystemPath) | 270 if (!this._fileSystemPath || this._fileSystemPath !== fileSystemPath) |
| 270 return; | 271 return; |
| 271 | 272 |
| 272 this._entries[urlPrefix] = entry; | 273 this._entries[urlPrefix] = entry; |
| 273 this._fileMappingsList.addItem(urlPrefix, null); | 274 this._fileMappingsList.addItem(urlPrefix, null); |
| 274 this._resize(); | 275 this._resize(); |
| 275 }, | 276 }, |
| 276 | 277 |
| 278 /** |
| 279 * @param {!WebInspector.Event} event |
| 280 */ |
| 277 _excludedFolderAdded: function(event) | 281 _excludedFolderAdded: function(event) |
| 278 { | 282 { |
| 279 var entry = /** @type {!WebInspector.ExcludedFolderManager.Entry} */ (ev
ent.data); | 283 var path = /** @type {string} */ (event.data); |
| 280 this._addExcludedFolderRow(entry); | 284 this._addExcludedFolderRow(path); |
| 281 }, | |
| 282 | |
| 283 _excludedFolderRemoved: function(event) | |
| 284 { | |
| 285 var entry = /** @type {!WebInspector.ExcludedFolderManager.Entry} */ (ev
ent.data); | |
| 286 var fileSystemPath = entry.fileSystemPath; | |
| 287 if (!fileSystemPath || this._fileSystemPath !== fileSystemPath) | |
| 288 return; | |
| 289 delete this._excludedFolderEntries[entry.path]; | |
| 290 if (this._excludedFolderList.itemForId(entry.path)) | |
| 291 this._excludedFolderList.removeItem(entry.path); | |
| 292 }, | 285 }, |
| 293 | 286 |
| 294 /** | 287 /** |
| 288 * @param {!WebInspector.Event} event |
| 289 */ |
| 290 _excludedFolderRemoved: function(event) |
| 291 { |
| 292 var path = /** @type {string} */ (event.data); |
| 293 delete this._excludedFolderEntries[path]; |
| 294 if (this._excludedFolderList.itemForId(path)) |
| 295 this._excludedFolderList.removeItem(path); |
| 296 }, |
| 297 |
| 298 /** |
| 295 * @param {string} itemId | 299 * @param {string} itemId |
| 296 * @param {string} columnId | 300 * @param {string} columnId |
| 297 * @return {string} | 301 * @return {string} |
| 298 */ | 302 */ |
| 299 _excludedFolderValueProvider: function(itemId, columnId) | 303 _excludedFolderValueProvider: function(itemId, columnId) |
| 300 { | 304 { |
| 301 return itemId; | 305 return itemId; |
| 302 }, | 306 }, |
| 303 | 307 |
| 304 /** | 308 /** |
| (...skipping 17 matching lines...) Expand all Loading... |
| 322 { | 326 { |
| 323 return !!path && (path === allowedPath || !this._excludedFolderEntries.h
as(path)); | 327 return !!path && (path === allowedPath || !this._excludedFolderEntries.h
as(path)); |
| 324 }, | 328 }, |
| 325 | 329 |
| 326 /** | 330 /** |
| 327 * @param {?string} itemId | 331 * @param {?string} itemId |
| 328 * @param {!Object} data | 332 * @param {!Object} data |
| 329 */ | 333 */ |
| 330 _excludedFolderEdit: function(itemId, data) | 334 _excludedFolderEdit: function(itemId, data) |
| 331 { | 335 { |
| 332 var fileSystemPath = this._fileSystemPath; | |
| 333 if (itemId) | 336 if (itemId) |
| 334 WebInspector.isolatedFileSystemManager.excludedFolderManager().remov
eExcludedFolder(fileSystemPath, itemId); | 337 WebInspector.isolatedFileSystemManager.fileSystem(this._fileSystemPa
th).removeExcludedFolder(itemId); |
| 335 var excludedFolderPath = data["path"]; | 338 var excludedFolderPath = data["path"]; |
| 336 WebInspector.isolatedFileSystemManager.excludedFolderManager().addExclud
edFolder(fileSystemPath, excludedFolderPath); | 339 WebInspector.isolatedFileSystemManager.fileSystem(this._fileSystemPath).
addExcludedFolder(excludedFolderPath); |
| 337 }, | 340 }, |
| 338 | 341 |
| 339 /** | 342 /** |
| 340 * @param {!WebInspector.Event} event | 343 * @param {!WebInspector.Event} event |
| 341 */ | 344 */ |
| 342 _excludedFolderRemovedfromList: function(event) | 345 _excludedFolderRemovedfromList: function(event) |
| 343 { | 346 { |
| 344 var itemId = /** @type{?string} */ (event.data); | 347 var itemId = /** @type{?string} */ (event.data); |
| 345 if (!itemId) | 348 if (!itemId) |
| 346 return; | 349 return; |
| 347 WebInspector.isolatedFileSystemManager.excludedFolderManager().removeExc
ludedFolder(this._fileSystemPath, itemId); | 350 WebInspector.isolatedFileSystemManager.fileSystem(this._fileSystemPath).
removeExcludedFolder(itemId); |
| 348 }, | 351 }, |
| 349 | 352 |
| 350 /** | 353 /** |
| 351 * @param {!WebInspector.ExcludedFolderManager.Entry} entry | 354 * @param {string} path |
| 352 */ | 355 */ |
| 353 _addExcludedFolderRow: function(entry) | 356 _addExcludedFolderRow: function(path) |
| 354 { | 357 { |
| 355 var fileSystemPath = entry.fileSystemPath; | 358 this._excludedFolderEntries.add(path); |
| 356 if (!fileSystemPath || this._fileSystemPath !== fileSystemPath) | |
| 357 return; | |
| 358 var path = entry.path; | |
| 359 this._excludedFolderEntries.set(path, entry); | |
| 360 this._excludedFolderList.addItem(path, null); | 359 this._excludedFolderList.addItem(path, null); |
| 361 this._resize(); | 360 this._resize(); |
| 362 }, | 361 }, |
| 363 | 362 |
| 364 /** | 363 /** |
| 365 * @param {string} value | 364 * @param {string} value |
| 366 * @param {?string} allowedPrefix | 365 * @param {?string} allowedPrefix |
| 367 * @return {boolean} | 366 * @return {boolean} |
| 368 */ | 367 */ |
| 369 _checkURLPrefix: function(value, allowedPrefix) | 368 _checkURLPrefix: function(value, allowedPrefix) |
| (...skipping 26 matching lines...) Expand all Loading... |
| 396 { | 395 { |
| 397 WebInspector.setCurrentFocusElement(this.element); | 396 WebInspector.setCurrentFocusElement(this.element); |
| 398 }, | 397 }, |
| 399 | 398 |
| 400 onEnter: function() | 399 onEnter: function() |
| 401 { | 400 { |
| 402 }, | 401 }, |
| 403 | 402 |
| 404 __proto__: WebInspector.DialogDelegate.prototype | 403 __proto__: WebInspector.DialogDelegate.prototype |
| 405 } | 404 } |
| OLD | NEW |