I don't like this approach. Please fire an event 'uninstalledapp' in uninstall method in grid and grid_components so you listen for that when actually was deleted