I removed ObserveOnDispatcher but it didn't make any difference when executing on the device or emulator. Actually when the TailSpin app is running in the emulator, the menu delay is not noticible at all, even when hitting against the Windows Azure services.
The issue is very noticible on the phyiscal device.
Given that the Submit() method is in the SurveyTemplateViewModel along with RaisePropertyChanged(()=>this.IsFavorite), I'm not quite clear where to put the UI update. The collection of favorite surveys is refreshed in the SurveyListViewModel (ListenSurveyChanges).
If this functionality was added to TailSpin, is having the Submit in the surveyTemplateViewModel the best place? Alternatively, I could move the Submit code block into the ListenSurveyChanges. I've tried both approaches and the delay in dismissing the
context menu seems consistent in both scenarios.
How else might you achieve this?