diff --git a/platform/platform-impl/src/com/intellij/util/ui/table/TableModelEditor.java b/platform/platform-impl/src/com/intellij/util/ui/table/TableModelEditor.java index 127c102ced4f..b58fefb60ecf 100644 --- a/platform/platform-impl/src/com/intellij/util/ui/table/TableModelEditor.java +++ b/platform/platform-impl/src/com/intellij/util/ui/table/TableModelEditor.java @@ -21,7 +21,6 @@ import com.intellij.ui.TableUtil; import com.intellij.ui.ToolbarDecorator; import com.intellij.ui.table.TableView; import com.intellij.util.Function; -import com.intellij.util.IncorrectOperationException; import com.intellij.util.containers.ContainerUtil; import com.intellij.util.ui.ColumnInfo; import com.intellij.util.ui.ElementProducer; @@ -61,7 +60,7 @@ public class TableModelEditor implements ElementProducer { } private static final class MyListTableModel extends ListTableModel { - private final List items; + private List items; private final TableModelEditor editor; private final THashMap modifiedToOriginal = new THashMap(); @@ -74,7 +73,9 @@ public class TableModelEditor implements ElementProducer { @Override public void setItems(@NotNull List items) { - throw new IncorrectOperationException(); + modifiedToOriginal.clear(); + this.items = items; + super.setItems(items); } @Override @@ -198,7 +199,7 @@ public class TableModelEditor implements ElementProducer { return model.apply(); } - public void clear() { - model.modifiedToOriginal.clear(); + public void reset(@NotNull List items) { + model.setItems(items); } } \ No newline at end of file diff --git a/xml/impl/src/com/intellij/ide/browsers/BrowserSettings.java b/xml/impl/src/com/intellij/ide/browsers/BrowserSettings.java index 97bfd8486fb0..2059f70ecc17 100644 --- a/xml/impl/src/com/intellij/ide/browsers/BrowserSettings.java +++ b/xml/impl/src/com/intellij/ide/browsers/BrowserSettings.java @@ -79,9 +79,6 @@ public class BrowserSettings implements SearchableConfigurable, Configurable.NoS @Override public void disposeUIResources() { - if (mySettingsPanel != null) { - mySettingsPanel.disposeUIResources(); - mySettingsPanel = null; - } + mySettingsPanel = null; } } diff --git a/xml/impl/src/com/intellij/ide/browsers/BrowserSettingsPanel.java b/xml/impl/src/com/intellij/ide/browsers/BrowserSettingsPanel.java index 1e2c9e6ffc87..98690c65eaff 100644 --- a/xml/impl/src/com/intellij/ide/browsers/BrowserSettingsPanel.java +++ b/xml/impl/src/com/intellij/ide/browsers/BrowserSettingsPanel.java @@ -227,9 +227,6 @@ public class BrowserSettingsPanel { updateBrowserField(); - browsersEditor.clear(); - } - - public void disposeUIResources() { + browsersEditor.reset(WebBrowserManager.getInstance().getList()); } } \ No newline at end of file