Commit a7b96564 authored by Matt Perry's avatar Matt Perry

Change several onStatusChanged callbacks to onDismissed.

We only use them for the transition to dismissed.
parent 2051703c
......@@ -96,7 +96,7 @@ class FeedFragment extends StatefulComponent {
return new Drawer(
showing: _drawerShowing,
level: 3,
onStatusChanged: _handleDrawerStatusChange,
onDismissed: _handleDrawerDismissed,
navigator: navigator,
children: [
new DrawerHeader(children: [new Text('Fitness')]),
......@@ -132,9 +132,9 @@ class FeedFragment extends StatefulComponent {
});
}
void _handleDrawerStatusChange(AnimationStatus status) {
void _handleDrawerDismissed() {
setState(() {
_drawerStatus = status;
_drawerStatus = AnimationStatus.dismissed;
});
}
......
......@@ -68,9 +68,9 @@ class StockHome extends StatefulComponent {
});
}
void _handleDrawerStatusChange(AnimationStatus status) {
void _handleDrawerDismissed() {
setState(() {
_drawerStatus = status;
_drawerStatus = AnimationStatus.dismissed;
});
}
......@@ -90,9 +90,9 @@ class StockHome extends StatefulComponent {
});
}
void _handleMenuStatusChanged(AnimationStatus status) {
void _handleMenuDismissed() {
setState(() {
_menuStatus = status;
_menuStatus = AnimationStatus.dismissed;
});
}
......@@ -119,7 +119,7 @@ class StockHome extends StatefulComponent {
return new Drawer(
level: 3,
showing: _drawerShowing,
onStatusChanged: _handleDrawerStatusChange,
onDismissed: _handleDrawerDismissed,
navigator: navigator,
children: [
new DrawerHeader(children: [new Text('Stocks')]),
......@@ -254,7 +254,7 @@ class StockHome extends StatefulComponent {
showing: _isSnackBarShowing,
content: new Text("Stock purchased!"),
actions: [new SnackBarAction(label: "UNDO", onPressed: _handleUndo)],
onStatusChanged: (status) { setState(() { _snackBarStatus = status; }); }
onDismissed: () { setState(() { _snackBarStatus = AnimationStatus.dismissed; }); }
);
}
......@@ -279,7 +279,7 @@ class StockHome extends StatefulComponent {
overlays.add(new ModalOverlay(
children: [new StockMenu(
showing: _menuShowing,
onStatusChanged: _handleMenuStatusChanged,
onDismissed: _handleMenuDismissed,
navigator: navigator,
autorefresh: _autorefresh,
onAutorefreshChanged: _handleAutorefreshChanged
......
......@@ -8,14 +8,14 @@ class StockMenu extends Component {
StockMenu({
Key key,
this.showing,
this.onStatusChanged,
this.onDismissed,
this.navigator,
this.autorefresh: false,
this.onAutorefreshChanged
}) : super(key: key);
final bool showing;
final PopupMenuStatusChangedCallback onStatusChanged;
final PopupMenuDismissedCallback onDismissed;
final Navigator navigator;
final bool autorefresh;
final ValueChanged onAutorefreshChanged;
......@@ -38,7 +38,7 @@ class StockMenu extends Component {
],
level: 4,
showing: showing,
onStatusChanged: onStatusChanged,
onDismissed: onDismissed,
navigator: navigator
),
right: sky.view.paddingRight,
......
......@@ -40,7 +40,7 @@ const Duration _kThemeChangeDuration = const Duration(milliseconds: 200);
const Point _kOpenPosition = Point.origin;
const Point _kClosedPosition = const Point(-_kWidth, 0.0);
typedef void DrawerStatusChangedCallback(AnimationStatus status);
typedef void DrawerDismissedCallback();
class Drawer extends StatefulComponent {
Drawer({
......@@ -48,14 +48,14 @@ class Drawer extends StatefulComponent {
this.children,
this.showing: false,
this.level: 0,
this.onStatusChanged,
this.onDismissed,
this.navigator
}) : super(key: key);
List<Widget> children;
bool showing;
int level;
DrawerStatusChangedCallback onStatusChanged;
DrawerDismissedCallback onDismissed;
Navigator navigator;
AnimationPerformance _performance;
......@@ -80,7 +80,7 @@ class Drawer extends StatefulComponent {
level = source.level;
navigator = source.navigator;
showing = source.showing;
onStatusChanged = source.onStatusChanged;
onDismissed = source.onDismissed;
}
Widget build() {
......@@ -120,18 +120,13 @@ class Drawer extends StatefulComponent {
}
void _onDismissed() {
_onStatusChanged(AnimationStatus.dismissed);
}
void _onStatusChanged(AnimationStatus status) {
scheduleMicrotask(() {
if (status == AnimationStatus.dismissed &&
navigator != null &&
if (navigator != null &&
navigator.currentRoute is RouteState &&
(navigator.currentRoute as RouteState).owner == this) // TODO(ianh): remove cast once analyzer is cleverer
navigator.pop();
if (onStatusChanged != null)
onStatusChanged(status);
if (onDismissed != null)
onDismissed();
});
}
......
......@@ -27,21 +27,21 @@ const double _kMenuMaxWidth = 5.0 * _kMenuWidthStep;
const double _kMenuHorizontalPadding = 16.0;
const double _kMenuVerticalPadding = 8.0;
typedef void PopupMenuStatusChangedCallback(AnimationStatus status);
typedef void PopupMenuDismissedCallback();
class PopupMenu extends StatefulComponent {
PopupMenu({
Key key,
this.showing,
this.onStatusChanged,
this.onDismissed,
this.items,
this.level,
this.navigator
}) : super(key: key);
bool showing;
PopupMenuStatusChangedCallback onStatusChanged;
PopupMenuDismissedCallback onDismissed;
List<PopupMenuItem> items;
int level;
Navigator navigator;
......@@ -63,7 +63,6 @@ class PopupMenu extends StatefulComponent {
if (!showing && source.showing)
_open();
showing = source.showing;
onStatusChanged = source.onStatusChanged;
if (level != source.level) {
level = source.level;
_updateBoxPainter();
......@@ -96,8 +95,8 @@ class PopupMenu extends StatefulComponent {
navigator.currentRoute is RouteState &&
(navigator.currentRoute as RouteState).owner == this) // TODO(ianh): remove cast once analyzer is cleverer
navigator.pop();
if (onStatusChanged != null)
onStatusChanged(AnimationStatus.dismissed);
if (onDismissed != null)
onDismissed();
}
BoxPainter _painter;
......
......@@ -16,7 +16,7 @@ import 'package:sky/widgets/transitions.dart';
export 'package:sky/animation/animation_performance.dart' show AnimationStatus;
typedef void SnackBarStatusChangedCallback(AnimationStatus status);
typedef void SnackBarDismissedCallback();
const Duration _kSlideInDuration = const Duration(milliseconds: 200);
......@@ -46,7 +46,7 @@ class SnackBar extends Component {
this.content,
this.actions,
this.showing,
this.onStatusChanged
this.onDismissed
}) : super(key: key) {
assert(content != null);
}
......@@ -54,11 +54,11 @@ class SnackBar extends Component {
Widget content;
List<SnackBarAction> actions;
bool showing;
SnackBarStatusChangedCallback onStatusChanged;
SnackBarDismissedCallback onDismissed;
void _onDismissed() {
if (onStatusChanged != null)
scheduleMicrotask(() { onStatusChanged(AnimationStatus.dismissed); });
if (onDismissed != null)
scheduleMicrotask(() { onDismissed(); });
}
Widget build() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment