Godot Version
4.3, 4.2
Question
As the titles says, the preview of drag and drop is misplaced when using Control Node with multiple PanelContainer with Camera2D. Example:
Without camera2D:
With camera2D:
Code:
extends PanelContainer
@onready var texture_rect: TextureRect = $TextureRect
func _get_drag_data(at_position: Vector2) -> Variant:
set_drag_preview(get_preview())
return texture_rect
func _can_drop_data(at_position: Vector2, data: Variant) -> bool:
return data is TextureRect
func _drop_data(at_position: Vector2, data: Variant) -> void:
var temp = texture_rect.texture
texture_rect.texture = data.texture
data.texture = temp
func get_preview() -> Control:
var preview_texture = TextureRect.new()
preview_texture.texture = texture_rect.texture
preview_texture.expand_mode = 1
preview_texture.size = Vector2(16,16)
preview_texture.z_index = 3
var preview = Control.new()
print(preview.position)
preview.add_child(preview_texture)
return preview