From f2944c6d9cf5bbbf5bb246c2ff9b719d8e632a74 Mon Sep 17 00:00:00 2001 From: Paul Gschwendtner Date: Thu, 6 Oct 2016 20:33:05 +0200 Subject: [PATCH 1/2] fix(slide-toggle): remove view encapsulation * Removes the ViewEncapsulation from the slide-toggle component to allow developer overwriting the styles easly. Fixes #1343. --- src/lib/slide-toggle/slide-toggle.scss | 2 +- src/lib/slide-toggle/slide-toggle.ts | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/lib/slide-toggle/slide-toggle.scss b/src/lib/slide-toggle/slide-toggle.scss index a1068e60e295..b0dfdf910542 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..5c03a02a58b1 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,7 +63,7 @@ export class MdSlideToggle implements AfterContentInit, ControlValueAccessor { private _uniqueId = `md-slide-toggle-${++nextId}`; private _checked: boolean = false; private _color: string; - _hasFocus: boolean = false; + private _hasFocus: boolean = false; private _isMousedown: boolean = false; private _slideRenderer: SlideToggleRenderer = null; From ee7ca95fcf4ba0c027423071f315a0600e446d47 Mon Sep 17 00:00:00 2001 From: Paul Gschwendtner Date: Mon, 17 Oct 2016 13:51:11 +0200 Subject: [PATCH 2/2] Make _hasFocus variable public again for AOT compiler --- src/lib/slide-toggle/slide-toggle.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/slide-toggle/slide-toggle.ts b/src/lib/slide-toggle/slide-toggle.ts index 5c03a02a58b1..a8aaa1d07223 100644 --- a/src/lib/slide-toggle/slide-toggle.ts +++ b/src/lib/slide-toggle/slide-toggle.ts @@ -63,10 +63,12 @@ export class MdSlideToggle implements AfterContentInit, ControlValueAccessor { private _uniqueId = `md-slide-toggle-${++nextId}`; private _checked: boolean = false; private _color: string; - private _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;