aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ui_bridge.c
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2017-12-11 23:05:36 +0100
committerJustin M. Keyes <justinkz@gmail.com>2017-12-13 22:17:39 +0100
commit6b51c72e0cc99c6c03c521f77793028cf63afd45 (patch)
tree8d99fc28882dca17d57cabdbf0158d24d9a1883b /src/nvim/ui_bridge.c
parent6203c23449cfdf8fb09c33d3ab267703d57123fa (diff)
downloadrneovim-6b51c72e0cc99c6c03c521f77793028cf63afd45.tar.gz
rneovim-6b51c72e0cc99c6c03c521f77793028cf63afd45.tar.bz2
rneovim-6b51c72e0cc99c6c03c521f77793028cf63afd45.zip
tui: rework deferred-termcodes implementation
Try another approach to defer the termcodes. Seems less janky, but still not perfect. ref #7664 ref #7649 ref #7664 ref 27f9b1c7b029d8
Diffstat (limited to 'src/nvim/ui_bridge.c')
-rw-r--r--src/nvim/ui_bridge.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/nvim/ui_bridge.c b/src/nvim/ui_bridge.c
index 0a69cf0ecb..324d821df5 100644
--- a/src/nvim/ui_bridge.c
+++ b/src/nvim/ui_bridge.c
@@ -42,6 +42,7 @@ UI *ui_bridge_attach(UI *ui, ui_main_fn ui_main, event_scheduler scheduler)
rv->ui = ui;
rv->bridge.rgb = ui->rgb;
rv->bridge.stop = ui_bridge_stop;
+ rv->bridge.after_startup = ui_bridge_after_startup;
rv->bridge.resize = ui_bridge_resize;
rv->bridge.clear = ui_bridge_clear;
rv->bridge.eol_clear = ui_bridge_eol_clear;
@@ -106,6 +107,16 @@ static void ui_thread_run(void *data)
bridge->ui_main(bridge, bridge->ui);
}
+static void ui_bridge_after_startup(UI *b)
+{
+ UI_BRIDGE_CALL(b, after_startup, 1, b);
+}
+static void ui_bridge_after_startup_event(void **argv)
+{
+ UI *ui = UI(argv[0]);
+ ui->after_startup(ui);
+}
+
static void ui_bridge_stop(UI *b)
{
UIBridgeData *bridge = (UIBridgeData *)b;