Bug 38547 [Preferences] Changing preferences ignored after "Restore defaults" pressed.
e.g. 1) Go to Workbench->Preferences->Debug->Console 2) Change the colour of console output (you can show the console and see the colour change) and press "Apply" <don't leave the dialog> 3) Press "Restore Defaults" and "Apply" and the colour will be reset to default in the console 4) Now change the colour to something else and press "Apply" ... NO Change to the console colour. The problem can be seen in the PropertyChangeEvent that always contains the default values because once the "Restore Defaults" flag has been set it is never reset and therefore the "Apply" always sends the defaults.
bundles/org.eclipse.jface/src/org/eclipse/jface/preference/FieldEditorPreferencePage.java
fieldEditorParent = new Composite(parent, SWT.NULL);
	GridLayout layout = new GridLayout();
	layout.numColumns = 1; 
	layout.marginHeight = 0; 
	layout.marginWidth = 0;
	fieldEditorParent.setLayout(layout);
	fieldEditorParent.setFont(parent.getFont());
	createFieldEditors();
	if (style == GRID)
		adjustGridLayout();
	
	initialize();
	checkState();
	return fieldEditorParent;
}
/**
 * Creates the page's field editors.
 * <p>
 * The default implementation of this framework method
 * does nothing. Subclass must implement this method to
 * create the field editors.
 * </p>
 * <p>
 * Subclasses should call <code>getFieldEditorParent</code>
 * to obtain the parent control for each field editor.
 * This same parent should not be used for more than
 * one editor as the parent may change for each field
 * editor depending on the layout style of the page
 * </p>
 */