set/restore FullScreenMode 

I changed the delegate, now the user needs to set/restore the FullScreenMode. 
I also fixed a possible memory leak