I think we are on a diverting course.
You're modifying an existing view to simulate VB.Net behavior.
I'm using the existing facilities of B4X to implement a functionality you need.
I tested the testDD_2 in post #11 on B4A and B4J (make sure you have the latest). It functions as required.
The behavior you see is not strange. It just means that the popup is triggered when you don't want it.
You want it when the target view gets focus and when the target view is edited and the text is changed.
This requires a global 'busy' switch to avoid false triggers. Originally I tested it on B4J (my preferred testing environment).
On B4A, the event sequence is slightly different, and false triggers occurred. I fixed it in testDD_V2.
Now about a completely different problem. Modifying an existing view is not easy
There is a Booklet 'CustomViews' in the Learn->Guides link on top of this page to show you how to add properties to custom views.
As
@Mahares inferred, it is a folly to apply expectations of one computer language to another.
B4X is a multiplatform language. VB.Net is not. The native views/controls available and the corresponding events are different on each platform.
This is determined by the operating system, not the computer language used.
Your efforts to modify MiniSearchView show courage in learning, and maybe you should continue.
To help debug what you have so far, is beyond my scope on this forum, and probably others too.
As in all debugging, use break points, try different things, read the manuals, and yes ask the Forum when you're stuck.
But ask only isolated snippets, with simplified examples, in code tags or attached zip files.
I looked at your code and I would have to spend a week trying figure it out. There may be others who could do better then I.