Merge pull request dart-lang/markdown#130 from srawlins/cancel-typing-when-user-types
Example: cancel typing when user types
diff --git a/pkgs/markdown/example/app.dart b/pkgs/markdown/example/app.dart
index 9e0fd37..1455dc6 100644
--- a/pkgs/markdown/example/app.dart
+++ b/pkgs/markdown/example/app.dart
@@ -23,6 +23,7 @@
savedMarkdown.isNotEmpty &&
savedMarkdown != introText) {
markdownInput.value = savedMarkdown;
+ markdownInput.focus();
_renderMarkdown();
} else {
_typeItOut(introText, 82);
@@ -40,6 +41,10 @@
}
void _typeItOut(String msg, int pos) {
+ Timer timer;
+ markdownInput.onKeyUp.listen((_) {
+ timer?.cancel();
+ });
addCharacter() {
if (pos > msg.length) {
return;
@@ -48,10 +53,10 @@
markdownInput.focus();
_renderMarkdown();
pos++;
- new Timer(typing, addCharacter);
+ timer = new Timer(typing, addCharacter);
}
- new Timer(typing, addCharacter);
+ timer = new Timer(typing, addCharacter);
}
class NullTreeSanitizer implements NodeTreeSanitizer {