aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPřemysl Eric Janouch <p@janouch.name>2021-06-22 01:30:28 +0200
committerPřemysl Eric Janouch <p@janouch.name>2022-10-08 17:00:56 +0200
commitbfc131eb94f8193efe6d8faafba25fb85f12a91e (patch)
tree460906e407bc4652c4f4ce8bacb6a7f9a59dd686
parent4221eb3084cb74de04a57415ecdb63edfdbe341f (diff)
downloadhaven-bfc131eb94f8193efe6d8faafba25fb85f12a91e.tar.gz
haven-bfc131eb94f8193efe6d8faafba25fb85f12a91e.tar.xz
haven-bfc131eb94f8193efe6d8faafba25fb85f12a91e.zip
WIP: ht: dirty working tree
-rw-r--r--ht/main.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/ht/main.go b/ht/main.go
index 95938d8..80adb95 100644
--- a/ht/main.go
+++ b/ht/main.go
@@ -514,6 +514,16 @@ func onResize(width, height uint16) {
winW, winH = width, height
// We should receive an ExposeEvent soon.
// TODO: Track the bottom of the virtual terminal screen.
+ // - Adjust the top line index, if necessary (screen got higher).
+}
+
+func write(r rune) {
+ // TODO: Write over the current scrollback position,
+ // with the current attributes.
+
+ // TODO: Make space in the scrollback so that we have somewhere to write to.
+ // TODO: Cause a redraw.
+ // - How to invalidate a region?
}
func onKeyPress(ks xproto.Keysym) {
@@ -523,6 +533,7 @@ func onKeyPress(ks xproto.Keysym) {
return
default:
if r := KeysymToRune(ks); r > 0 {
+ write(r)
}
}
}