diff --git a/engine/src/flutter/examples/terminal/index.sky b/engine/src/flutter/examples/terminal/index.sky
index 74d56221b9..2244afcedb 100644
--- a/engine/src/flutter/examples/terminal/index.sky
+++ b/engine/src/flutter/examples/terminal/index.sky
@@ -5,4 +5,22 @@
// found in the LICENSE file.
-->
-
+
+
+
diff --git a/engine/src/flutter/examples/terminal/terminal.sky b/engine/src/flutter/examples/terminal/terminal.sky
index 8f964cd218..489e46e5d3 100644
--- a/engine/src/flutter/examples/terminal/terminal.sky
+++ b/engine/src/flutter/examples/terminal/terminal.sky
@@ -13,9 +13,10 @@
background-color: black;
color: rgb(255, 191, 0);
font-family: 'Courier', 'monospace';
+ font-size: small;
}
.line {
- white-space: pre;
+ white-space: nowrap;
}
@@ -60,7 +61,10 @@ class TerminalDisplayImpl extends SkyElement implements TerminalDisplay {
// Initialize with the first line.
_newLine();
- _connect(getAttribute('url'));
+ var url = getAttribute('url');
+ if (url != null) {
+ connect(url);
+ }
}
void _handleKeyDown(KeyboardEvent event) {
@@ -111,15 +115,19 @@ class TerminalDisplayImpl extends SkyElement implements TerminalDisplay {
_newLine();
}
- // TODO(vtl): Should we always auto-connect? Should there be facilities for
- // programmatically connecting? (What if the |url| attribute isn't set?)
- void _connect(String url) {
+ void connect(String url) {
var terminalClient = new terminal.TerminalClientProxy.unbound();
embedder.connectToService(url, terminalClient);
terminalClient.ptr.connectToTerminal(new TerminalFileImpl(this).stub);
terminalClient.close();
}
+ void putString(String s) {
+ for (var i = 0; i < s.length; i++) {
+ putChar(s.codeUnitAt(i));
+ }
+ }
+
// |TerminalDisplay| implementation:
@override