diff options
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/clever_f/sequence_coordinator.lua | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lua/clever_f/sequence_coordinator.lua b/lua/clever_f/sequence_coordinator.lua index 350c026..f5e8a95 100644 --- a/lua/clever_f/sequence_coordinator.lua +++ b/lua/clever_f/sequence_coordinator.lua @@ -276,6 +276,14 @@ function SequenceCoordinator:stored_primary_resolution( if stored_descriptor == nil or stored_target == nil then fail("repeat-eligible primary state must contain descriptor and target", 2) end + local resolver = coordinator_records[self].repeat_resolver + if type(resolver.resolve_primary_direction) ~= "function" then + fail("SequenceCoordinator repeat resolver must resolve primary direction", 2) + end + local effective_descriptor = resolver:resolve_primary_direction( + stored_descriptor, + pressed_descriptor + ) return { kind = "repeat", invocation = invocation, @@ -283,6 +291,7 @@ function SequenceCoordinator:stored_primary_resolution( timeout = timeout, stored_descriptor = stored_descriptor, target = stored_target, + effective_descriptor = effective_descriptor, } end |
