Added Doc:on_close() for plugins
This commit is contained in:
parent
bd02095a13
commit
1a51dad23c
|
@ -1,5 +1,6 @@
|
|||
local Object = require "core.object"
|
||||
local Highlighter = require "core.doc.highlighter"
|
||||
local core = require "core"
|
||||
local syntax = require "core.syntax"
|
||||
local config = require "core.config"
|
||||
local common = require "core.common"
|
||||
|
@ -181,10 +182,10 @@ local function selection_iterator(invariant, idx)
|
|||
end
|
||||
end
|
||||
|
||||
-- If idx_reverse is true, it'll reverse iterate. If nil, or false, regular iterate.
|
||||
-- If idx_reverse is true, it'll reverse iterate. If nil, or false, regular iterate.
|
||||
-- If a number, runs for exactly that iteration.
|
||||
function Doc:get_selections(sort_intra, idx_reverse)
|
||||
return selection_iterator, { self.selections, sort_intra, idx_reverse },
|
||||
return selection_iterator, { self.selections, sort_intra, idx_reverse },
|
||||
idx_reverse == true and ((#self.selections / 4) + 1) or ((idx_reverse or -1)+1)
|
||||
end
|
||||
-- End of cursor seciton.
|
||||
|
@ -493,5 +494,10 @@ end
|
|||
function Doc:on_text_change(type)
|
||||
end
|
||||
|
||||
-- For plugins to get notified when a document is closed
|
||||
function Doc:on_close()
|
||||
core.log_quiet("Closed doc \"%s\"", self:get_name())
|
||||
end
|
||||
|
||||
|
||||
return Doc
|
||||
|
|
|
@ -972,7 +972,7 @@ function core.step()
|
|||
local doc = core.docs[i]
|
||||
if #core.get_views_referencing_doc(doc) == 0 then
|
||||
table.remove(core.docs, i)
|
||||
core.log_quiet("Closed doc \"%s\"", doc:get_name())
|
||||
doc:on_close()
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue