summaryrefslogtreecommitdiff
path: root/src/minibuffer.c
diff options
context:
space:
mode:
authorAlbert Cervin <albert@acervin.com>2022-12-21 15:29:21 +0100
committerAlbert Cervin <albert@acervin.com>2022-12-21 15:29:21 +0100
commit690786504fce73edea78c7ec13b34771771e4caf (patch)
tree0a8927e6ab88bb5118eca569fdc4ae3593d7f178 /src/minibuffer.c
parenta817e01bfe2356fdd860010d46db4e4361f343a6 (diff)
downloaddged-690786504fce73edea78c7ec13b34771771e4caf.tar.gz
dged-690786504fce73edea78c7ec13b34771771e4caf.tar.xz
dged-690786504fce73edea78c7ec13b34771771e4caf.zip
wip render rework
Diffstat (limited to 'src/minibuffer.c')
-rw-r--r--src/minibuffer.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/minibuffer.c b/src/minibuffer.c
index 649413b..762bbe7 100644
--- a/src/minibuffer.c
+++ b/src/minibuffer.c
@@ -11,17 +11,22 @@ static struct minibuffer {
struct timespec expires;
} g_minibuffer = {0};
-void update(struct buffer *buffer) {
+struct margin update(struct buffer *buffer, struct command_list *commands,
+ uint32_t width, uint32_t height, uint64_t frame_time,
+ void *userdata) {
struct timespec current;
+ struct minibuffer *mb = (struct minibuffer *)userdata;
clock_gettime(CLOCK_MONOTONIC, &current);
- if (current.tv_sec >= g_minibuffer.expires.tv_sec) {
+ if (current.tv_sec >= mb->expires.tv_sec) {
buffer_clear(buffer);
}
+
+ return (struct margin){0};
}
void minibuffer_init(struct buffer *buffer) {
g_minibuffer.buffer = buffer;
- buffer_add_pre_update_hook(g_minibuffer.buffer, update);
+ buffer_add_update_hook(g_minibuffer.buffer, update, &g_minibuffer);
}
void echo(uint32_t timeout, const char *fmt, va_list args) {