diff options
Diffstat (limited to 'lua/clever_f/feedback_service.lua')
| -rw-r--r-- | lua/clever_f/feedback_service.lua | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lua/clever_f/feedback_service.lua b/lua/clever_f/feedback_service.lua index c5c9fc8..6972d70 100644 --- a/lua/clever_f/feedback_service.lua +++ b/lua/clever_f/feedback_service.lua @@ -115,6 +115,7 @@ local function require_host(host) or type(host.read_window) ~= "function" or type(host.register_events) ~= "function" or type(host.remove_event_registration) ~= "function" + or type(host.stop_timer) ~= "function" or type(host.supports_cursor_presentation) ~= "function" or type(host.suppress_cursor_presentation) ~= "function" or type(host.restore_cursor_presentation) ~= "function" @@ -499,11 +500,19 @@ local function release_finalizers(record, resources) end end +local function release_highlight_timer(record, identity) + if identity == nil then + return false + end + return record.host:stop_timer(identity) +end + function FeedbackService:full_finalize(window) local record = service_records[self] window = window or record.host:read_window() local cleanup = record.transitions:FullFinalization(window) release_finalizers(record, cleanup.finalizers) + release_highlight_timer(record, cleanup.highlight_timer) release_target_overlays(record, cleanup.target_overlays) record.owned_finalizer = nil return cleanup |
