summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/clever_f/feedback_service.lua15
1 files changed, 15 insertions, 0 deletions
diff --git a/lua/clever_f/feedback_service.lua b/lua/clever_f/feedback_service.lua
index 9c2cdc3..98f51aa 100644
--- a/lua/clever_f/feedback_service.lua
+++ b/lua/clever_f/feedback_service.lua
@@ -120,6 +120,7 @@ local function require_host(host)
or type(host.register_events) ~= "function"
or type(host.remove_event_registration) ~= "function"
or type(host.stop_timer) ~= "function"
+ or type(host.supports_timers) ~= "function"
or type(host.supports_cursor_presentation) ~= "function"
or type(host.suppress_cursor_presentation) ~= "function"
or type(host.restore_cursor_presentation) ~= "function"
@@ -150,6 +151,8 @@ local function require_policy(service, host)
if type(service) ~= "table"
or type(service.evaluate_highlight_links) ~= "function"
or type(service.sample_acquisition) ~= "function"
+ or type(service.sample_markers) ~= "function"
+ or type(service.sample_timeouts) ~= "function"
then
fail("FeedbackService policy must evaluate highlight links", 3)
end
@@ -687,6 +690,18 @@ function FeedbackService:migrate_command(request)
}
end
+function FeedbackService:highlight_timer_delay()
+ local record = service_records[self]
+ if not record.policy:sample_markers().mark_char then
+ return nil
+ end
+ local delay = record.policy:sample_timeouts().highlight_timeout_ms
+ if delay == 0 or record.host:supports_timers() ~= true then
+ return nil
+ end
+ return delay
+end
+
function FeedbackService:evaluate_feature_links()
local record = service_records[self]
local rules = record.policy:evaluate_highlight_links()