comparison shterm.js @ 9:826a7ced69f8

Make the emulator screen resizable.
author John "Elwin" Edwards <elwin@sdf.org>
date Wed, 09 May 2012 13:38:05 -0700
parents d1b3c3af34d6
children d051aad3e95f
comparison
equal deleted inserted replaced
8:ad0a31e52007 9:826a7ced69f8
268 return; 268 return;
269 } 269 }
270 270
271 function setup() { 271 function setup() {
272 keyHexCodes.init(); 272 keyHexCodes.init();
273 termemu.init("termwrap", 25, 80); 273 termemu.init("termwrap", 24, 80);
274 setTitle("Not connected."); 274 setTitle("Not connected.");
275 return; 275 return;
276 } 276 }
277 277
278 function toggleshift() { 278 function toggleshift() {
293 else 293 else
294 keydiv.className = "key"; 294 keydiv.className = "key";
295 return; 295 return;
296 } 296 }
297 297
298 function login() { 298 function login(h, w) {
299 if (termemu.alive) 299 if (termemu.alive)
300 return; 300 return;
301 var req = new XMLHttpRequest(); 301 var req = new XMLHttpRequest();
302 req.onreadystatechange = function () { 302 req.onreadystatechange = function () {
303 if (req.readyState == 4 && req.status == 200) { 303 if (req.readyState == 4 && req.status == 200) {
304 var datalines = req.responseText.split("\n"); 304 var datalines = req.responseText.split("\n");
305 if (datalines[0] == 'l1') { 305 if (datalines[0] == 'l1') {
306 /* Success */ 306 /* Success */
307 // FIXME extract the size from the response instead of hardcoding
308 termemu.resize(25, 80);
307 termemu.alive = true; 309 termemu.alive = true;
308 setTitle("Logged in"); 310 setTitle("Logged in");
309 debug(1, "Logged in with id " + datalines[1]); 311 debug(1, "Logged in with id " + datalines[1]);
310 getData(); 312 getData();
311 return; 313 return;
312 } 314 }
313 return; 315 return;
314 } 316 }
315 }; 317 };
316 req.open('POST', '/login', true); 318 req.open('POST', '/login', true);
317 req.send("login=login"); 319 req.send("login=login&h=" + String(h) + "&w=" + String(w));
318 return; 320 return;
319 } 321 }
320 322
321 function stop() { 323 function stop() {
322 var req = new XMLHttpRequest(); 324 var req = new XMLHttpRequest();
386 nsize = csize - 4; 388 nsize = csize - 4;
387 else 389 else
388 nsize = 48; 390 nsize = 48;
389 } 391 }
390 document.getElementById("term").style.fontSize = nsize.toString() + "px"; 392 document.getElementById("term").style.fontSize = nsize.toString() + "px";
391 termemu.resize(); 393 termemu.fixsize();
392 debug(1, "Changing font size to " + nsize.toString()); 394 debug(1, "Changing font size to " + nsize.toString());
393 return; 395 return;
394 } 396 }
395 397
396 function bell(on) { 398 function bell(on) {