protected async override void OnDisappearing() { await StopAeration(); if (fluidSim != null) { fluidSim.Stop(); } if (shakeCancelledSource != null) { shakeCancelledSource.Cancel(); } vm.SavePrefs(); // Save preferences here to minimize IO. base.OnDisappearing(); }