private void initializeMapViewLongClick() {
        new Handler().post(() -> {
            final View mapViewSelect = findViewById(R.id.menu_select_mapview);
            if (mapViewSelect != null) {
                mapViewSelect.setOnLongClickListener(v -> {
                    final AbstractTileProvider localTileProvider = Settings.getPreviousTileProvider();
                    Settings.setPreviousTileProvider(tileProvider);
                    changeMapSource(localTileProvider);
                    return true;
                });
            }
        });
    }
to be called by map fragments' observers for zoom level change
main/src/main/java/cgeo/geocaching/unifiedmap/UnifiedMapActivity.java