Bug 33009 - Save layouts and preferences more frequently
Summary: Save layouts and preferences more frequently
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: Project Management ()
Version: Trunk
Hardware: PC Mac OS
: Normal normal
Target Milestone: (C8)
Assignee: Bugzilla
Depends on:
Reported: 2015-08-12 12:42 UTC by Mikayla Hutchinson [MSFT]
Modified: 2016-07-04 18:36 UTC (History)
7 users (show)

Tags: papercut
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Mikayla Hutchinson [MSFT] 2015-08-12 12:42:48 UTC
XS should save layout changes and preferences changes more frequently, so they're not lost if the IDE crashes.

* Keybindings and prefs could be saved when the preferences dialog is closed.
* Default policies could be saved when policies dialog is closed.

Changes to layouts and changes to preferences from elsewhere than the prefs dialog are a little trickier. Maybe they could set some kind of dirty flag and trigger a timeout to save the changes.
Comment 1 Arpit Jha 2015-08-18 08:12:40 UTC
I have checked this issue and observed that preferences section in XS does not perform automatically saved.

Steps I have followed:
1.Open Preference window from XS ->Preference->KeyBinding.
2.Set Binding Key.
3.Close Preference window.
4.Open Preference window from XS ->Preference->KeyBinding.

observed that KeyBinding does not saved automatically on closing window.

Could you please confirm that are you talking about the same behaviour  or any other steps to reproduce this issue.

Screencast: http://www.screencast.com/t/QLy443Rp

Environment Info:
=== Xamarin Studio ===

Version 5.9.5 (build 9)
Installation UUID: 3d25a767-a003-4a7d-9f5e-e57987cf6cf0
	Mono 4.0.3 ((detached/d6946b4)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 400030020

=== Xamarin.Android ===

Version: (Starter Edition)
Android SDK: /Users/mac360_xamarin/Library/Developer/Xamarin/android-sdk-macosx
	Supported Android versions:
		2.3    (API level 10)
		4.0.3  (API level 15)
		4.1    (API level 16)
		4.4    (API level 19)
		4.4.87 (API level 20)
		5.0    (API level 21)
		5.1    (API level 22)
Java SDK: /usr
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

=== Xamarin Android Player ===

Version: Unknown version
Location: /Applications/Xamarin Android Player.app

=== Apple Developer Tools ===

Xcode 6.4 (7720)
Build 6E35b

=== Xamarin.iOS ===

Version: (Starter Edition)
Hash: 9622cee
Branch: master
Build date: 2015-08-16 13:52:37-0400

=== Xamarin.Mac ===

Version: (Starter Edition)

=== Build Information ===

Release ID: 509050009
Git revision: b99cb19a1d3b15d8980c4616f13f837457e5b292
Build date: 2015-07-28 02:01:44-04
Xamarin addins: d53d6eceb828422f3d4aff8547f2f6bab6c9ea58

=== Operating System ===

Mac OS X 10.10.4
Darwin mac360-xamarins-Mac-mini.local 14.4.0 Darwin Kernel Version 14.4.0
    Thu May 28 11:35:04 PDT 2015
    root:xnu-2782.30.5~1/RELEASE_X86_64 x86_64
Comment 2 Mikayla Hutchinson [MSFT] 2015-08-18 11:27:45 UTC
You don't need to confirm this, it's a known issue.
Comment 3 Stephen Shaw 2015-12-11 00:37:45 UTC
I have a similar bug to this over here: https://bugzilla.xamarin.com/show_bug.cgi?id=25609
Comment 4 Hylke Bons 2016-02-08 19:47:18 UTC
All in favour of preferences dropping the OK/Cancel pattern and becoming instant apply. Though we'd need some kind of Undo in that case.

Since preferences are so many and the categories sometimes seem arbitrary, I've been having ideas about flexible searchable panels, including a "Recently Changed" panel. But that's something for later.
Comment 7 iain 2016-02-19 15:43:53 UTC
As far as I can tell, the preferences and policies are saved once you click the Ok button, closing the dialogs with either the cancel button or the window close button do not save the changes. Maybe I'm missing something?
Comment 8 Mikayla Hutchinson [MSFT] 2016-02-19 19:22:53 UTC
Ah, okay, my mistake.

There are many other places where values on PropertyService and UserProperties can get set though and they're all lost if there's a crash. IMO we should have timer based saving on PropertyService and UserProperties.
Comment 9 xamarin-release-manager 2016-04-04 09:25:49 UTC
Fixed in version (master)

Author: iain holmes
Commit: dd78e19a911ec11a1ab072ad4a19d39649df981e (mono/monodevelop)
Comment 11 Lluis Sanchez 2016-06-30 14:43:41 UTC
Jatin, the use case you are testing is not valid. You MUST press OK to save the changes in the preferences dialog.
Comment 14 narayanp 2016-07-04 18:36:17 UTC
As per comment #11 and #13, You must press OK to save the changes in the preferences dialog and the changes in the option dialog are only saved when you click OK.

Hence, I am closing this issue