From 2be5733bc13024c119f50c3e901ccc81a4f592b6 Mon Sep 17 00:00:00 2001 From: Cyberarm Date: Sat, 29 Jan 2022 10:08:33 -0600 Subject: [PATCH] Fixed Container not considering padding when clipping render area --- lib/cyberarm_engine/ui/elements/container.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/cyberarm_engine/ui/elements/container.rb b/lib/cyberarm_engine/ui/elements/container.rb index 1de5fd0..1ca1935 100644 --- a/lib/cyberarm_engine/ui/elements/container.rb +++ b/lib/cyberarm_engine/ui/elements/container.rb @@ -57,7 +57,12 @@ module CyberarmEngine end def render - Gosu.clip_to(@x, @y, width, height) do + Gosu.clip_to( + @x + @style.border_thickness_left + @style.padding_left, + @y + @style.border_thickness_top + @style.padding_top, + content_width + 1, + content_height + 1 + ) do @children.each(&:draw) end end @@ -103,6 +108,8 @@ module CyberarmEngine stylize + # s = Gosu.milliseconds + layout if is_root? @@ -134,6 +141,8 @@ module CyberarmEngine child.y >= @y - child.height && child.y <= @y + height end + # puts "TOOK: #{Gosu.milliseconds - s}ms to recalculate #{self.class}:0x#{self.object_id.to_s(16)}" + update_background end