diff options
author | Luuk van Baal <luukvbaal@gmail.com> | 2024-04-26 16:21:56 +0200 |
---|---|---|
committer | Luuk van Baal <luukvbaal@gmail.com> | 2024-04-26 16:42:08 +0200 |
commit | 7626f431d84fc3a6eb82d0d23d436e3e31e991ce (patch) | |
tree | 3ef752fc6552e24f4e430b350342703ada1d76d7 /src/nvim/ui.c | |
parent | d855c7a2fb3315f4fb05becff798e42833792fe5 (diff) | |
download | rneovim-7626f431d84fc3a6eb82d0d23d436e3e31e991ce.tar.gz rneovim-7626f431d84fc3a6eb82d0d23d436e3e31e991ce.tar.bz2 rneovim-7626f431d84fc3a6eb82d0d23d436e3e31e991ce.zip |
fix(ui): update ext_ui widgets when attaching non-remote UI
Problem: Updating internalized UI capabilities is postponed until a
remote UI attaches.
Solution: Always update active UI widgets in ui_refresh().
Diffstat (limited to 'src/nvim/ui.c')
-rw-r--r-- | src/nvim/ui.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/nvim/ui.c b/src/nvim/ui.c index 75af543448..dd3bb53dde 100644 --- a/src/nvim/ui.c +++ b/src/nvim/ui.c @@ -194,15 +194,6 @@ void ui_refresh(void) abort(); } - if (!ui_active()) { - return; - } - - if (updating_screen) { - ui_schedule_refresh(); - return; - } - int width = INT_MAX; int height = INT_MAX; bool ext_widgets[kUIExtCount]; @@ -234,11 +225,19 @@ void ui_refresh(void) } ui_ext[i] = ext_widgets[i]; if (i < kUIGlobalCount) { - ui_call_option_set(cstr_as_string(ui_ext_names[i]), - BOOLEAN_OBJ(ext_widgets[i])); + ui_call_option_set(cstr_as_string(ui_ext_names[i]), BOOLEAN_OBJ(ext_widgets[i])); } } + if (!ui_active()) { + return; + } + + if (updating_screen) { + ui_schedule_refresh(); + return; + } + ui_default_colors_set(); int save_p_lz = p_lz; |