diff --git a/src/demo-app/button/button-demo.html b/src/demo-app/button/button-demo.html
index 211d2c0c33b9..bb08ba2f87b7 100644
--- a/src/demo-app/button/button-demo.html
+++ b/src/demo-app/button/button-demo.html
@@ -2,17 +2,16 @@
diff --git a/src/lib/button/button.ts b/src/lib/button/button.ts
index f4d29fc28b4d..537b4652b1c3 100644
--- a/src/lib/button/button.ts
+++ b/src/lib/button/button.ts
@@ -13,11 +13,7 @@ import {
Component,
Directive,
ElementRef,
- forwardRef,
- Inject,
OnDestroy,
- Optional,
- Self,
ViewEncapsulation,
} from '@angular/core';
import {
@@ -74,30 +70,17 @@ export class MatIconButtonCssMatStyler {}
selector: 'button[mat-fab], a[mat-fab]',
host: {'class': 'mat-fab'}
})
-export class MatFab {
- constructor(@Self() @Optional() @Inject(forwardRef(() => MatButton)) button: MatButton,
- @Self() @Optional() @Inject(forwardRef(() => MatAnchor)) anchor: MatAnchor) {
- // Set the default color palette for the mat-fab components.
- (button || anchor).color = DEFAULT_ROUND_BUTTON_COLOR;
- }
-}
+export class MatFab {}
/**
- * Directive that targets mini-fab buttons and anchors. It's used to apply the `mat-` class
- * to all mini-fab buttons and also is responsible for setting the default color palette.
+ * Directive whose purpose is to add the mat- CSS styling to this selector.
* @docs-private
*/
@Directive({
selector: 'button[mat-mini-fab], a[mat-mini-fab]',
host: {'class': 'mat-mini-fab'}
})
-export class MatMiniFab {
- constructor(@Self() @Optional() @Inject(forwardRef(() => MatButton)) button: MatButton,
- @Self() @Optional() @Inject(forwardRef(() => MatAnchor)) anchor: MatAnchor) {
- // Set the default color palette for the mat-mini-fab components.
- (button || anchor).color = DEFAULT_ROUND_BUTTON_COLOR;
- }
-}
+export class MatMiniFab {}
// Boilerplate for applying mixins to MatButton.
@@ -139,7 +122,12 @@ export class MatButton extends _MatButtonMixinBase
private _platform: Platform,
private _focusMonitor: FocusMonitor) {
super(elementRef);
+
this._focusMonitor.monitor(this._elementRef.nativeElement, true);
+
+ if (this._isRoundButton) {
+ this.color = DEFAULT_ROUND_BUTTON_COLOR;
+ }
}
ngOnDestroy() {