Chromium Code Reviews| Index: chrome/browser/resources/settings/printing_page/cups_add_printer_dialog.js |
| diff --git a/chrome/browser/resources/settings/printing_page/cups_add_printer_dialog.js b/chrome/browser/resources/settings/printing_page/cups_add_printer_dialog.js |
| index d97e93bd526bea01795afe316b1875f942fcf82c..f85be0d9e7132bdda5aca143d4c8a142db457054 100644 |
| --- a/chrome/browser/resources/settings/printing_page/cups_add_printer_dialog.js |
| +++ b/chrome/browser/resources/settings/printing_page/cups_add_printer_dialog.js |
| @@ -45,7 +45,7 @@ Polymer({ |
| }, |
| /** @type {!CupsPrinterInfo} */ |
| - selectedPrinter: { |
| + newPrinter: { |
| type: Object, |
| notify: true, |
| }, |
| @@ -73,12 +73,11 @@ Polymer({ |
| * @private |
| */ |
| onPrinterDiscovered_: function(printers) { |
| - this.discovering_ = true; |
| - if (!this.discoveredPrinters) { |
| - this.discoveredPrinters = printers; |
| - } else { |
| - for (var i = 0; i < printers.length; i++) |
| - this.push('discoveredPrinters', printers[i]); |
| + this.discoveredPrinters = printers; |
| + if (!this.discovering_) { |
| + // This update happened after we already finished the initial |
|
xdai1
2017/03/31 22:08:37
nit: comment indent off: 'scan' should be in the p
Carlson
2017/03/31 22:58:41
Done.
|
| + // scan, so re-run the discovery done logic. |
| + this.onPrinterDiscoveryDone_(); |
| } |
| }, |
| @@ -115,6 +114,13 @@ Polymer({ |
| this.$$('add-printer-dialog').close(); |
| this.fire('open-configuring-printer-dialog'); |
| }, |
| + |
| + /** @private */ |
| + switchToManufacturerDialog_: function() { |
| + this.stopDiscoveringPrinters_(); |
| + this.$$('add-printer-dialog').close(); |
| + this.fire('open-manufacturer-model-dialog'); |
| + }, |
| }); |
| Polymer({ |
| @@ -317,11 +323,6 @@ Polymer({ |
| properties: { |
| /** @type {!CupsPrinterInfo} */ |
| - selectedPrinter: { |
|
xdai1
2017/03/31 22:08:38
Could you try to see the following scenario:
Open
Carlson
2017/03/31 22:58:41
Oh, you're good.
Yes, indeed, this is what happen
xdai1
2017/03/31 23:33:52
I would prefer to restore the 'selectedPrinter' ch
|
| - type: Object, |
| - }, |
| - |
| - /** @type {!CupsPrinterInfo} */ |
| newPrinter: { |
| type: Object, |
| }, |
| @@ -369,8 +370,7 @@ Polymer({ |
| /** Opens the Add printer discovery dialog. */ |
| open: function() { |
| this.resetData_(); |
| - this.switchDialog_( |
| - '', AddPrinterDialogs.MANUALLY, 'showManuallyAddDialog_'); |
| + this.switchDialog_('', AddPrinterDialogs.DISCOVERY, 'showDiscoveryDialog_'); |
| }, |
| /** |
| @@ -378,8 +378,6 @@ Polymer({ |
| * @private |
| */ |
| resetData_: function() { |
| - if (this.selectedPrinter) |
| - this.selectedPrinter = this.getEmptyPrinter_(); |
| if (this.newPrinter) |
| this.newPrinter = this.getEmptyPrinter_(); |
| this.setupFailed = false; |
| @@ -424,14 +422,12 @@ Polymer({ |
| if (this.previousDialog_ == AddPrinterDialogs.DISCOVERY) { |
| this.configuringDialogTitle = |
| loadTimeData.getString('addPrintersNearbyTitle'); |
| - settings.CupsPrintersBrowserProxyImpl.getInstance().addCupsPrinter( |
| - this.selectedPrinter); |
| } else if (this.previousDialog_ == AddPrinterDialogs.MANUFACTURER) { |
| this.configuringDialogTitle = |
| loadTimeData.getString('addPrintersManuallyTitle'); |
| - settings.CupsPrintersBrowserProxyImpl.getInstance().addCupsPrinter( |
| - this.newPrinter); |
| } |
| + settings.CupsPrintersBrowserProxyImpl.getInstance().addCupsPrinter( |
| + this.newPrinter); |
| }, |
| /** @private */ |
| @@ -477,9 +473,8 @@ Polymer({ |
| * @private |
| */ |
| getConfiguringPrinterName_: function() { |
| - if (this.previousDialog_ == AddPrinterDialogs.DISCOVERY) |
| - return this.selectedPrinter.printerName; |
| - if (this.previousDialog_ == AddPrinterDialogs.MANUALLY || |
| + if (this.previousDialog_ == AddPrinterDialogs.DISCOVERY || |
| + this.previousDialog_ == AddPrinterDialogs.MANUALLY || |
| this.previousDialog_ == AddPrinterDialogs.MANUFACTURER) { |
| return this.newPrinter.printerName; |
| } |