Skip to content

Commit

Permalink
Merge pull request godotengine#96765 from adamscott/selecting-locked
Browse files Browse the repository at this point in the history
Fix issue where editable children of 3D nodes would be selected
  • Loading branch information
akien-mga authored Sep 9, 2024
2 parents 27552a2 + 9d735b0 commit 2124995
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 8 deletions.
10 changes: 3 additions & 7 deletions editor/plugins/node_3d_editor_plugin.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -810,7 +810,7 @@ ObjectID Node3DEditorViewport::_select_ray(const Point2 &p_pos) const {
Vector<Node3D *> nodes_with_gizmos = Node3DEditor::get_singleton()->gizmo_bvh_ray_query(pos, pos + ray * camera->get_far());

for (Node3D *spat : nodes_with_gizmos) {
if (!spat) {
if (!spat || _is_node_locked(spat)) {
continue;
}

Expand Down Expand Up @@ -1557,7 +1557,7 @@ void Node3DEditorViewport::_surface_focus_exit() {
view_menu->set_disable_shortcuts(true);
}

bool Node3DEditorViewport ::_is_node_locked(const Node *p_node) {
bool Node3DEditorViewport::_is_node_locked(const Node *p_node) const {
return p_node->get_meta("_edit_lock_", false);
}

Expand Down Expand Up @@ -1935,11 +1935,7 @@ void Node3DEditorViewport::_sinput(const Ref<InputEvent> &p_event) {

if (after != EditorPlugin::AFTER_GUI_INPUT_CUSTOM) {
// Single item selection.
Vector<_RayResult> selection;
_find_items_at_pos(b->get_position(), selection, false);
if (!selection.is_empty()) {
clicked = selection[0].item->get_instance_id();
}
clicked = _select_ray(b->get_position());

selection_in_progress = true;

Expand Down
2 changes: 1 addition & 1 deletion editor/plugins/node_3d_editor_plugin.h
Original file line number Diff line number Diff line change
Expand Up @@ -460,7 +460,7 @@ class Node3DEditorViewport : public Control {

bool previewing_camera = false;
bool previewing_cinema = false;
bool _is_node_locked(const Node *p_node);
bool _is_node_locked(const Node *p_node) const;
void _preview_exited_scene();
void _toggle_camera_preview(bool);
void _toggle_cinema_preview(bool);
Expand Down

0 comments on commit 2124995

Please sign in to comment.