diff --git a/editor/src/messages/tool/tool_messages/path_tool.rs b/editor/src/messages/tool/tool_messages/path_tool.rs index 6512bdd7d9..9010b0d7f4 100644 --- a/editor/src/messages/tool/tool_messages/path_tool.rs +++ b/editor/src/messages/tool/tool_messages/path_tool.rs @@ -362,6 +362,7 @@ impl LayoutHolder for PathTool { impl<'a> MessageHandler> for PathTool { fn process_message(&mut self, message: ToolMessage, responses: &mut VecDeque, context: &mut ToolActionMessageContext<'a>) { let updating_point = message == ToolMessage::Path(PathToolMessage::SelectedPointUpdated); + let old_editable = self.tool_data.make_path_editable_is_allowed; match message { ToolMessage::Path(PathToolMessage::UpdateOptions { options }) => match options { @@ -417,6 +418,11 @@ impl<'a> MessageHandler> for Path if updating_point { self.send_layout(responses, LayoutTarget::ToolOptions); } + + if self.tool_data.make_path_editable_is_allowed != old_editable { + // It is necessary to update the menu bar's "make path editable" enabled state + responses.add(MenuBarMessage::SendLayout); + } } // Different actions depending on state may be wanted: