avoid that mediaViewPart is inactive when details view has the focus
authorKatja Luther <k.luther@bgbm.org>
Thu, 22 Jun 2017 09:50:38 +0000 (11:50 +0200)
committerKatja Luther <k.luther@bgbm.org>
Thu, 22 Jun 2017 09:50:38 +0000 (11:50 +0200)
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java

index 7a56897861311a7304bbe50372310b7c6f51f84a..22206310d7c5788f9217295f2f085f60697b45b3 100644 (file)
@@ -43,6 +43,7 @@ import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.IEditorPart;
 import org.eclipse.ui.IMemento;
 
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
@@ -374,7 +375,7 @@ public class DerivateView implements IPartContentHasFactualData, IConversationEn
     @Override
     public void changed(Object element) {
         setDirty(true);
-//        firePropertyChange(IEditorPart.PROP_DIRTY);
+        //firePropertyChange(IEditorPart.PROP_DIRTY);
         viewer.update(new TreeNode(element), null);
     }
 
index d2a0bc69a77cd0d92c04e822fa907e7370252962..e1d981a3d9f76974098c31fb23c831c04300c10d 100644 (file)
@@ -22,6 +22,8 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
 import org.eclipse.swt.widgets.Menu;
 import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.ISaveablePart;
 import org.eclipse.ui.IWorkbenchActionConstants;
 import org.eclipse.ui.IWorkbenchPart;
 import org.eclipse.ui.internal.E4PartWrapper;
@@ -34,6 +36,7 @@ import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
 import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptiveViewPart;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
+import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
 import eu.etaxonomy.taxeditor.model.IPartContentHasMedia;
 import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData;
@@ -95,10 +98,10 @@ public class MediaViewPart extends AbstractCdmEditorViewPart implements IPartCon
            if(part==this){
                return;
            }
-               if(AbstractUtility.getActiveE4Editor() == null){
-                       showEmptyPage();
-                       return;
-               }
+//             if(AbstractUtility.getActiveE4Editor() == null){
+//                     showEmptyPage();
+//                     return;
+//             }
                
 
         if (part instanceof DetailsViewPart || part instanceof SupplementalDataViewPart
@@ -154,6 +157,15 @@ public class MediaViewPart extends AbstractCdmEditorViewPart implements IPartCon
             ((BulkEditor) part).changed(selection.getFirstElement());
 
            }
+           if (part instanceof E4PartWrapper){
+               part = AbstractUtility.getE4WrappedPart(part);
+               if (part instanceof IDirtyMarkable){
+                        StructuredSelection selection = new StructuredSelection(object);
+                       ((IDirtyMarkable)part).changed(selection.getFirstElement());
+               }
+           }
+               
+           
            super.changed(object);
        }