fix #12934 - Add new MapViewState class that stores the current state of the map view (patch by michael2402) - gsoc-core