diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2016-09-19 14:20:28 +0200 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2016-09-19 14:20:28 +0200 |
| commit | 478b86451c7896b5dc7f18962975a42549686b8e (patch) | |
| tree | 4226a5f7c98b7929471ce22efc8616869e460064 /vis-lua.c | |
| parent | cea4400702eb0eeba57598540388d98a5104cb2d (diff) | |
| download | vis-478b86451c7896b5dc7f18962975a42549686b8e.tar.gz vis-478b86451c7896b5dc7f18962975a42549686b8e.tar.xz | |
vis-lua: expose file open event to lua
The event is only triggerred for new files read from disk (e.g.
splitting an existing window will not cause an event to be emitted).
Diffstat (limited to 'vis-lua.c')
| -rw-r--r-- | vis-lua.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -1503,6 +1503,13 @@ void vis_lua_quit(Vis *vis) { void vis_lua_file_open(Vis *vis, File *file) { debug("event: file-open: %s %p %p\n", file->name ? file->name : "unnamed", (void*)file, (void*)file->text); + lua_State *L = vis->lua; + vis_lua_event_get(L, "file_open"); + if (lua_isfunction(L, -1)) { + obj_ref_new(L, file, "vis.file"); + pcall(vis, L, 1, 0); + } + lua_pop(L, 1); } void vis_lua_file_save(Vis *vis, File *file) { |
