diff --git a/bundles/org.xmind.cathy.fonts/META-INF/MANIFEST.MF b/bundles/org.xmind.cathy.fonts/META-INF/MANIFEST.MF
index 0441f360d..a2e72bb0a 100644
--- a/bundles/org.xmind.cathy.fonts/META-INF/MANIFEST.MF
+++ b/bundles/org.xmind.cathy.fonts/META-INF/MANIFEST.MF
@@ -2,5 +2,5 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %Bundle-Name
Bundle-SymbolicName: org.xmind.cathy.fonts
-Bundle-Version: 3.7.3.qualifier
+Bundle-Version: 3.7.4.qualifier
Bundle-Vendor: %Bundle-Vendor
diff --git a/bundles/org.xmind.cathy.fonts/pom.xml b/bundles/org.xmind.cathy.fonts/pom.xml
index 2525d3153..bf83d1998 100644
--- a/bundles/org.xmind.cathy.fonts/pom.xml
+++ b/bundles/org.xmind.cathy.fonts/pom.xml
@@ -5,12 +5,12 @@
4.0.0
org.xmind.cathy.plugins
org.xmind.cathy.fonts
- 3.7.3-SNAPSHOT
+ 3.7.4-SNAPSHOT
eclipse-plugin
org.xmind.releng
org.xmind.cathy.releng
- 3.7.3-SNAPSHOT
+ 3.7.4-SNAPSHOT
../../
diff --git a/bundles/org.xmind.cathy.win32/META-INF/MANIFEST.MF b/bundles/org.xmind.cathy.win32/META-INF/MANIFEST.MF
index 5da84f1ce..3b2b2c371 100644
--- a/bundles/org.xmind.cathy.win32/META-INF/MANIFEST.MF
+++ b/bundles/org.xmind.cathy.win32/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.xmind.cathy.win32;singleton:=true
-Bundle-Version: 3.7.3.qualifier
+Bundle-Version: 3.7.4.qualifier
Bundle-Vendor: %providerName
Fragment-Host: org.xmind.cathy
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
diff --git a/bundles/org.xmind.cathy.win32/pom.xml b/bundles/org.xmind.cathy.win32/pom.xml
index aeb3fb4cc..1087668a4 100644
--- a/bundles/org.xmind.cathy.win32/pom.xml
+++ b/bundles/org.xmind.cathy.win32/pom.xml
@@ -5,12 +5,12 @@
4.0.0
org.xmind.cathy.plugins
org.xmind.cathy.win32
- 3.7.3-SNAPSHOT
+ 3.7.4-SNAPSHOT
eclipse-plugin
org.xmind.releng
org.xmind.cathy.releng
- 3.7.3-SNAPSHOT
+ 3.7.4-SNAPSHOT
../../
diff --git a/bundles/org.xmind.cathy/META-INF/MANIFEST.MF b/bundles/org.xmind.cathy/META-INF/MANIFEST.MF
index 255862669..53dac468f 100644
--- a/bundles/org.xmind.cathy/META-INF/MANIFEST.MF
+++ b/bundles/org.xmind.cathy/META-INF/MANIFEST.MF
@@ -2,11 +2,11 @@ Manifest-Version: 1.0
Bundle-SymbolicName: org.xmind.cathy;singleton:=true
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.ui,
- org.xmind.ui;bundle-version="[3.7.3,3.8.0)",
- org.xmind.ui.imports;bundle-version="[3.7.3,3.8.0)",
- org.xmind.ui.toolkit;bundle-version="[3.7.3,3.8.0)",
- org.xmind.core.command;bundle-version="[3.7.3,3.8.0)",
- org.xmind.core.command.remote;bundle-version="[3.7.3,3.8.0)",
+ org.xmind.ui;bundle-version="[3.7.4,3.8.0)",
+ org.xmind.ui.imports;bundle-version="[3.7.4,3.8.0)",
+ org.xmind.ui.toolkit;bundle-version="[3.7.4,3.8.0)",
+ org.xmind.core.command;bundle-version="[3.7.4,3.8.0)",
+ org.xmind.core.command.remote;bundle-version="[3.7.4,3.8.0)",
org.eclipse.e4.ui.workbench,
org.eclipse.ui.themes,
org.eclipse.e4.ui.model.workbench,
@@ -27,12 +27,12 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.core.expressions,
org.eclipse.e4.core.commands,
org.xmind.ui.dashboard,
- org.xmind.core.usagedata;bundle-version="[3.7.3,3.8.0)",
+ org.xmind.core.usagedata;bundle-version="[3.7.4,3.8.0)",
org.json,
- org.xmind.ui.browser;bundle-version="[3.7.3,3.8.0)",
- org.xmind.core.licensing;bundle-version="[3.7.3,3.8.0)",
+ org.xmind.ui.browser;bundle-version="[3.7.4,3.8.0)",
+ org.xmind.core.licensing;bundle-version="[3.7.4,3.8.0)",
org.eclipse.e4.ui.workbench.addons.swt,
- org.xmind.ui.mindmap;bundle-version="3.7.3",
+ org.xmind.ui.mindmap;bundle-version="3.7.4",
org.eclipse.ui.net;bundle-version="1.3.0",
org.eclipse.emf.ecore.xmi
Bundle-ManifestVersion: 2
@@ -49,5 +49,5 @@ Export-Package: org.xmind.cathy.internal;x-internal:=true,org.xmind.ca
l.renderer;x-internal:=true,org.xmind.ui.internal.e4handlers;x-intern
al:=true
Bundle-Name: %pluginName
-Bundle-Version: 3.7.3.qualifier
+Bundle-Version: 3.7.4.qualifier
Bundle-Activator: org.xmind.cathy.internal.CathyPlugin
diff --git a/bundles/org.xmind.cathy/plugin.xml b/bundles/org.xmind.cathy/plugin.xml
index 18f2af0a5..fbfa0abd2 100644
--- a/bundles/org.xmind.cathy/plugin.xml
+++ b/bundles/org.xmind.cathy/plugin.xml
@@ -1226,6 +1226,18 @@
+
+
+
+
+
+
+
+
diff --git a/bundles/org.xmind.cathy/pom.xml b/bundles/org.xmind.cathy/pom.xml
index e690e63e4..636c8f19d 100644
--- a/bundles/org.xmind.cathy/pom.xml
+++ b/bundles/org.xmind.cathy/pom.xml
@@ -5,12 +5,12 @@
4.0.0
org.xmind.cathy.plugins
org.xmind.cathy
- 3.7.3-SNAPSHOT
+ 3.7.4-SNAPSHOT
eclipse-plugin
org.xmind.releng
org.xmind.cathy.releng
- 3.7.3-SNAPSHOT
+ 3.7.4-SNAPSHOT
../../
diff --git a/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/CathyPlugin.java b/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/CathyPlugin.java
index a9c4eb9dd..2d97faf2f 100644
--- a/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/CathyPlugin.java
+++ b/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/CathyPlugin.java
@@ -18,6 +18,7 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
+import java.net.Authenticator;
import java.net.URL;
import java.util.Enumeration;
import java.util.Properties;
@@ -290,6 +291,8 @@ public void activateNetworkSettings() {
try {
networkPlugin
.loadClass("org.eclipse.core.internal.net.Activator"); //$NON-NLS-1$
+ /// cancel show AuthenticationDialog when return 401
+ Authenticator.setDefault(null);
} catch (ClassNotFoundException e) {
getLog().log(new Status(IStatus.WARNING, PLUGIN_ID,
"Failed to activate plugin 'org.eclipse.core.net'.", //$NON-NLS-1$
diff --git a/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/EmptyHandler.java b/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/EmptyHandler.java
new file mode 100644
index 000000000..6a5da698a
--- /dev/null
+++ b/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/EmptyHandler.java
@@ -0,0 +1,14 @@
+package org.xmind.cathy.internal;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+
+public class EmptyHandler extends AbstractHandler {
+
+ @Override
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ return null;
+ }
+
+}
diff --git a/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/renderer/XWBWRenderer.java b/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/renderer/XWBWRenderer.java
index 26b2ae5c5..6e5b16642 100644
--- a/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/renderer/XWBWRenderer.java
+++ b/bundles/org.xmind.cathy/src/org/xmind/cathy/internal/renderer/XWBWRenderer.java
@@ -1,5 +1,7 @@
package org.xmind.cathy.internal.renderer;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Field;
import java.util.List;
import javax.inject.Inject;
@@ -48,9 +50,77 @@ public Object createWidget(MUIElement element, Object parent) {
recreateLayout(element, (Shell) widget);
}
+ // modify dnd manager's dropAgents & dragAgents for widget
+ // (drop: remove SplitDropAgent2 & DetachedDropAgent & TrimDropAgent; drag: remove IBFDragAgent)
+ if (widget instanceof Shell && !((Shell) widget).isDisposed()) {
+ Shell shell = (Shell) widget;
+ Object theManager = shell.getData("DnDManager"); //$NON-NLS-1$
+ if (theManager == null) {
+ theManager = createDnDManager((MWindow) element);
+ }
+
+ if (theManager != null) {
+ trimDndManager(theManager);
+ shell.setData("DnDManager", theManager); //$NON-NLS-1$
+ }
+ }
+
return widget;
}
+ private Object createDnDManager(MWindow window) {
+ try {
+ Class managerClass = Class.forName(
+ "org.eclipse.e4.ui.workbench.addons.dndaddon.DnDManager"); //$NON-NLS-1$
+ Constructor constructor = (managerClass
+ .getDeclaredConstructors())[0];
+ constructor.setAccessible(true);
+ Object dndManager = constructor.newInstance(window);
+
+ return dndManager;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+ private void trimDndManager(Object theManager) {
+ try {
+ Class managerClass = theManager.getClass();
+
+ //trim dropAgents
+ Field dropField = managerClass.getDeclaredField("dropAgents"); //$NON-NLS-1$
+
+ dropField.setAccessible(true);
+ @SuppressWarnings("unchecked")
+ List