Merge pull request dart-lang/markdown#138 from srawlins/fix-overflow

Fix overflow in example views
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 {
diff --git a/pkgs/markdown/tool/update-gh-pages.sh b/pkgs/markdown/tool/update-gh-pages.sh
new file mode 100755
index 0000000..64962a7
--- /dev/null
+++ b/pkgs/markdown/tool/update-gh-pages.sh
@@ -0,0 +1,13 @@
+# Echo every command being run.
+set +x
+
+# Fail fast if a command fails.
+set -e
+
+pub global activate peanut
+
+peanut -d example
+
+echo Now push updated gh-pages branch with:
+echo
+echo '    git push origin --set-upstream gh-pages'