### Godot version

v4.1.stable.official [970459615]

### System information

Godot v4.1.stable - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1660 Ti (NVIDIA; 31.0.15.3598) - AMD Ryzen 7 3700X 8-Core Processor (16 Threads)

### Issue description

is_input_handled() is returning True, even though set_input_as_handled() has not been called.

Example:
`func _input_event(viewport, event, shape_idx):
	print(viewport.is_input_handled())`

Returns 'True', should return 'False'

### Steps to reproduce

1. Create a new project and add a Node2D as the root
2. Add a child Area2D node containing a CollisionShape2D and a Sprite2D
3. Either create the _input_event(viewport, event, shape_idx) or connect _on_input_event(viewport, event, shape_idx)
4. Print viewport.is_input_handled()
5. True is printed.

### Minimal reproduction project

[input_test.zip](https://github.com/godotengine/godot/files/12063748/input_test.zip)

ERR_FAIL_NULL(p_control);
	ERR_FAIL_COND(p_control->is_inside_tree());
	ERR_FAIL_COND(p_control->get_parent() != nullptr);
	Control *drag_preview = _gui_get_drag_preview();
	if (drag_preview) {
		memdelete(drag_preview);
	}
	p_control->set_as_top_level(true);
	p_control->set_position(gui.last_mouse_pos);
	p_base->get_root_parent_control()->add_child(p_control); 
	p_control->move_to_front();
	gui.drag_preview_id = p_control->get_instance_id();
}
Control *Viewport::_gui_get_drag_preview() {
	if (gui.drag_preview_id.is_null()) {
		return nullptr;
	} else {
		Control *drag_preview = Object::cast_to<Control>(ObjectDB::get_instance(gui.drag_preview_id));
		if (!drag_preview) {
			ERR_PRINT("Don't free the control set as drag preview.");
			gui.drag_preview_id = ObjectID();
		}
		return drag_preview;
	}
}
void Viewport::_gui_remove_root_control(List<Control *>::Element *RI) {