SciTE calltips which are manually started don't work as well as the ones which are automatically started. This is because in IDM_SHOWCALLTIP's handler it doesnt initialize braceCount to 1 unlike in CharAdded.
This leads two a problem with 'nested' calltips.
For example with C calltips enabled:
If you in step 2 instead open an empty .c file and type fprintf( yourself then it will work even if you do Esc followed by Ctrl+Shift+Space after that because doing so will mean braceCount happens to be 1 instead of 0 when IDM_SHOWCALLTIP starts the calltip.
FYI, in the meantime I think I've noticed a similar situation in
SciTEBase::CharAddedinside theelse if (wEditor.AutoCActive())bit: here it doesbraceCount++before callingStartCallTip();. This causes a problem if earlier some calltip was canceled which leavesbraceCountat some number which has become meaningless. Not sure what the fix would be, I think it's incrementing instead of setting to 1 to handle the case when the user is manually switching between autocomplete and calltips while entering a long function call?