Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(958)

Unified Diff: sky/framework/components/ink_well.dart

Issue 1132063007: Rationalize Dart mojo and sky package structure (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sky/framework/components/ink_splash.dart ('k') | sky/framework/components/input.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/framework/components/ink_well.dart
diff --git a/sky/framework/components/ink_well.dart b/sky/framework/components/ink_well.dart
deleted file mode 100644
index 47d745e029cd0a54c6940fb614d48f6e2a4021ae..0000000000000000000000000000000000000000
--- a/sky/framework/components/ink_well.dart
+++ /dev/null
@@ -1,119 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-import '../fn.dart';
-import '../layout.dart';
-import 'dart:collection';
-import 'dart:sky' as sky;
-import 'ink_splash.dart';
-import 'scrollable.dart';
-
-class InkWell extends Component implements ScrollClient {
- static final Style _containmentStyleHack = new Style('''
- align-items: center;
- transform: translateX(0);''');
-
- LinkedHashSet<SplashController> _splashes;
-
- String inlineStyle;
- List<UINode> children;
-
- InkWell({ Object key, this.inlineStyle, this.children })
- : super(key: key) {
- onDidUnmount(() {
- _cancelSplashes(null);
- });
- }
-
- UINode build() {
- List<UINode> childrenIncludingSplashes = [];
-
- if (_splashes != null) {
- childrenIncludingSplashes.addAll(
- _splashes.map((s) => new InkSplash(s.onStyleChanged)));
- }
-
- if (children != null)
- childrenIncludingSplashes.addAll(children);
-
- return new EventListenerNode(
- new FlexContainer(
- direction: FlexDirection.Row,
- style: _containmentStyleHack,
- inlineStyle: inlineStyle,
- children: childrenIncludingSplashes),
- onGestureTapDown: _startSplash,
- onGestureTap: _confirmSplash
- );
- }
-
- void _startSplash(sky.GestureEvent event) {
- setState(() {
- if (_splashes == null)
- _splashes = new LinkedHashSet<SplashController>();
- var splash;
- var root = getRoot();
- splash = new SplashController(root.rect, event.x, event.y,
- pointer: event.primaryPointer,
- onDone: () { _splashDone(splash); });
- _splashes.add(splash);
- UINode node = parent;
- while (node != null) {
- if (node is Scrollable)
- node.registerScrollClient(this);
- node = node.parent;
- }
- });
- }
-
- bool ancestorScrolled(Scrollable ancestor) {
- _abortSplashes();
- return false;
- }
-
- void handleRemoved() {
- UINode node = parent;
- while (node != null) {
- if (node is Scrollable)
- node.unregisterScrollClient(this);
- node = node.parent;
- }
- super.handleRemoved();
- }
-
- void _confirmSplash(sky.GestureEvent event) {
- if (_splashes == null)
- return;
- _splashes.where((splash) => splash.pointer == event.primaryPointer)
- .forEach((splash) { splash.confirm(); });
- }
-
- void _abortSplashes() {
- if (_splashes == null)
- return;
- setState(() {
- _splashes.forEach((s) { s.abort(); });
- });
- }
-
- void _cancelSplashes(sky.Event event) {
- if (_splashes == null)
- return;
- setState(() {
- var splashes = _splashes;
- _splashes = null;
- splashes.forEach((s) { s.cancel(); });
- });
- }
-
- void _splashDone(SplashController splash) {
- if (_splashes == null)
- return;
- setState(() {
- _splashes.remove(splash);
- if (_splashes.length == 0)
- _splashes = null;
- });
- }
-}
« no previous file with comments | « sky/framework/components/ink_splash.dart ('k') | sky/framework/components/input.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698