Bug 310665 [Browser] 'Web Browser' preference page ignores cancellation
I20100426-0852 1. Window > Preferences > General > Web Browser 2. In Windows XP, I see "Default system web browser", "Firefox", and "Internet Explorer". 3. Select IE. Click the 'Remove' button. 4. Click 'Cancel'. 5. Redo step 1. 6. Window > Preferences 7. IE is gone. :(
bundles/org.eclipse.ui.browser/src/org/eclipse/ui/internal/browser/BrowserManager.java
protected IBrowserDescriptor currentBrowser;
	
	private IPreferenceChangeListener pcl;
	protected boolean ignorePreferenceChanges = false;
	protected static BrowserManager instance;
	
	public static BrowserManager getInstance() {
		if (instance == null)
			instance = new BrowserManager();
		return instance;
	}
	private BrowserManager() {
		pcl = new IEclipsePreferences.IPreferenceChangeListener() {
			public void preferenceChange(PreferenceChangeEvent event) {
				String property = event.getKey();
				if (!ignorePreferenceChanges && property.equals("browsers")) { 
					loadBrowsers();
				}
				if (!property.equals(WebBrowserPreference.PREF_INTERNAL_WEB_BROWSER_HISTORY)) {
					setChanged();
					notifyObservers();
				}
			}
		};
		
	    InstanceScope instanceScope = new InstanceScope();
	    IEclipsePreferences prefs = instanceScope.getNode(WebBrowserUIPlugin.PLUGIN_ID);
	    prefs.addPreferenceChangeListener(pcl);
	}
	protected static void safeDispose() {