diff --git a/IPython/frontend/html/notebook/static/js/cell.js b/IPython/frontend/html/notebook/static/js/cell.js
index ee80f5d..1384967 100644
--- a/IPython/frontend/html/notebook/static/js/cell.js
+++ b/IPython/frontend/html/notebook/static/js/cell.js
@@ -51,6 +51,22 @@ var IPython = (function (IPython) {
         });
     };
 
+    Cell.prototype.grow = function(element) {
+        // Grow the cell by hand. This is used upon reloading from JSON, when the
+        // autogrow handler is not called.
+        var dom = element.get(0);
+        var lines_count = 0;
+        // modified split rule from
+        // http://stackoverflow.com/questions/2035910/how-to-get-the-number-of-lines-in-a-textarea/2036424#2036424
+        var lines = dom.value.split(/\r|\r\n|\n/);
+        lines_count = lines.length;
+        if (lines_count >= 1) {
+            dom.rows = lines_count;
+        } else {
+            dom.rows = 1;
+        }
+    };
+
 
     // Subclasses must implement create_element.
     Cell.prototype.create_element = function () {};