text: /*
  Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
  This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
  The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
  The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
  Code distributed by Google as part of the polymer project is also
  subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
  */
  
  (function(document) {
    'use strict';
  
    // Grab a reference to our auto-binding template
    // and give it some initial binding values
    // Learn more about auto-binding templates at http://goo.gl/Dx1u2g
    var app = document.querySelector('#app');
  
    // Listen for template bound event to know when bindings
    // have resolved and content has been stamped to the page
    app.addEventListener('dom-change', function() {
      console.log('Our app is ready to rock!');
    });
  
    // See https://github.com/Polymer/polymer/issues/1381
    window.addEventListener('WebComponentsReady', function() {
      // imports are loaded and elements have been registered
      document.querySelector("#grid").addEventListener("pixels-changed", function(e) {
        document.querySelector("#socket").send();
      });
  
      var checkConnection = function() {
        console.log(app.$.socket.status);
        app.$.socketStatus.show();
      }
  
      app.$.socket.addEventListener("socket-connected", function() {
        app.$.socketStatus.show();
        setTimeout(checkConnection, 1000);
      });
  
      app.$.socketStatus.show();
    });
  
    app.refreshGrid = function() {
      app.$.grid.reset();
    };
  
    app.socketConnect = function() {
      app.$.socket.connect();
    }
  
  })(document);
  