From fc9f191380c22a5cbaf263724c07d3f139d4931a Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Sun, 30 Aug 2020 10:19:04 -0700 Subject: [PATCH] Fixed autocomplete reftype colorization flashing --- IDEHelper/Compiler/BfCompiler.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/IDEHelper/Compiler/BfCompiler.cpp b/IDEHelper/Compiler/BfCompiler.cpp index 8d1c0dc4..dbd4f013 100644 --- a/IDEHelper/Compiler/BfCompiler.cpp +++ b/IDEHelper/Compiler/BfCompiler.cpp @@ -3821,6 +3821,13 @@ void BfCompiler::ProcessAutocompleteTempType() tempTypeDef = checkTempType; mContext->HandleChangedTypeDef(tempTypeDef, true); } + + BfSourceElementType elemType = BfSourceElementType_Type; + if (checkTempType->mTypeCode == BfTypeCode_Interface) + elemType = BfSourceElementType_Interface; + else if (checkTempType->mTypeCode == BfTypeCode_Object) + elemType = BfSourceElementType_RefType; + mResolvePassData->mSourceClassifier->SetElementType(checkTempType->mTypeDeclaration->mNameNode, elemType); } if (tempTypeDef == NULL) @@ -3946,14 +3953,7 @@ void BfCompiler::ProcessAutocompleteTempType() if ((typeInst->mModule != NULL) && (!typeInst->mModule->mIsScratchModule)) mLastAutocompleteModule = typeInst->mModule; #endif - - BfSourceElementType elemType = BfSourceElementType_Type; - if (typeInst->IsInterface()) - elemType = BfSourceElementType_Interface; - else if (typeInst->IsObject()) - elemType = BfSourceElementType_RefType; - mResolvePassData->mSourceClassifier->SetElementType(tempTypeDef->mTypeDeclaration->mNameNode, elemType); - + SetAndRestoreValue prevType(module->mCurTypeInstance, typeInst); typeState.mTypeInstance = typeInst;