summaryrefslogtreecommitdiff
path: root/lua/clever_f/acquisition_service.lua
diff options
context:
space:
mode:
authorJackson Moore <jacksonmoore@tuta.io>2026-09-04 12:05:17 +0200
committerJackson Moore <jacksonmoore@tuta.io>2026-09-04 12:05:17 +0200
commitb5a2d9934368ff15fb195abc1ef69b45226c5b06 (patch)
tree4d44fad51c63532a8e73a898f5121a205addbe2a /lua/clever_f/acquisition_service.lua
parent3402c8557af220be7129b3bed0d2fa93eac4a724 (diff)
Reuse present cached target
Diffstat (limited to 'lua/clever_f/acquisition_service.lua')
-rw-r--r--lua/clever_f/acquisition_service.lua9
1 files changed, 9 insertions, 0 deletions
diff --git a/lua/clever_f/acquisition_service.lua b/lua/clever_f/acquisition_service.lua
index bf3a5e9..a81c501 100644
--- a/lua/clever_f/acquisition_service.lua
+++ b/lua/clever_f/acquisition_service.lua
@@ -183,6 +183,7 @@ function TemporaryResourceScope.new(request, feedback)
cursor_presentation_lease = nil,
input_packet = nil,
acquired_target = nil,
+ resolved_target = nil,
previous_input_trigger = nil,
previous_target_source = nil,
cached_target = nil,
@@ -224,6 +225,10 @@ function TemporaryResourceScope:set_acquired_target(target)
return set_scope_resource(self, "acquired_target", target)
end
+function TemporaryResourceScope:set_resolved_target(target)
+ return set_scope_resource(self, "resolved_target", target)
+end
+
function TemporaryResourceScope:set_previous_input_trigger(trigger)
return set_scope_resource(self, "previous_input_trigger", trigger)
end
@@ -632,7 +637,11 @@ function AcquisitionService:acquire(descriptor, context, position, count, macro_
if trigger ~= nil then
local cached_target, source = M.read_previous_target(record.state)
scope:set_cached_target(source, cached_target)
+ if cached_target ~= nil then
+ target = cached_target
+ end
end
+ scope:set_resolved_target(target)
return AcquisitionResult.new(request, {
target = target,
previous_input_trigger = trigger,