The current code overrides View.onWindowVisibilityChange. This covers
the case where the window is hidden intentionally by the application
developer.
However, it doesn't cover the case where the developer hides just the
view, using, for example, something like
adWhirlLayoutInstance.setVisibility(INVISIBLE). This causes the ad
frame to hide but the ad requests keep firing. My suggestion would be
to override View.onVisibilityChange in AdWhirlLayout to set hasWindow to
false if the view is hidden.
So, currently, there doesn't appear to me to be a way to pause the ads
without hiding the entire window, which won't work in my use case.
Nick