Introduce painting.dart and move painting code to src/painting
diff --git a/examples/demo_launcher/lib/main.dart b/examples/demo_launcher/lib/main.dart
index 0226482..4432f1a 100644
--- a/examples/demo_launcher/lib/main.dart
+++ b/examples/demo_launcher/lib/main.dart
@@ -4,7 +4,7 @@
import 'package:sky/mojo/activity.dart';
import 'package:sky/mojo/asset_bundle.dart';
-import 'package:sky/painting/box_painter.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/colors.dart' as colors;
import 'package:sky/theme/typography.dart' as typography;
import 'package:sky/widgets.dart';
diff --git a/examples/fitness/lib/main.dart b/examples/fitness/lib/main.dart
index 740ac9e..1028fe6 100644
--- a/examples/fitness/lib/main.dart
+++ b/examples/fitness/lib/main.dart
@@ -6,7 +6,7 @@
import 'package:playfair/playfair.dart' as playfair;
import 'package:sky/animation.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/colors.dart' as colors;
import 'package:sky/widgets.dart';
import 'user_data.dart';
diff --git a/examples/game/lib/game_demo.dart b/examples/game/lib/game_demo.dart
index 70c1244..1f4c64e 100644
--- a/examples/game/lib/game_demo.dart
+++ b/examples/game/lib/game_demo.dart
@@ -4,7 +4,7 @@
import 'dart:math' as math;
import 'dart:sky' as sky;
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/src/widgets/framework.dart';
import 'package:skysprites/skysprites.dart';
diff --git a/examples/game/lib/main.dart b/examples/game/lib/main.dart
index 6ba4765..5a560ba 100644
--- a/examples/game/lib/main.dart
+++ b/examples/game/lib/main.dart
@@ -5,7 +5,7 @@
import 'dart:async';
import 'package:sky/mojo/asset_bundle.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/button_base.dart';
diff --git a/examples/mine_digger/lib/main.dart b/examples/mine_digger/lib/main.dart
index 1384732..367f877 100644
--- a/examples/mine_digger/lib/main.dart
+++ b/examples/mine_digger/lib/main.dart
@@ -5,7 +5,7 @@
import 'dart:math';
import 'package:sky/mojo/activity.dart' as activity;
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/rendering.dart';
import 'package:sky/theme/colors.dart' as colors;
import 'package:sky/widgets.dart';
diff --git a/packages/flutter/lib/README.md b/packages/flutter/lib/README.md
index 1b27173..d0c359c 100644
--- a/packages/flutter/lib/README.md
+++ b/packages/flutter/lib/README.md
@@ -18,14 +18,14 @@
which provides core animation primitives, and the [gestures/](gestures/)
directory, which define a gesture recognition and disambiguation system.
-The next layer consists of the files in the [painting/](painting/) directory,
-which provide APIs related to drawing graphics. Some of the code here
-uses the [animation](animation.dart) utilities mentioned above.
+The next layer consists of the [painting](painting.dart) library,
+which provides APIs related to drawing graphics. Some of the code here
+uses the [animation](animation.dart) library mentioned above.
Layout primitives are provided in the next layer, found in the
[rendering](rendering.dart) library. They use `dart:sky` and the
-APIs exposed in [painting/](painting/) to provide a retained-mode layout and
-rendering model for applications or documents.
+APIs exposed in the [painting](painting.dart) library to provide a retained-mode
+layout and rendering model for applications or documents.
Widgets are provided by the files in the [widgets](widgets.dart)
library, using a reactive framework. They use data given in the
@@ -46,7 +46,7 @@
| ++---------------------++ |
| | rendering | | Dart
| |---------+------------+ |
- | | | painting/ | |
+ | | | painting | |
+-+ +------------+ |
| gestures/ | animation | |
+-----------+---+--------+ |
diff --git a/packages/flutter/lib/painting.dart b/packages/flutter/lib/painting.dart
new file mode 100644
index 0000000..d37939f
--- /dev/null
+++ b/packages/flutter/lib/painting.dart
@@ -0,0 +1,14 @@
+// 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.
+
+/// The Sky render tree.
+///
+/// This library includes and re-exports all Sky rendering classes.
+library painting;
+
+export 'src/painting/box_painter.dart';
+export 'src/painting/radial_reaction.dart';
+export 'src/painting/shadows.dart';
+export 'src/painting/text_painter.dart';
+export 'src/painting/text_style.dart';
diff --git a/packages/flutter/lib/painting/README.md b/packages/flutter/lib/src/painting/README.md
similarity index 100%
rename from packages/flutter/lib/painting/README.md
rename to packages/flutter/lib/src/painting/README.md
diff --git a/packages/flutter/lib/painting/box_painter.dart b/packages/flutter/lib/src/painting/box_painter.dart
similarity index 99%
rename from packages/flutter/lib/painting/box_painter.dart
rename to packages/flutter/lib/src/painting/box_painter.dart
index 0cb2efd..5aef8c0 100644
--- a/packages/flutter/lib/painting/box_painter.dart
+++ b/packages/flutter/lib/src/painting/box_painter.dart
@@ -7,7 +7,7 @@
import 'dart:sky' show Point, Offset, Size, Rect, Color, Paint, Path;
import 'package:sky/base/image_resource.dart';
-import 'package:sky/painting/shadows.dart';
+import 'package:sky/src/painting/shadows.dart';
/// An immutable set of offsets in each of the four cardinal directions
///
diff --git a/packages/flutter/lib/painting/radial_reaction.dart b/packages/flutter/lib/src/painting/radial_reaction.dart
similarity index 100%
rename from packages/flutter/lib/painting/radial_reaction.dart
rename to packages/flutter/lib/src/painting/radial_reaction.dart
diff --git a/packages/flutter/lib/painting/shadows.dart b/packages/flutter/lib/src/painting/shadows.dart
similarity index 100%
rename from packages/flutter/lib/painting/shadows.dart
rename to packages/flutter/lib/src/painting/shadows.dart
diff --git a/packages/flutter/lib/painting/text_painter.dart b/packages/flutter/lib/src/painting/text_painter.dart
similarity index 98%
rename from packages/flutter/lib/painting/text_painter.dart
rename to packages/flutter/lib/src/painting/text_painter.dart
index bdc51ab..d1eb799 100644
--- a/packages/flutter/lib/painting/text_painter.dart
+++ b/packages/flutter/lib/src/painting/text_painter.dart
@@ -4,9 +4,9 @@
import 'dart:sky' as sky;
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/src/painting/text_style.dart';
-export 'package:sky/painting/text_style.dart';
+export 'package:sky/src/painting/text_style.dart';
/// An immutable span of text
abstract class TextSpan {
diff --git a/packages/flutter/lib/painting/text_style.dart b/packages/flutter/lib/src/painting/text_style.dart
similarity index 100%
rename from packages/flutter/lib/painting/text_style.dart
rename to packages/flutter/lib/src/painting/text_style.dart
diff --git a/packages/flutter/lib/src/rendering/README.md b/packages/flutter/lib/src/rendering/README.md
index ff864f2..69f6e1a 100644
--- a/packages/flutter/lib/src/rendering/README.md
+++ b/packages/flutter/lib/src/rendering/README.md
@@ -384,6 +384,7 @@
Dependencies
------------
+ * [`package:sky/animation.dart`](../../animation.dart)
* [`package:sky/base`](../../base)
* [`package:sky/mojo`](../../mojo)
- * [`package:sky/animation.dart`](../../animation.dart)
+ * [`package:sky/painting.dart`](../../painting.dart)
diff --git a/packages/flutter/lib/src/rendering/box.dart b/packages/flutter/lib/src/rendering/box.dart
index e22920e..caa89e2 100644
--- a/packages/flutter/lib/src/rendering/box.dart
+++ b/packages/flutter/lib/src/rendering/box.dart
@@ -6,12 +6,11 @@
import 'dart:sky' as sky;
import 'package:sky/base/debug.dart';
-import 'package:sky/painting/box_painter.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:vector_math/vector_math.dart';
-export 'package:sky/painting/text_style.dart' show TextBaseline;
+export 'package:sky/painting.dart' show TextBaseline;
// GENERIC BOX RENDERING
// Anything that has a concept of x, y, width, height is going to derive from this
diff --git a/packages/flutter/lib/src/rendering/image.dart b/packages/flutter/lib/src/rendering/image.dart
index a1ff0c5..48819e9 100644
--- a/packages/flutter/lib/src/rendering/image.dart
+++ b/packages/flutter/lib/src/rendering/image.dart
@@ -4,7 +4,7 @@
import 'dart:sky' as sky;
-import 'package:sky/painting/box_painter.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/src/rendering/box.dart';
diff --git a/packages/flutter/lib/src/rendering/paragraph.dart b/packages/flutter/lib/src/rendering/paragraph.dart
index dd00721..dfe038f 100644
--- a/packages/flutter/lib/src/rendering/paragraph.dart
+++ b/packages/flutter/lib/src/rendering/paragraph.dart
@@ -2,11 +2,11 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-import 'package:sky/painting/text_painter.dart';
+import 'package:sky/src/painting/text_painter.dart';
import 'package:sky/src/rendering/box.dart';
import 'package:sky/src/rendering/object.dart';
-export 'package:sky/painting/text_painter.dart';
+export 'package:sky/src/painting/text_painter.dart';
// Unfortunately, using full precision floating point here causes bad layouts
// because floating point math isn't associative. If we add and subtract
diff --git a/packages/flutter/lib/src/rendering/proxy_box.dart b/packages/flutter/lib/src/rendering/proxy_box.dart
index a959171..dd9e2a1 100644
--- a/packages/flutter/lib/src/rendering/proxy_box.dart
+++ b/packages/flutter/lib/src/rendering/proxy_box.dart
@@ -4,13 +4,13 @@
import 'dart:sky' as sky;
-import 'package:sky/painting/box_painter.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/src/painting/box_painter.dart';
+import 'package:sky/src/painting/text_style.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/src/rendering/box.dart';
import 'package:vector_math/vector_math.dart';
-export 'package:sky/painting/box_painter.dart';
+export 'package:sky/src/painting/box_painter.dart';
class RenderProxyBox extends RenderBox with RenderObjectWithChildMixin<RenderBox> {
diff --git a/packages/flutter/lib/src/rendering/shifted_box.dart b/packages/flutter/lib/src/rendering/shifted_box.dart
index d8a102d..40b27dc 100644
--- a/packages/flutter/lib/src/rendering/shifted_box.dart
+++ b/packages/flutter/lib/src/rendering/shifted_box.dart
@@ -2,8 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-import 'package:sky/painting/box_painter.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/src/rendering/box.dart';
diff --git a/packages/flutter/lib/src/widgets/README.md b/packages/flutter/lib/src/widgets/README.md
index 0fcb964..1797b3a 100644
--- a/packages/flutter/lib/src/widgets/README.md
+++ b/packages/flutter/lib/src/widgets/README.md
@@ -502,6 +502,6 @@
* `package:vector_math`
* [`package:sky/animation.dart`](../../animation.dart)
* [`package:sky/base`](../../base)
- * [`package:sky/painting`](../../painting)
+ * [`package:sky/painting.dart`](../../painting.dart)
* [`package:sky/rendering.dart`](../../rendering.dart)
* [`package:sky/theme`](../../theme)
diff --git a/packages/flutter/lib/src/widgets/animated_container.dart b/packages/flutter/lib/src/widgets/animated_container.dart
index 744f1b6..0bc880d 100644
--- a/packages/flutter/lib/src/widgets/animated_container.dart
+++ b/packages/flutter/lib/src/widgets/animated_container.dart
@@ -6,7 +6,7 @@
import 'package:vector_math/vector_math.dart';
import 'package:sky/animation.dart';
-import 'package:sky/painting/box_painter.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/widgets/animated_component.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/framework.dart';
diff --git a/packages/flutter/lib/src/widgets/basic.dart b/packages/flutter/lib/src/widgets/basic.dart
index 863393d..24f853d 100644
--- a/packages/flutter/lib/src/widgets/basic.dart
+++ b/packages/flutter/lib/src/widgets/basic.dart
@@ -9,8 +9,8 @@
import 'package:sky/base/image_resource.dart';
import 'package:sky/mojo/asset_bundle.dart';
import 'package:sky/mojo/net/image_cache.dart' as image_cache;
-import 'package:sky/painting/text_painter.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/src/painting/text_painter.dart';
+import 'package:sky/src/painting/text_style.dart';
import 'package:sky/src/rendering/block.dart';
import 'package:sky/src/rendering/box.dart';
import 'package:sky/src/rendering/flex.dart';
@@ -26,7 +26,7 @@
import 'package:sky/src/widgets/framework.dart';
export 'package:sky/base/hit_test.dart' show EventDisposition, combineEventDispositions;
-export 'package:sky/painting/text_style.dart';
+export 'package:sky/src/painting/text_style.dart';
export 'package:sky/src/rendering/block.dart' show BlockDirection;
export 'package:sky/src/rendering/box.dart' show BoxConstraints;
export 'package:sky/src/rendering/flex.dart' show FlexJustifyContent, FlexAlignItems, FlexDirection;
diff --git a/packages/flutter/lib/src/widgets/default_text_style.dart b/packages/flutter/lib/src/widgets/default_text_style.dart
index 6339904..eb5d996 100644
--- a/packages/flutter/lib/src/widgets/default_text_style.dart
+++ b/packages/flutter/lib/src/widgets/default_text_style.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/framework.dart';
diff --git a/packages/flutter/lib/src/widgets/drawer_item.dart b/packages/flutter/lib/src/widgets/drawer_item.dart
index b81edf1..ec7f4ba 100644
--- a/packages/flutter/lib/src/widgets/drawer_item.dart
+++ b/packages/flutter/lib/src/widgets/drawer_item.dart
@@ -4,7 +4,7 @@
import 'dart:sky' as sky;
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/colors.dart' as colors;
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/button_base.dart';
diff --git a/packages/flutter/lib/src/widgets/editable_text.dart b/packages/flutter/lib/src/widgets/editable_text.dart
index 59aaea3..82794c9 100644
--- a/packages/flutter/lib/src/widgets/editable_text.dart
+++ b/packages/flutter/lib/src/widgets/editable_text.dart
@@ -6,7 +6,7 @@
import 'dart:sky' as sky;
import 'package:mojo_services/keyboard/keyboard.mojom.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/framework.dart';
diff --git a/packages/flutter/lib/src/widgets/input.dart b/packages/flutter/lib/src/widgets/input.dart
index 0d46254..189c0ae 100644
--- a/packages/flutter/lib/src/widgets/input.dart
+++ b/packages/flutter/lib/src/widgets/input.dart
@@ -3,7 +3,7 @@
// found in the LICENSE file.
import 'package:sky/mojo/keyboard.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/editable_text.dart';
import 'package:sky/src/widgets/focus.dart';
diff --git a/packages/flutter/lib/src/widgets/material.dart b/packages/flutter/lib/src/widgets/material.dart
index 129f39d..9ab80c2 100644
--- a/packages/flutter/lib/src/widgets/material.dart
+++ b/packages/flutter/lib/src/widgets/material.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-import 'package:sky/painting/box_painter.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/shadows.dart';
import 'package:sky/src/widgets/animated_container.dart';
import 'package:sky/src/widgets/basic.dart';
diff --git a/packages/flutter/lib/src/widgets/popup_menu.dart b/packages/flutter/lib/src/widgets/popup_menu.dart
index 49185d0..b0078de 100644
--- a/packages/flutter/lib/src/widgets/popup_menu.dart
+++ b/packages/flutter/lib/src/widgets/popup_menu.dart
@@ -5,7 +5,7 @@
import 'dart:sky' as sky;
import 'package:sky/animation.dart';
-import 'package:sky/painting/box_painter.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/colors.dart';
import 'package:sky/theme/shadows.dart';
import 'package:sky/src/widgets/basic.dart';
diff --git a/packages/flutter/lib/src/widgets/popup_menu_item.dart b/packages/flutter/lib/src/widgets/popup_menu_item.dart
index 01cefe0..b787c2a 100644
--- a/packages/flutter/lib/src/widgets/popup_menu_item.dart
+++ b/packages/flutter/lib/src/widgets/popup_menu_item.dart
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/default_text_style.dart';
import 'package:sky/src/widgets/framework.dart';
diff --git a/packages/flutter/lib/src/widgets/snack_bar.dart b/packages/flutter/lib/src/widgets/snack_bar.dart
index eae0ae8..5232a4c 100644
--- a/packages/flutter/lib/src/widgets/snack_bar.dart
+++ b/packages/flutter/lib/src/widgets/snack_bar.dart
@@ -4,7 +4,7 @@
import 'package:sky/animation.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/typography.dart' as typography;
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/default_text_style.dart';
diff --git a/packages/flutter/lib/src/widgets/switch.dart b/packages/flutter/lib/src/widgets/switch.dart
index 50614dd..aed86dc 100644
--- a/packages/flutter/lib/src/widgets/switch.dart
+++ b/packages/flutter/lib/src/widgets/switch.dart
@@ -5,8 +5,7 @@
import 'dart:async';
import 'dart:sky' as sky;
-import 'package:sky/painting/radial_reaction.dart';
-import 'package:sky/painting/shadows.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/box.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/theme/shadows.dart';
diff --git a/packages/flutter/lib/src/widgets/tabs.dart b/packages/flutter/lib/src/widgets/tabs.dart
index 3a3d8fc..e1d864e 100644
--- a/packages/flutter/lib/src/widgets/tabs.dart
+++ b/packages/flutter/lib/src/widgets/tabs.dart
@@ -7,7 +7,7 @@
import 'package:newton/newton.dart';
import 'package:sky/animation.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/rendering.dart';
import 'package:sky/theme/colors.dart' as colors;
import 'package:sky/theme/typography.dart' as typography;
diff --git a/packages/flutter/lib/src/widgets/tool_bar.dart b/packages/flutter/lib/src/widgets/tool_bar.dart
index 8eff10e..18cea56 100644
--- a/packages/flutter/lib/src/widgets/tool_bar.dart
+++ b/packages/flutter/lib/src/widgets/tool_bar.dart
@@ -4,15 +4,15 @@
import 'package:sky/src/widgets/theme.dart';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/flex.dart';
-import 'package:sky/theme/shadows.dart';
-import 'package:sky/theme/typography.dart' as typography;
-import 'package:sky/theme/view_configuration.dart';
import 'package:sky/src/widgets/basic.dart';
import 'package:sky/src/widgets/default_text_style.dart';
import 'package:sky/src/widgets/framework.dart';
import 'package:sky/src/widgets/icon.dart';
+import 'package:sky/theme/shadows.dart';
+import 'package:sky/theme/typography.dart' as typography;
+import 'package:sky/theme/view_configuration.dart';
class ToolBar extends Component {
diff --git a/packages/flutter/lib/theme/README.md b/packages/flutter/lib/theme/README.md
index ba58170..aa3334a 100644
--- a/packages/flutter/lib/theme/README.md
+++ b/packages/flutter/lib/theme/README.md
@@ -2,4 +2,5 @@
http://www.google.com/design/spec/material-design/
-Files in this directory only depend on ../painting/* and sky:dart.
+Files in this directory only depend on [painting.dart](../painting.dart) and
+`sky:dart`.
diff --git a/packages/flutter/lib/theme/shadows.dart b/packages/flutter/lib/theme/shadows.dart
index 29ac20e..dac0f3e 100644
--- a/packages/flutter/lib/theme/shadows.dart
+++ b/packages/flutter/lib/theme/shadows.dart
@@ -4,7 +4,7 @@
import 'dart:sky' show Color, Offset;
-import 'package:sky/painting/box_painter.dart';
+import 'package:sky/painting.dart';
const Map<int, List<BoxShadow>> shadows = const {
1: const [
diff --git a/packages/flutter/lib/theme/typography.dart b/packages/flutter/lib/theme/typography.dart
index 516ee35..7814779 100644
--- a/packages/flutter/lib/theme/typography.dart
+++ b/packages/flutter/lib/theme/typography.dart
@@ -6,7 +6,7 @@
import 'dart:sky';
-import 'package:sky/painting/text_style.dart';
+import 'package:sky/painting.dart';
import 'package:sky/theme/colors.dart' as colors;
// TODO(eseidel): Font weights are supposed to be language relative!
diff --git a/packages/flutter_sprites/lib/skysprites.dart b/packages/flutter_sprites/lib/skysprites.dart
index 9d300e7..416053b 100644
--- a/packages/flutter_sprites/lib/skysprites.dart
+++ b/packages/flutter_sprites/lib/skysprites.dart
@@ -14,7 +14,7 @@
import 'package:sky/animation.dart';
import 'package:sky/mojo/asset_bundle.dart';
import 'package:sky/mojo/shell.dart' as shell;
-import 'package:sky/painting/text_painter.dart';
+import 'package:sky/painting.dart';
import 'package:sky/src/rendering/box.dart';
import 'package:sky/src/rendering/object.dart';
import 'package:sky/src/widgets/framework.dart';