From eac1ef750893872ae4f9eebf26a59373076ba85f Mon Sep 17 00:00:00 2001 From: Max Lynch Date: Tue, 5 May 2015 13:50:54 -0500 Subject: [PATCH] Platform add body classes --- ionic/components.js | 2 +- ionic/components/card/extensions/ios.scss | 3 +-- ionic/components/form/test/basic/main.html | 20 +++++++++++--------- ionic/components/form/test/basic/main.js | 4 ++-- ionic/components/item/extensions/ios.scss | 2 +- ionic/components/item/item.js | 5 ++++- ionic/components/list/extensions/ios.scss | 2 +- ionic/platform/platform.js | 12 ++++++++++++ 8 files changed, 33 insertions(+), 17 deletions(-) diff --git a/ionic/components.js b/ionic/components.js index 5018d8b513..d8dbd96b22 100644 --- a/ionic/components.js +++ b/ionic/components.js @@ -6,7 +6,7 @@ export * from 'ionic/components/button/button' // export * from 'ionic/components/checkbox/checkbox' export * from 'ionic/components/content/content' // export * from 'ionic/components/icon/icon' -// export * from 'ionic/components/item/item' +export * from 'ionic/components/item/item' export * from 'ionic/components/form/form' export * from 'ionic/components/input/input' // export * from 'ionic/components/layout/layout' diff --git a/ionic/components/card/extensions/ios.scss b/ionic/components/card/extensions/ios.scss index 618e0baec1..7841e73459 100644 --- a/ionic/components/card/extensions/ios.scss +++ b/ionic/components/card/extensions/ios.scss @@ -8,7 +8,7 @@ $card-ios-border-radius: 2px !default; $card-ios-font-size: 1.4rem !default; $card-ios-item-content-padding: 15px !default; -.view-ios .card { +.platform-ios .card { background: $card-ios-background-color; box-shadow: $card-ios-box-shadow; border-radius: $card-ios-border-radius; @@ -37,4 +37,3 @@ $card-ios-item-content-padding: 15px !default; } } - diff --git a/ionic/components/form/test/basic/main.html b/ionic/components/form/test/basic/main.html index 0b3f014d3e..6abc4d519d 100644 --- a/ionic/components/form/test/basic/main.html +++ b/ionic/components/form/test/basic/main.html @@ -1,9 +1,11 @@ -
- - - - - - - -
+ +
+ + + + + + + +
+
diff --git a/ionic/components/form/test/basic/main.js b/ionic/components/form/test/basic/main.js index c24499836e..b9b4b2840c 100644 --- a/ionic/components/form/test/basic/main.js +++ b/ionic/components/form/test/basic/main.js @@ -1,11 +1,11 @@ import {Component, View, bootstrap} from 'angular2/angular2' import {FormBuilder, Validators, FormDirectives, ControlGroup} from 'angular2/forms'; -import {Button, Form, Input, Content} from 'ionic/ionic'; +import {Button, Form, Item, Input, Content} from 'ionic/ionic'; @Component({ selector: '[ion-app]' }) @View({ templateUrl: 'main.html', - directives: [FormDirectives, Button, Input, Content] + directives: [FormDirectives, Item, Button, Input, Content] }) class IonicApp { constructor() { diff --git a/ionic/components/item/extensions/ios.scss b/ionic/components/item/extensions/ios.scss index 7505dd7d1f..02433525b1 100644 --- a/ionic/components/item/extensions/ios.scss +++ b/ionic/components/item/extensions/ios.scss @@ -9,7 +9,7 @@ $item-ios-accessory-color: #8e8e93 !default; $item-ios-border-color: $list-ios-border-color !default; -.view-ios { +.platform-ios { .list-header { margin-left: $item-ios-padding-left; diff --git a/ionic/components/item/item.js b/ionic/components/item/item.js index ed09d23cf0..bf3b5329f9 100644 --- a/ionic/components/item/item.js +++ b/ionic/components/item/item.js @@ -1,8 +1,12 @@ import {NgElement, Component, View} from 'angular2/angular2' + +import {dom} from 'ionic/util' import {IonicComponent} from 'ionic/config/component' + import { ItemPrimaryOptions, ItemSecondaryOptions } from 'ionic/components/item/item-options' + import { ItemPrimarySwipeButtons, ItemSecondarySwipeButtons } from 'ionic/components/item/item-swipe-buttons' @@ -57,7 +61,6 @@ function clsSetter(el, name) { return (isSet) => el.classList[isSet?'add':'remove'](name) } -import {dom} from 'ionic/util' class Slideable { constructor(slideElement: Element) { diff --git a/ionic/components/list/extensions/ios.scss b/ionic/components/list/extensions/ios.scss index 12e847e81f..d95c6b5552 100644 --- a/ionic/components/list/extensions/ios.scss +++ b/ionic/components/list/extensions/ios.scss @@ -14,7 +14,7 @@ $list-ios-footer-font-size: 1.4rem !default; $list-ios-footer-color: #8f8f94 !default; -.view-ios { +.platform-ios { .list { @include hairline(top, $list-ios-border-color, $z-index-list-border); diff --git a/ionic/platform/platform.js b/ionic/platform/platform.js index 7f0bea377d..73e42fd454 100644 --- a/ionic/platform/platform.js +++ b/ionic/platform/platform.js @@ -29,6 +29,8 @@ class PlatformController { set(platform) { activePlatform = platform; + + this._applyBodyClasses(); } setDefault(platform) { @@ -49,6 +51,16 @@ class PlatformController { } return null; } + + _applyBodyClasses() { + if(!activePlatform) { + return; + } + + util.dom.raf(() => { + document.body.classList.add('platform-' + activePlatform.name); + }); + } } export let Platform = new PlatformController();