diff options
| author | Guldoman <giulio.lettieri@gmail.com> | 2021-12-07 21:45:20 +0100 |
|---|---|---|
| committer | Guldoman <giulio.lettieri@gmail.com> | 2021-12-07 21:45:20 +0100 |
| commit | c16d6b3d8d02c35006ed277a8d98c53b2a77d61d (patch) | |
| tree | 00915961d329e0ab66982d4bd4a8ef44f4615794 | |
| parent | fdb29f28cf79fbdb7b5d935e32d565bb92377185 (diff) | |
| download | pragtical-c16d6b3d8d02c35006ed277a8d98c53b2a77d61d.tar.gz pragtical-c16d6b3d8d02c35006ed277a8d98c53b2a77d61d.zip | |
Avoid drawing hidden `TreeView` items
| -rw-r--r-- | data/plugins/treeview.lua | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/data/plugins/treeview.lua b/data/plugins/treeview.lua index 18d622e1..8edee393 100644 --- a/data/plugins/treeview.lua +++ b/data/plugins/treeview.lua @@ -366,15 +366,18 @@ end function TreeView:draw() self:draw_background(style.background2) + local _y, _h = self.position.y, self.size.y local doc = core.active_view.doc local active_filename = doc and system.absolute_path(doc.filename or "") for item, x,y,w,h in self:each_item() do - self:draw_item(item, - item.abs_filename == active_filename, - item == self.hovered_item, - x, y, w, h) + if y + h >= _y and y < _y + _h then + self:draw_item(item, + item.abs_filename == active_filename, + item == self.hovered_item, + x, y, w, h) + end end self:draw_scrollbar() |
