From cbecbced7d26b2f7faeaf63b12fdf7615a229432 Mon Sep 17 00:00:00 2001 From: Paul Gschwendtner Date: Tue, 18 Oct 2016 20:20:36 +0200 Subject: [PATCH] fix(slide-toggle): remove view encapsulation (#1446) * fix(slide-toggle): remove view encapsulation * Removes the ViewEncapsulation from the slide-toggle component to allow developer overwriting the styles easly. Fixes #1343. * Make _hasFocus variable public again for AOT compiler --- src/lib/slide-toggle/slide-toggle.scss | 2 +- src/lib/slide-toggle/slide-toggle.ts | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/lib/slide-toggle/slide-toggle.scss b/src/lib/slide-toggle/slide-toggle.scss index 878f7ccf8839..8bebeaca8239 100644 --- a/src/lib/slide-toggle/slide-toggle.scss +++ b/src/lib/slide-toggle/slide-toggle.scss @@ -16,7 +16,7 @@ $md-slide-toggle-margin: 16px !default; @include md-temporary-ink-ripple(slide-toggle, true); } -:host { +md-slide-toggle { display: flex; height: $md-slide-toggle-height; diff --git a/src/lib/slide-toggle/slide-toggle.ts b/src/lib/slide-toggle/slide-toggle.ts index d7222c6e77cd..a8aaa1d07223 100644 --- a/src/lib/slide-toggle/slide-toggle.ts +++ b/src/lib/slide-toggle/slide-toggle.ts @@ -10,6 +10,7 @@ import { AfterContentInit, NgModule, ModuleWithProviders, + ViewEncapsulation, } from '@angular/core'; import {HAMMER_GESTURE_CONFIG} from '@angular/platform-browser'; import { @@ -50,6 +51,7 @@ let nextId = 0; templateUrl: 'slide-toggle.html', styleUrls: ['slide-toggle.css'], providers: [MD_SLIDE_TOGGLE_VALUE_ACCESSOR], + encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush }) export class MdSlideToggle implements AfterContentInit, ControlValueAccessor { @@ -61,10 +63,12 @@ export class MdSlideToggle implements AfterContentInit, ControlValueAccessor { private _uniqueId = `md-slide-toggle-${++nextId}`; private _checked: boolean = false; private _color: string; - _hasFocus: boolean = false; private _isMousedown: boolean = false; private _slideRenderer: SlideToggleRenderer = null; + // Needs to be public to support AOT compilation (as host binding). + _hasFocus: boolean = false; + @Input() @BooleanFieldValue() disabled: boolean = false; @Input() @BooleanFieldValue() required: boolean = false; @Input() name: string = null;