Source code attached. Any response is welcome.
1. In win32 compiler warning about "ss", "se" and "iMouseSelect": Mixing signed expressions and longwords gives a 64bit result. Change it (ss and se) to Integer.
2. Since you implement "Nothing is selected at activation", for the first time after starting, if you select any text in the combobox (with the mouse) and move the focus to another control (with the mouse), the selected text remains (.SelLength := 0 in WM_KILLFOCUS not work, because in EM_SETSEL skipped by .bAllow_EM_SETSEL = False).
3. Behavior differs from TEdit. If in TEdit the text (for example all) is selected, then when you return the focus using the mouse (poke in the middle), there is no selection. But for Combobox remains (from the point of hit to the end).
Is it necessary to output cbi to the public section. Maybe the "internal kitchen" will be in the private section?