Bug 57454 "show intro" preference not saved until shutdown
M8 As a general rule of thumb, if a plug-in changes a preference value then it should save it immediately. (or when the user hits OK/Apply in the prefs page, etc etc) When you start M8 and close the Intro page, I noticed that the ui.ide preferences are not saved until the workbench is shutdown.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/IDEWorkbenchAdvisor.java
declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_ETOOL_NEXT_NAV, PATH_ETOOL+"next_nav.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_ETOOL_PREVIOUS_NAV, PATH_ETOOL+"prev_nav.gif", false); 
				
		declareWorkbenchImage(IWorkbenchGraphicConstants.IMG_WIZBAN_NEW_WIZ, PATH_WIZBAN+"new_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_NEWPRJ_WIZ, PATH_WIZBAN+"newprj_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_NEWFOLDER_WIZ, PATH_WIZBAN+"newfolder_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_NEWFILE_WIZ, PATH_WIZBAN+"newfile_wiz.gif", false); 
	
		declareWorkbenchImage(IWorkbenchGraphicConstants.IMG_WIZBAN_IMPORT_WIZ, PATH_WIZBAN+"import_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_IMPORTDIR_WIZ, PATH_WIZBAN+"importdir_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_IMPORTZIP_WIZ, PATH_WIZBAN+"importzip_wiz.gif", false); 
	
		declareWorkbenchImage(IWorkbenchGraphicConstants.IMG_WIZBAN_EXPORT_WIZ, PATH_WIZBAN+"export_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_EXPORTDIR_WIZ, PATH_WIZBAN+"exportdir_wiz.gif", false); 
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_EXPORTZIP_WIZ, PATH_WIZBAN+"exportzip_wiz.gif", false); 
	
		declareWorkbenchImage(IDEInternalWorkbenchImages.IMG_WIZBAN_RESOURCEWORKINGSET_WIZ, PATH_WIZBAN+"res_workset_wiz.gif", false); 
	
		declareWorkbenchImage(IDE.SharedImages.IMG_OBJ_PROJECT, PATH_OBJECT+"prj_obj.gif", true); 
		declareWorkbenchImage(IDE.SharedImages.IMG_OBJ_PROJECT_CLOSED, PATH_OBJECT+"cprj_obj.gif", true); 
		declareWorkbenchImage(IDE.SharedImages.IMG_OPEN_MARKER, PATH_ELOCALTOOL+"gotoobj_tsk.gif", true); 
			
		
		
		
		
	
		declareWorkbenchImage(IDE.SharedImages.IMG_OBJS_TASK_TSK, PATH_OBJECT+"taskmrk_tsk.gif", true); 
		declareWorkbenchImage(IDE.SharedImages.IMG_OBJS_BKMRK_TSK, PATH_OBJECT+"bkmrk_tsk.gif", true);