Chromium Code Reviews| Index: chrome/browser/resources/settings/on_startup_page/startup_urls_page.js |
| diff --git a/chrome/browser/resources/settings/on_startup_page/startup_urls_page.js b/chrome/browser/resources/settings/on_startup_page/startup_urls_page.js |
| index c8ba1c61264f02f3122c94ac2c8d9cff95daed12..d4c9d73eec527aa9e337dd113a10ee4496b79b03 100644 |
| --- a/chrome/browser/resources/settings/on_startup_page/startup_urls_page.js |
| +++ b/chrome/browser/resources/settings/on_startup_page/startup_urls_page.js |
| @@ -42,10 +42,16 @@ Polymer({ |
| /** @private {string} */ |
| newUrl_: { |
| + observer: 'newUrlChanged_', |
| type: String, |
| value: '', |
| }, |
| + isNewUrlValid_: { |
| + type: Boolean, |
| + value: false, |
| + }, |
| + |
| /** |
| * Pages to load upon browser startup. |
| * @private {!Array<!StartupPageInfo>} |
| @@ -94,16 +100,18 @@ Polymer({ |
| }, |
| /** |
| - * @return {boolean} Whether tapping the Add button should be allowed. |
| + * @param {string} newUrl |
| * @private |
| */ |
| - isAddEnabled_: function() { |
| - return this.browserProxy_.canAddPage(this.newUrl_); |
| + newUrlChanged_: function(newUrl) { |
|
dschuyler
2016/03/31 20:29:25
There looks to be a small race condition here.
I t
Dan Beam
2016/03/31 22:06:55
Done.
|
| + this.browserProxy_.validateStartupPage(newUrl).then(function(isValid) { |
| + this.isNewUrlValid_ = isValid; |
| + }.bind(this)); |
| }, |
| /** @private */ |
| onAddTap_: function() { |
| - assert(this.isAddEnabled_()); |
| + assert(this.isNewUrlValid_); |
| this.browserProxy_.addStartupPage(this.newUrl_); |
| this.$.addUrlDialog.close(); |
| }, |