From b2c7346a446584e49c40983ac66286fece0dcb29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Gomes?= Date: Wed, 28 Oct 2015 14:48:09 +0000 Subject: [PATCH] Don't call private component methods from the component handler. This creates a public alias for every private downgrade method, and switches the component handler to using the aliases instead. --- src/button/button.js | 11 +++++++++++ src/checkbox/checkbox.js | 11 +++++++++++ src/icon-toggle/icon-toggle.js | 11 +++++++++++ src/mdlComponentHandler.js | 2 +- src/menu/menu.js | 11 +++++++++++ src/progress/progress.js | 11 +++++++++++ src/ripple/ripple.js | 11 +++++++++++ src/slider/slider.js | 11 +++++++++++ src/switch/switch.js | 11 +++++++++++ src/textfield/textfield.js | 11 +++++++++++ src/tooltip/tooltip.js | 11 +++++++++++ 11 files changed, 111 insertions(+), 1 deletion(-) diff --git a/src/button/button.js b/src/button/button.js index 4f8569a5..73084304 100644 --- a/src/button/button.js +++ b/src/button/button.js @@ -125,6 +125,17 @@ this.element_.removeEventListener('mouseleave', this.boundButtonBlurHandler); }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialButton.prototype.mdlDowngrade = + MaterialButton.prototype.mdlDowngrade_; + + MaterialButton.prototype['mdlDowngrade'] = + MaterialButton.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/checkbox/checkbox.js b/src/checkbox/checkbox.js index c6d3b576..c71b2a8b 100644 --- a/src/checkbox/checkbox.js +++ b/src/checkbox/checkbox.js @@ -273,6 +273,17 @@ this.element_.removeEventListener('mouseup', this.boundElementMouseUp); }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialCheckbox.prototype.mdlDowngrade = + MaterialCheckbox.prototype.mdlDowngrade_; + + MaterialCheckbox.prototype['mdlDowngrade'] = + MaterialCheckbox.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/icon-toggle/icon-toggle.js b/src/icon-toggle/icon-toggle.js index 1f91be22..f0bd5780 100644 --- a/src/icon-toggle/icon-toggle.js +++ b/src/icon-toggle/icon-toggle.js @@ -259,6 +259,17 @@ this.element_.removeEventListener('mouseup', this.boundElementOnMouseUp); }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialIconToggle.prototype.mdlDowngrade = + MaterialIconToggle.prototype.mdlDowngrade_; + + MaterialIconToggle.prototype['mdlDowngrade'] = + MaterialIconToggle.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/mdlComponentHandler.js b/src/mdlComponentHandler.js index 0e02afa7..00e4e82e 100644 --- a/src/mdlComponentHandler.js +++ b/src/mdlComponentHandler.js @@ -91,7 +91,7 @@ componentHandler = (function() { /** @type {!Array} */ var createdComponents_ = []; - var downgradeMethod_ = 'mdlDowngrade_'; + var downgradeMethod_ = 'mdlDowngrade'; var componentConfigProperty_ = 'mdlComponentConfigInternal_'; /** diff --git a/src/menu/menu.js b/src/menu/menu.js index da16a043..052242d6 100644 --- a/src/menu/menu.js +++ b/src/menu/menu.js @@ -480,6 +480,17 @@ } }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialMenu.prototype.mdlDowngrade = + MaterialMenu.prototype.mdlDowngrade_; + + MaterialMenu.prototype['mdlDowngrade'] = + MaterialMenu.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/progress/progress.js b/src/progress/progress.js index 0e91f109..5e2d929b 100644 --- a/src/progress/progress.js +++ b/src/progress/progress.js @@ -123,6 +123,17 @@ } }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialProgress.prototype.mdlDowngrade = + MaterialProgress.prototype.mdlDowngrade_; + + MaterialProgress.prototype['mdlDowngrade'] = + MaterialProgress.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/ripple/ripple.js b/src/ripple/ripple.js index 6c444ae9..9a99b1d6 100644 --- a/src/ripple/ripple.js +++ b/src/ripple/ripple.js @@ -267,6 +267,17 @@ this.element_.removeEventListener('blur', this.boundUpHandler); }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialRipple.prototype.mdlDowngrade = + MaterialRipple.prototype.mdlDowngrade_; + + MaterialRipple.prototype['mdlDowngrade'] = + MaterialRipple.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/slider/slider.js b/src/slider/slider.js index 05388436..8fdf93f7 100644 --- a/src/slider/slider.js +++ b/src/slider/slider.js @@ -245,6 +245,17 @@ this.element_.parentElement.removeEventListener('mousedown', this.boundContainerMouseDownHandler); }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialSlider.prototype.mdlDowngrade = + MaterialSlider.prototype.mdlDowngrade_; + + MaterialSlider.prototype['mdlDowngrade'] = + MaterialSlider.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/switch/switch.js b/src/switch/switch.js index 3095225c..2c4e5595 100644 --- a/src/switch/switch.js +++ b/src/switch/switch.js @@ -277,6 +277,17 @@ this.element_.removeEventListener('mouseup', this.boundMouseUpHandler); }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialSwitch.prototype.mdlDowngrade = + MaterialSwitch.prototype.mdlDowngrade_; + + MaterialSwitch.prototype['mdlDowngrade'] = + MaterialSwitch.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/textfield/textfield.js b/src/textfield/textfield.js index e66756c4..42f0882b 100644 --- a/src/textfield/textfield.js +++ b/src/textfield/textfield.js @@ -250,6 +250,17 @@ } }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialTextfield.prototype.mdlDowngrade = + MaterialTextfield.prototype.mdlDowngrade_; + + MaterialTextfield.prototype['mdlDowngrade'] = + MaterialTextfield.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({ diff --git a/src/tooltip/tooltip.js b/src/tooltip/tooltip.js index bad2632a..8049f70b 100644 --- a/src/tooltip/tooltip.js +++ b/src/tooltip/tooltip.js @@ -141,6 +141,17 @@ } }; + /** + * Public alias for the downgrade method. + * + * @public + */ + MaterialTooltip.prototype.mdlDowngrade = + MaterialTooltip.prototype.mdlDowngrade_; + + MaterialTooltip.prototype['mdlDowngrade'] = + MaterialTooltip.prototype.mdlDowngrade; + // The component registers itself. It can assume componentHandler is available // in the global scope. componentHandler.register({