Index: chrome/browser/resources/print_preview/settings/advanced_options_settings.js |
diff --git a/chrome/browser/resources/print_preview/settings/advanced_options_settings.js b/chrome/browser/resources/print_preview/settings/advanced_options_settings.js |
index f4bf71bff73dc9c898f979aacc32008ef79e1851..e1284a749008675c20693907fa04844d0a27577e 100644 |
--- a/chrome/browser/resources/print_preview/settings/advanced_options_settings.js |
+++ b/chrome/browser/resources/print_preview/settings/advanced_options_settings.js |
@@ -7,15 +7,23 @@ cr.define('print_preview', function() { |
/** |
* Print options section to control printer advanced options. |
+ * @param {!print_preview.ticket_item.VendorItems} ticketItem Ticket item to |
+ * check settings availability. |
* @param {!print_preview.DestinationStore} destinationStore Used to determine |
* the selected destination. |
* @constructor |
* @extends {print_preview.SettingsSection} |
*/ |
- function AdvancedOptionsSettings(destinationStore) { |
+ function AdvancedOptionsSettings(ticketItem, destinationStore) { |
print_preview.SettingsSection.call(this); |
/** |
+ * Ticket item to check settings availability. |
+ * @private {!print_preview.ticket_items.VendorItems} |
+ */ |
+ this.ticketItem_ = ticketItem; |
+ |
+ /** |
* Used to determine the selected destination. |
* @private {!print_preview.DestinationStore} |
*/ |
@@ -35,13 +43,7 @@ cr.define('print_preview', function() { |
/** @override */ |
isAvailable: function() { |
- var destination = this.destinationStore_.selectedDestination; |
- var vendorCapabilities = |
- destination && |
- destination.capabilities && |
- destination.capabilities.printer && |
- destination.capabilities.printer.vendor_capability; |
- return !!vendorCapabilities; |
+ return this.ticketItem_.isCapabilityAvailable(); |
}, |
/** @override */ |