This commit is contained in:
Tony Garnock-Jones 2016-09-12 12:51:33 -04:00
parent d6363a1f35
commit 254eb74825
2 changed files with 18 additions and 0 deletions

View File

@ -1,6 +1,8 @@
#lang racket/base
;; Implicitly provides a factory via display.rkt's `register-tty-backend!`.
(provide (struct-out terminal))
(require racket/set)
(require racket/match)
(require (only-in racket/vector vector-copy))

View File

@ -77,6 +77,7 @@
(require racket/generic)
(require racket/match)
(require (only-in racket/list flatten))
(require (prefix-in ansi: ansi))
(require "display.rkt")
@ -387,6 +388,21 @@
(tbox-render-toplevel! toplevel-widget tty)
(tty-goto tty 0 0)
(display (string-append (ansi:set-mode ansi:x11-focus-event-mode)
(ansi:set-mode ansi:x11-any-event-mouse-tracking-mode)
(ansi:set-mode ansi:x11-extended-mouse-tracking-mode))
(terminal-output tty))
(flush-output (terminal-output tty))
(plumber-add-flush! (current-plumber)
(lambda (_handle)
(display (string-append
(ansi:reset-mode ansi:x11-focus-event-mode)
(ansi:reset-mode ansi:x11-any-event-mouse-tracking-mode)
(ansi:reset-mode ansi:x11-extended-mouse-tracking-mode))
(terminal-output tty))
(flush-output (terminal-output tty))))
(let loop ()
(tty-flush tty)
(sync (handle-evt (tty-next-key-evt tty)