Bug 84269 [implementation] Leak: Java Editor preference page: listener in SmartTypingConfigurationBlock
N20050202-0010 The SmartTypingConfigurationBlock adds a property change listener to the JavaPlugin combined preference store. This listener is not removed --> results in leakage for each open close of the Java preference pages. Test case: Window>Preferences>Java>Editor For each open close the state associated with the SmartTypingConfigurationBlock is leaked.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/preferences/SmartTypingConfigurationBlock.java
new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_ESCAPE_STRINGS),
				new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_ADD_JAVADOC_TAGS),
				
				new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_SMART_SEMICOLON),
				new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_SMART_TAB),
				new OverlayPreferenceStore.OverlayKey(OverlayPreferenceStore.BOOLEAN, PreferenceConstants.EDITOR_SMART_OPENING_BRACE),
		};
	}	
	/**
	 * Creates page for mark occurrences preferences.
	 * 
	 * @param parent the parent composite
	 * @return the control for the preference page
	 */
	public Control createControl(Composite parent) {
		boolean useCollapsibleSections= false;
		
		SectionManager manager;
		Composite control;
		if (useCollapsibleSections) {
			manager= new SectionManager(JavaPlugin.getDefault().getPreferenceStore(), "smart_typing_preference_dialog_last_open_section"); 
			control= manager.createSectionComposite(parent);
		} else {
			manager= null;
			control= new Composite(parent, SWT.NONE);
			GridLayout layout= new GridLayout();
			layout.numColumns= 1;
			control.setLayout(layout);
		}
		Composite composite;