Expose the keyView as a property 

Expose the keyView as a property and fallback to the last view on the window hierarchy when it's not set.

If the view hierarchy has a complex structure and the top view on the window is not always the one we want our icons to be added on, there is a need to supply our own target view. 

In my case, I had a floating element that was at times hidden- when that happened and an icon was dragged, the icon disappeared. Being able to supply my own keyView fixed the problem.