extends PanelContainer var accent := Color("91dbea") func _ready() -> void: mouse_filter = Control.MOUSE_FILTER_IGNORE z_index = 1 resized.connect(queue_redraw) minimum_size_changed.connect(func() -> void: _fit_popup.call_deferred()) _fit_popup.call_deferred() func _fit_popup() -> void: reset_size() var shell := get_parent() if shell is Control and shell.get_parent() is Window: shell.reset_size() shell = shell.get_parent() if shell is Window: # The engine popup otherwise retains its first, unwrapped text height. shell.size = Vector2i(get_combined_minimum_size().ceil()) + Vector2i(4, 4) func _draw() -> void: # Crisp etched corner brackets and a top accent; no blurred shadow. var inset := 5.0 var length := 12.0 for corner in [Vector2(inset, inset), Vector2(size.x - inset, inset), Vector2(inset, size.y - inset), Vector2(size.x - inset, size.y - inset)]: var inward := Vector2(1 if corner.x < size.x * 0.5 else -1, 1 if corner.y < size.y * 0.5 else -1) draw_line(corner, corner + Vector2(inward.x * length, 0), accent, 1.5, true) draw_line(corner, corner + Vector2(0, inward.y * length), accent, 1.5, true) draw_line(Vector2(22, 1), Vector2(minf(size.x - 22, 112), 1), accent, 2, true)