diff --git a/IDE/src/Settings.bf b/IDE/src/Settings.bf index 0a6c88c4..f9bfb9f0 100644 --- a/IDE/src/Settings.bf +++ b/IDE/src/Settings.bf @@ -310,6 +310,7 @@ namespace IDE public Colors mColors = new .() ~ delete _; public AutoCompleteShowKind mAutoCompleteShowKind = .PanelIfVisible; public bool mAutoCompleteRequireTab = false; + public bool mAutoCompleteOnEnter = true; public bool mAutoCompleteShowDocumentation = true; public bool mShowLocatorAnim = true; public bool mHiliteCursorReferences = true; @@ -331,6 +332,7 @@ namespace IDE sd.Add("UIScale", mUIScale); sd.Add("AutoCompleteShowKind", mAutoCompleteShowKind); sd.Add("AutoCompleteRequireTab", mAutoCompleteRequireTab); + sd.Add("AutoCompleteOnEnter", mAutoCompleteOnEnter); sd.Add("AutoCompleteShowDocumentation", mAutoCompleteShowDocumentation); sd.Add("ShowLocatorAnim", mShowLocatorAnim); sd.Add("HiliteCursorReferences", mHiliteCursorReferences); @@ -358,6 +360,7 @@ namespace IDE sd.Get("UIScale", ref mUIScale); sd.Get("AutoCompleteShowKind", ref mAutoCompleteShowKind); sd.Get("AutoCompleteRequireTab", ref mAutoCompleteRequireTab); + sd.Get("AutoCompleteOnEnter", ref mAutoCompleteOnEnter); sd.Get("AutoCompleteShowDocumentation", ref mAutoCompleteShowDocumentation); sd.Get("ShowLocatorAnim", ref mShowLocatorAnim); sd.Get("HiliteCursorReferences", ref mHiliteCursorReferences); diff --git a/IDE/src/ui/SettingsDialog.bf b/IDE/src/ui/SettingsDialog.bf index 6dbb80e9..90d39645 100644 --- a/IDE/src/ui/SettingsDialog.bf +++ b/IDE/src/ui/SettingsDialog.bf @@ -78,6 +78,7 @@ namespace IDE.ui AddPropertiesItem(category, "UI Scale", "mUIScale"); AddPropertiesItem(category, "Autocomplete", "mAutoCompleteShowKind"); AddPropertiesItem(category, "Autocomplete Require Tab", "mAutoCompleteRequireTab"); + AddPropertiesItem(category, "Autocomplete on Enter", "mAutoCompleteOnEnter"); AddPropertiesItem(category, "Autocomplete Show Documentation", "mAutoCompleteShowDocumentation"); AddPropertiesItem(category, "Show Locator Animation", "mShowLocatorAnim"); AddPropertiesItem(category, "Hilite Symbol at Cursor", "mHiliteCursorReferences"); diff --git a/IDE/src/ui/SourceEditWidgetContent.bf b/IDE/src/ui/SourceEditWidgetContent.bf index 2db1aec6..ec253297 100644 --- a/IDE/src/ui/SourceEditWidgetContent.bf +++ b/IDE/src/ui/SourceEditWidgetContent.bf @@ -2091,7 +2091,11 @@ namespace IDE.ui return; } - bool isCompletionChar = ((keyChar == '\t') || (keyChar == '\r')) && (!mWidgetWindow.IsKeyDown(.Shift)); + bool isCompletionChar = + ((keyChar == '\t') || + ((keyChar == '\r') && (gApp.mSettings.mEditorSettings.mAutoCompleteOnEnter))) && + (!mWidgetWindow.IsKeyDown(.Shift)); + if ((gApp.mSymbolReferenceHelper != null) && (gApp.mSymbolReferenceHelper.IsRenaming)) { if ((keyChar == '\r') || (keyChar == '\n'))