Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 cr.define('options.contentSettings', function() { | 5 cr.define('options.contentSettings', function() { |
| 6 const List = cr.ui.List; | 6 const List = cr.ui.List; |
| 7 const ListItem = cr.ui.ListItem; | 7 const ListItem = cr.ui.ListItem; |
| 8 const ArrayDataModel = cr.ui.ArrayDataModel; | 8 const ArrayDataModel = cr.ui.ArrayDataModel; |
| 9 | 9 |
| 10 /** | 10 /** |
| (...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 274 input.select(); | 274 input.select(); |
| 275 return; | 275 return; |
| 276 } | 276 } |
| 277 | 277 |
| 278 patternLabel.classList.toggle('hidden'); | 278 patternLabel.classList.toggle('hidden'); |
| 279 settingLabel.classList.toggle('hidden'); | 279 settingLabel.classList.toggle('hidden'); |
| 280 input.classList.toggle('hidden'); | 280 input.classList.toggle('hidden'); |
| 281 select.classList.toggle('hidden'); | 281 select.classList.toggle('hidden'); |
| 282 | 282 |
| 283 var doc = this.ownerDocument; | 283 var doc = this.ownerDocument; |
| 284 | |
| 285 var area = document.querySelector('div[contentType=' + | |
|
Mike Mammarella
2010/11/16 00:00:01
You should use the doc variable declared just abov
Evan Stade
2010/11/16 01:31:25
Done.
| |
| 286 listItem.contentType + '][mode=' + listItem.mode + ']'); | |
| 287 area.enableAddAndEditButtons(!editing); | |
| 288 | |
| 284 if (editing) { | 289 if (editing) { |
| 285 this.setAttribute('editing', ''); | 290 this.setAttribute('editing', ''); |
| 286 cr.ui.limitInputWidth(input, this, 20); | 291 cr.ui.limitInputWidth(input, this, 20); |
| 287 input.focus(); | 292 input.focus(); |
| 288 input.select(); | 293 input.select(); |
| 289 } else { | 294 } else { |
| 290 this.removeAttribute('editing'); | 295 this.removeAttribute('editing'); |
| 291 | 296 |
| 292 var newPattern = input.value; | 297 var newPattern = input.value; |
| 293 | 298 |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 449 var addRow = cr.doc.createElement('button'); | 454 var addRow = cr.doc.createElement('button'); |
| 450 addRow.textContent = templateData.addExceptionRow; | 455 addRow.textContent = templateData.addExceptionRow; |
| 451 this.appendChild(addRow); | 456 this.appendChild(addRow); |
| 452 | 457 |
| 453 addRow.onclick = function(event) { | 458 addRow.onclick = function(event) { |
| 454 var emptyException = new Object; | 459 var emptyException = new Object; |
| 455 emptyException.displayPattern = ''; | 460 emptyException.displayPattern = ''; |
| 456 emptyException.setting = ''; | 461 emptyException.setting = ''; |
| 457 self.exceptionsList.addException(emptyException); | 462 self.exceptionsList.addException(emptyException); |
| 458 }; | 463 }; |
| 464 this.addRow = addRow; | |
| 459 | 465 |
| 460 var editRow = cr.doc.createElement('button'); | 466 var editRow = cr.doc.createElement('button'); |
| 461 editRow.textContent = templateData.editExceptionRow; | 467 editRow.textContent = templateData.editExceptionRow; |
| 462 this.appendChild(editRow); | 468 this.appendChild(editRow); |
| 463 this.editRow = editRow; | 469 this.editRow = editRow; |
| 464 | 470 |
| 465 editRow.onclick = function(event) { | 471 editRow.onclick = function(event) { |
| 466 self.exceptionsList.editSelectedRow(); | 472 self.exceptionsList.editSelectedRow(); |
| 467 }; | 473 }; |
| 468 } | 474 } |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 502 set mode(mode) { | 508 set mode(mode) { |
| 503 return this.setAttribute('mode', mode); | 509 return this.setAttribute('mode', mode); |
| 504 }, | 510 }, |
| 505 | 511 |
| 506 /** | 512 /** |
| 507 * Update the enabled/disabled state of the editing buttons based on which | 513 * Update the enabled/disabled state of the editing buttons based on which |
| 508 * rows are selected. | 514 * rows are selected. |
| 509 */ | 515 */ |
| 510 updateButtonSensitivity: function() { | 516 updateButtonSensitivity: function() { |
| 511 var selectionSize = this.exceptionsList.selectedItems.length; | 517 var selectionSize = this.exceptionsList.selectedItems.length; |
| 512 if (this.editRow) | 518 if (this.addRow) |
| 513 this.editRow.disabled = selectionSize != 1; | 519 this.addRow.disabled = this.addAndEditButtonsDisabled; |
| 520 if (this.editRow) { | |
| 521 this.editRow.disabled = selectionSize != 1 || | |
| 522 this.addAndEditButtonsDisabled; | |
| 523 } | |
| 514 this.removeRow.disabled = selectionSize == 0; | 524 this.removeRow.disabled = selectionSize == 0; |
| 515 }, | 525 }, |
| 516 | 526 |
| 517 /** | 527 /** |
| 528 * Manually toggle the enabled/disabled state for the add and edit buttons. | |
| 529 * They'll be disabled while another row is being edited. | |
| 530 * @param {boolean} | |
| 531 */ | |
| 532 enableAddAndEditButtons: function(enable) { | |
| 533 this.addAndEditButtonsDisabled = !enable; | |
| 534 this.updateButtonSensitivity(); | |
| 535 }, | |
| 536 | |
| 537 /** | |
| 518 * Callback from the selection model. | 538 * Callback from the selection model. |
| 519 * @param {!cr.Event} ce Event with change info. | 539 * @param {!cr.Event} ce Event with change info. |
| 520 * @private | 540 * @private |
| 521 */ | 541 */ |
| 522 handleOnSelectionChange_: function(ce) { | 542 handleOnSelectionChange_: function(ce) { |
| 523 this.updateButtonSensitivity(); | 543 this.updateButtonSensitivity(); |
| 524 }, | 544 }, |
| 525 }; | 545 }; |
| 526 | 546 |
| 527 return { | 547 return { |
| 528 ExceptionsListItem: ExceptionsListItem, | 548 ExceptionsListItem: ExceptionsListItem, |
| 529 ExceptionsList: ExceptionsList, | 549 ExceptionsList: ExceptionsList, |
| 530 ExceptionsArea: ExceptionsArea | 550 ExceptionsArea: ExceptionsArea |
| 531 }; | 551 }; |
| 532 }); | 552 }); |
| OLD | NEW |