commit | 82f10d4bbff60e8ef00c74c6d7ceb05306eb1072 | [log] [tgz] |
---|---|---|
author | nsandonato <nsandonato> | Mon Jul 18 21:32:45 2011 +0000 |
committer | nsandonato <nsandonato> | Mon Jul 18 21:32:45 2011 +0000 |
tree | 5249ebc6e9ef2ff52dfaa691562ac3a205fc65cf | |
parent | b10467e8212a258198e9f50faf521ffdcaf74f24 [diff] |
[324409] [editor][usability] XML Editor isn't marked dirty when changing a single field in design mode
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLMultiPageEditorPart.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLMultiPageEditorPart.java index 59f8da3..650999d 100644 --- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLMultiPageEditorPart.java +++ b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLMultiPageEditorPart.java
@@ -1032,6 +1032,9 @@ public boolean isSaveOnCloseNeeded() { // overriding super class since it does a lowly isDirty! if (fTextEditor != null) { + if (fDesignViewer instanceof XMLTableTreeViewer) { + ((XMLTableTreeViewer) fDesignViewer).forceCellEditorDeactivation(); + } return fTextEditor.isSaveOnCloseNeeded(); } return isDirty();
diff --git a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java index 4a994d7..368bff0 100644 --- a/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java +++ b/bundles/org.eclipse.wst.xml.ui/src-multipage/org/eclipse/wst/xml/ui/internal/tabletree/XMLTableTreeViewer.java
@@ -1,5 +1,5 @@ /***************************************************************************** - * Copyright (c) 2004, 2010 IBM Corporation and others. All rights reserved. This + * Copyright (c) 2004, 2011 IBM Corporation and others. All rights reserved. This * program and the accompanying materials are made available under the terms * of the Eclipse Public License v1.0 which accompanies this distribution, and * is available at http://www.eclipse.org/legal/epl-v10.html @@ -217,6 +217,12 @@ this.getTree().addPaintListener(fContentPaintListener); } + void forceCellEditorDeactivation() { + if (isCellEditorActive()) { + applyEditorValue(); + } + } + /** * This creates a context menu for the viewer and adds a listener as well * registering the menu for extension.