**Background**

We are running our application in XenDesktop mode and our window shows some real time information. But if some other application is also launched in that XenDekstop and that application is overlapping our window then we want to stop rendering. And once its moved out of our window then we want to start rendering again. Unfortunately, right now these kind of notifications are not supported by Citrix. 

**Question**

How can we detect when a part or the whole of the application window has been overlapped by other windows, and also detect when that's no longer the case?

I found the [WindowFromPoint](https://msdn.microsoft.com/en-us/library/windows/desktop/ms633558(v=vs.85).aspx) family of functions when Googling, however, that is not practical for my purpose because I'd need to keep polling all co-ordinates that my window covers.

**Bonus points:** For a start, it's enough if I can just detect when such overlapping occurs. However, if I can detect exactly which area(s) of my window is/are covered that would be great.