aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/terminal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/terminal.c')
-rw-r--r--src/nvim/terminal.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c
index 9ce050ed7a..47fef692db 100644
--- a/src/nvim/terminal.c
+++ b/src/nvim/terminal.c
@@ -67,7 +67,8 @@
#include "nvim/ex_cmds.h"
#include "nvim/window.h"
#include "nvim/fileio.h"
-#include "nvim/os/event.h"
+#include "nvim/event/loop.h"
+#include "nvim/event/time.h"
#include "nvim/api/private/helpers.h"
#ifdef INCLUDE_GENERATED_DECLARATIONS
@@ -80,7 +81,7 @@
// of data.
#define REFRESH_DELAY 10
-static uv_timer_t refresh_timer;
+static TimeWatcher refresh_timer;
static bool refresh_pending = false;
typedef struct {
@@ -150,7 +151,7 @@ static VTermColor default_vt_bg_rgb;
void terminal_init(void)
{
invalidated_terminals = pmap_new(ptr_t)();
- uv_timer_init(uv_default_loop(), &refresh_timer);
+ time_watcher_init(&loop, &refresh_timer, NULL);
// initialize a rgb->color index map for cterm attributes(VTermScreenCell
// only has RGB information and we need color indexes for terminal UIs)
@@ -175,8 +176,8 @@ void terminal_init(void)
void terminal_teardown(void)
{
- uv_timer_stop(&refresh_timer);
- uv_close((uv_handle_t *)&refresh_timer, NULL);
+ time_watcher_stop(&refresh_timer);
+ time_watcher_close(&refresh_timer, NULL);
pmap_free(ptr_t)(invalidated_terminals);
map_free(int, int)(color_indexes);
}
@@ -353,13 +354,13 @@ void terminal_enter(bool process_deferred)
while (term->buf == curbuf) {
if (process_deferred) {
- event_enable_deferred();
+ loop_enable_deferred_events(&loop);
}
c = safe_vgetc();
if (process_deferred) {
- event_disable_deferred();
+ loop_disable_deferred_events(&loop);
}
switch (c) {
@@ -380,7 +381,7 @@ void terminal_enter(bool process_deferred)
break;
case K_EVENT:
- event_process();
+ loop_process_event(&loop);
break;
case Ctrl_N:
@@ -877,16 +878,16 @@ static void invalidate_terminal(Terminal *term, int start_row, int end_row)
pmap_put(ptr_t)(invalidated_terminals, term, NULL);
if (!refresh_pending) {
- uv_timer_start(&refresh_timer, refresh_timer_cb, REFRESH_DELAY, 0);
+ time_watcher_start(&refresh_timer, refresh_timer_cb, REFRESH_DELAY, 0);
refresh_pending = true;
}
}
// libuv timer callback. This will enqueue on_refresh to be processed as an
// event.
-static void refresh_timer_cb(uv_timer_t *handle)
+static void refresh_timer_cb(TimeWatcher *watcher, void *data)
{
- event_push((Event) {.handler = on_refresh}, false);
+ loop_push_event(&loop, (Event) {.handler = on_refresh}, false);
refresh_pending = false;
}