about summary refs log tree commit diff stats
path: root/081print.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2017-04-16 15:02:42 -0700
committerKartik K. Agaram <vc@akkartik.com>2017-04-16 15:05:31 -0700
commitace7ffb714ce5314c665f28945ee0f3f1664f9ca (patch)
tree191088837e3a6c6fa6a38aae59431efa88c86cb9 /081print.mu
parentef73b04e744a69973208096a49d4ae52ddbb84d2 (diff)
downloadmu-ace7ffb714ce5314c665f28945ee0f3f1664f9ca.tar.gz
3824 - experiment: stop buffering in termbox
Now it's much more apparent why things are slow. You can see each repaint
happening. Already I fixed one performance bug -- in clear-rest-of-screen.

Since this subverts Mu's fake screen there may be bugs.

Another salubrious side effect: I've finally internalized that switching
to raw mode doesn't have to clear the screen. That was just an artifact
of how termbox abstracted operations. Now I can conceive of using termbox
to build a repl as well.

(I was inspired to poke into termbox internals by
http://viewsourcecode.org/snaptoken/kilo and
https://github.com/antirez/linenoise)
Diffstat (limited to '081print.mu')
-rw-r--r--081print.mu23
1 files changed, 0 insertions, 23 deletions
diff --git a/081print.mu b/081print.mu
index 487696c5..f654a5ae 100644
--- a/081print.mu
+++ b/081print.mu
@@ -50,13 +50,6 @@ def clear-screen screen:&:screen -> screen:&:screen [
   *screen <- put *screen, cursor-column:offset, 0
 ]
 
-def sync-screen screen:&:screen -> screen:&:screen [
-  local-scope
-  load-ingredients
-  return-if screen  # do nothing for fake screens
-  sync-display
-]
-
 def fake-screen-is-empty? screen:&:screen -> result:bool [
   local-scope
   load-ingredients
@@ -620,22 +613,6 @@ def show-cursor screen:&:screen -> screen:&:screen [
   show-cursor-on-display
 ]
 
-def hide-screen screen:&:screen -> screen:&:screen [
-  local-scope
-  load-ingredients
-  return-if screen  # fake screen; do nothing
-  # real screen
-  hide-display
-]
-
-def show-screen screen:&:screen -> screen:&:screen [
-  local-scope
-  load-ingredients
-  return-if screen  # fake screen; do nothing
-  # real screen
-  show-display
-]
-
 def print screen:&:screen, s:text -> screen:&:screen [
   local-scope
   load-ingredients