| OLD | NEW |
| (Empty) |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 import '../fn.dart'; | |
| 6 import '../theme/colors.dart'; | |
| 7 import 'ink_well.dart'; | |
| 8 import 'material.dart'; | |
| 9 | |
| 10 class FloatingActionButton extends Component { | |
| 11 // TODO(abarth): We need a better way to become a container for absolutely | |
| 12 // positioned elements. | |
| 13 static final Style _style = new Style(''' | |
| 14 width: 56px; | |
| 15 height: 56px; | |
| 16 background-color: ${Red[500]}; | |
| 17 border-radius: 28px;''' | |
| 18 ); | |
| 19 static final Style _clipStyle = new Style(''' | |
| 20 position: absolute; | |
| 21 justify-content: center; | |
| 22 align-items: center; | |
| 23 top: 0; | |
| 24 left: 0; | |
| 25 right: 0; | |
| 26 bottom: 0; | |
| 27 -webkit-clip-path: circle(28px at center);'''); | |
| 28 | |
| 29 UINode content; | |
| 30 int level; | |
| 31 | |
| 32 FloatingActionButton({ Object key, this.content, this.level: 0 }) | |
| 33 : super(key: key); | |
| 34 | |
| 35 UINode build() { | |
| 36 List<UINode> children = []; | |
| 37 | |
| 38 if (content != null) | |
| 39 children.add(content); | |
| 40 | |
| 41 return new Material( | |
| 42 content: new Container( | |
| 43 style: _style, | |
| 44 children: [new StyleNode(new InkWell(children: children), _clipStyle)]), | |
| 45 level: level); | |
| 46 } | |
| 47 } | |
| OLD | NEW |