Gaudenz Alder 7 anni fa
parent
commit
aa6fb592c6

+ 6 - 0
ChangeLog

@@ -1,3 +1,9 @@
+06-JUN-2018: 8.7.6
+
+- Fixes proxy servlet response headers
+- Ignores invalid Iconfinder response
+- Adds email in Google user info
+
 05-JUN-2018: 8.7.5
 
 - Uses mxGraph 3.9.7 beta 2

+ 1 - 1
VERSION

@@ -1 +1 @@
-8.7.5
+8.7.6

+ 49 - 40
src/main/java/com/mxgraph/online/ProxyServlet.java

@@ -23,7 +23,6 @@ import javax.servlet.http.HttpServletResponse;
 @SuppressWarnings("serial")
 public class ProxyServlet extends HttpServlet
 {
-
 	/**
 	 * @see HttpServlet#HttpServlet()
 	 */
@@ -39,7 +38,7 @@ public class ProxyServlet extends HttpServlet
 			HttpServletResponse response) throws ServletException, IOException
 	{
 		String urlParam = request.getParameter("url");
-		
+
 		// build the UML source from the compressed request parameter
 		String ua = request.getHeader("User-Agent");
 		String ref = request.getHeader("referer");
@@ -53,17 +52,20 @@ public class ProxyServlet extends HttpServlet
 		else if (ref != null && ref.toLowerCase()
 				.matches("https?://([a-z0-9,-]+[.])*quipelements[.]com/.*"))
 		{
-			dom = ref.toLowerCase().substring(0, ref.indexOf(".quipelements.com/") + 17);
+			dom = ref.toLowerCase().substring(0,
+					ref.indexOf(".quipelements.com/") + 17);
 		}
 		// Enables Confluence/Jira proxy via referer or hardcoded user-agent (for old versions)
 		// UA refers to old FF on macOS so low risk and fixes requests from existing servers
-		else if ((ref != null && ref.equals("draw.io Proxy Confluence Server")) ||
-				(ua != null && ua.equals("Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:50.0) Gecko/20100101 Firefox/50.0")))
+		else if ((ref != null && ref.equals("draw.io Proxy Confluence Server"))
+				|| (ua != null && ua.equals(
+						"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:50.0) Gecko/20100101 Firefox/50.0")))
 		{
 			dom = "";
 		}
 
-		if (dom != null && urlParam != null && (urlParam.startsWith("http://") || urlParam.startsWith("https://")))
+		if (dom != null && urlParam != null && (urlParam.startsWith("http://")
+				|| urlParam.startsWith("https://")))
 		{
 			request.setCharacterEncoding("UTF-8");
 			response.setCharacterEncoding("UTF-8");
@@ -74,10 +76,7 @@ public class ProxyServlet extends HttpServlet
 			{
 				URL url = new URL(urlParam);
 				URLConnection connection = url.openConnection();
-				
-				response.setHeader("Pragma", "no-cache"); // HTTP 1.0
-				response.setHeader("Cache-control", "private, no-cache, no-store");
-				response.setHeader("Expires", "0");
+				response.setHeader("Cache-Control", "private, max-age=86400");
 
 				if (dom != null && dom.length() > 0)
 				{
@@ -85,62 +84,71 @@ public class ProxyServlet extends HttpServlet
 				}
 
 				connection.setRequestProperty("User-Agent", "draw.io");
-				
+
 				// Status code pass-through and follow redirects
 				if (connection instanceof HttpURLConnection)
 				{
-					((HttpURLConnection) connection).setInstanceFollowRedirects(true);
-					
+					((HttpURLConnection) connection)
+							.setInstanceFollowRedirects(true);
+
 					// Workaround for 451 response from Iconfinder CDN
-					int status = ((HttpURLConnection) connection).getResponseCode();
+					int status = ((HttpURLConnection) connection)
+							.getResponseCode();
 					int counter = 0;
-					
+
 					// Follows a maximum of 2 redirects 
-					while (counter++ < 2 && (status == HttpURLConnection.HTTP_MOVED_PERM ||
-						   status == HttpURLConnection.HTTP_MOVED_TEMP))
+					while (counter++ < 2
+							&& (status == HttpURLConnection.HTTP_MOVED_PERM
+									|| status == HttpURLConnection.HTTP_MOVED_TEMP))
 					{
 						url = new URL(connection.getHeaderField("Location"));
 						connection = url.openConnection();
-						((HttpURLConnection) connection).setInstanceFollowRedirects(true);
-						
+						((HttpURLConnection) connection)
+								.setInstanceFollowRedirects(true);
+
 						// Workaround for 451 response from Iconfinder CDN
 						connection.setRequestProperty("User-Agent", "draw.io");
-						status = ((HttpURLConnection) connection).getResponseCode();
+						status = ((HttpURLConnection) connection)
+								.getResponseCode();
 					}
-					
+
 					response.setStatus(status);
 				}
-				
+
 				String base64 = request.getParameter("base64");
-				
+
 				if (connection != null)
 				{
+					response.setContentType("application/octet-stream");
+
 					if (base64 != null && base64.equals("1"))
 					{
 						int BUFFER_SIZE = 3 * 1024;
-						
-						try (BufferedInputStream in = new BufferedInputStream(connection.getInputStream(), BUFFER_SIZE); )
+
+						try (BufferedInputStream in = new BufferedInputStream(
+								connection.getInputStream(), BUFFER_SIZE);)
 						{
-						    StringBuilder result = new StringBuilder();
-						    byte[] chunk = new byte[BUFFER_SIZE];
-						    int len = 0;
-						    while ( (len = in.read(chunk)) == BUFFER_SIZE )
-						    {
-						         result.append(mxBase64.encodeToString(chunk, false));
-						    }
-						    
-						    if ( len > 0 )
-						    {
-						         chunk = Arrays.copyOf(chunk,len);
-						         result.append(mxBase64.encodeToString(chunk, false));
-						    }
+							StringBuilder result = new StringBuilder();
+							byte[] chunk = new byte[BUFFER_SIZE];
+							int len = 0;
+							while ((len = in.read(chunk)) == BUFFER_SIZE)
+							{
+								result.append(
+										mxBase64.encodeToString(chunk, false));
+							}
+
+							if (len > 0)
+							{
+								chunk = Arrays.copyOf(chunk, len);
+								result.append(
+										mxBase64.encodeToString(chunk, false));
+							}
 
 							out.write(result.toString().getBytes());
 						}
 					}
 					else
 					{
-						response.setContentType(connection.getContentType());
 						Utils.copy(connection.getInputStream(), out);
 					}
 				}
@@ -150,7 +158,8 @@ public class ProxyServlet extends HttpServlet
 			}
 			catch (Exception e)
 			{
-				response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+				response.setStatus(
+						HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
 				e.printStackTrace();
 			}
 		}

+ 1 - 1
src/main/webapp/cache.manifest

@@ -1,7 +1,7 @@
 CACHE MANIFEST
 
 # THIS FILE WAS GENERATED. DO NOT MODIFY!
-# 06/05/2018 07:59 AM
+# 06/06/2018 01:20 PM
 
 app.html
 index.html?offline=1

File diff suppressed because it is too large
+ 560 - 553
src/main/webapp/js/app.min.js


File diff suppressed because it is too large
+ 1 - 1
src/main/webapp/js/atlas-viewer.min.js


File diff suppressed because it is too large
+ 549 - 542
src/main/webapp/js/atlas.min.js


+ 12 - 6
src/main/webapp/js/diagramly/DriveClient.js

@@ -535,13 +535,19 @@ DriveClient.prototype.updateUser = function(success, error, remember)
 	this.ui.loadUrl(url, mxUtils.bind(this, function(data)
 	{
     	var info = JSON.parse(data);
-    	this.setUser(new DrawioUser(info.id, info.email, info.name, info.picture, info.locale));
-    	this.setUserId(info.id, remember);
+    	
+    	// Requests more information about the user (email address is sometimes not in info)
+    	this.executeRequest(gapi.client.drive.about.get(), mxUtils.bind(this, function(resp)
+    	{
+    		this.setUser(new DrawioUser(info.id, resp.user.emailAddress, resp.user.displayName,
+    				(resp.user.picture != null) ? resp.user.picture.url : null, info.locale));
+        	this.setUserId(info.id, remember);
 
-		if (success != null)
-		{
-			success();
-		}
+    		if (success != null)
+			{
+				success();
+			}
+    	}), error);
 	}), error);
 };
 

+ 1 - 1
src/main/webapp/js/diagramly/Minimal.js

@@ -848,7 +848,7 @@ EditorUi.initMinimalTheme = function()
 
         this.put('insertAdvanced', new Menu(mxUtils.bind(this, function(menu, parent)
         {
-            ui.menus.addMenuItems(menu, ['importText', 'createShape', 'plantUml', '-', 'importCsv', 'editDiagram', 'formatSql', '-', 'insertPage'], parent);
+            ui.menus.addMenuItems(menu, ['importText', 'createShape', 'plantUml', '-', 'importCsv', 'formatSql', 'editDiagram'], parent);
         })));
         
         mxResources.parse('insertLayout=' + mxResources.get('layout'));

+ 21 - 21
src/main/webapp/js/diagramly/sidebar/Sidebar-AWS3.js

@@ -30,7 +30,7 @@
 	Sidebar.prototype.addAWS3AnalyticsPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service analytics';
 		var s = 1.5; //scale
@@ -87,7 +87,7 @@
 	Sidebar.prototype.addAWS3ApplicationServicesPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service app application services';
 		var s = 1.5; //scale
@@ -112,7 +112,7 @@
 	Sidebar.prototype.addAWS3ArtificialIntelligencePalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service ai artificial intelligence';
 		var s = 1.5; //scale
@@ -133,7 +133,7 @@
 	Sidebar.prototype.addAWS3BusinessProductivityPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service business productivity';
 		var s = 1.5; //scale
@@ -152,7 +152,7 @@
 	Sidebar.prototype.addAWS3ComputePalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service compute';
 		var s = 1.5; //scale
@@ -259,7 +259,7 @@
 	Sidebar.prototype.addAWS3ContactCenterPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service contact center';
 		var s = 1.5; //scale
@@ -274,7 +274,7 @@
 	Sidebar.prototype.addAWS3DatabasePalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service db database';
 		var s = 1.5; //scale
@@ -349,7 +349,7 @@
 	Sidebar.prototype.addAWS3DesktopAndAppStreamingPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service desktop app streaming application';
 		var s = 1.5; //scale
@@ -366,7 +366,7 @@
 	Sidebar.prototype.addAWS3DeveloperToolsPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service dev developer tools';
 		var s = 1.5; //scale
@@ -391,7 +391,7 @@
 	Sidebar.prototype.addAWS3GameDevelopmentPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service game development';
 		var s = 1.5; //scale
@@ -406,7 +406,7 @@
 	Sidebar.prototype.addAWS3GeneralPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service general';
 		var s = 1.5; //scale
@@ -543,7 +543,7 @@
 	Sidebar.prototype.addAWS3InternetOfThingsPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service iot internet of things';
 		var s = 1.5; //scale
@@ -642,7 +642,7 @@
 	Sidebar.prototype.addAWS3ManagementToolsPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service management tools';
 		var s = 1.5; //scale
@@ -729,7 +729,7 @@
 	Sidebar.prototype.addAWS3MessagingPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service messaging';
 		var s = 1.5; //scale
@@ -762,7 +762,7 @@
 	Sidebar.prototype.addAWS3MigrationPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service migration';
 		var s = 1.5; //scale
@@ -789,7 +789,7 @@
 	Sidebar.prototype.addAWS3MobileServicesPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service mobile services';
 		var s = 1.5; //scale
@@ -814,7 +814,7 @@
 	Sidebar.prototype.addAWS3NetworkAndContentDeliveryPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service network and content delivery';
 		var s = 1.5; //scale
@@ -875,7 +875,7 @@
 	Sidebar.prototype.addAWS3OnDemandWorkforcePalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service on demand workforce';
 		var s = 1.5; //scale
@@ -898,7 +898,7 @@
 	Sidebar.prototype.addAWS3SDKPalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service sdk software development kit';
 		var s = 1.5; //scale
@@ -939,7 +939,7 @@
 	Sidebar.prototype.addAWS3SecurityIdentityAndCompliancePalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service security and identity compliance';
 		var s = 1.5; //scale
@@ -1002,7 +1002,7 @@
 	Sidebar.prototype.addAWS3StoragePalette = function()
 	{
 		var sb = this;
-		var n = 'dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
+		var n = 'outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.aws3.";
 		var gn = 'mxgraph.aws3';
 		var dt = 'aws group amazon web service storage';
 		var s = 1.5; //scale

+ 1 - 1
src/main/webapp/js/diagramly/sidebar/Sidebar-AWS3D.js

@@ -5,7 +5,7 @@
 	{
 		var w = 100;
 		var h = 100;
-		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_STROKEWIDTH + '=1;align=center;dashed=0;outlineConnect=0;shape=mxgraph.aws3d.';
+		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_STROKEWIDTH + '=1;align=center;outlineConnect=0;dashed=0;outlineConnect=0;shape=mxgraph.aws3d.';
 		var gn = 'mxgraph.aws3d';
 		var dt = 'aws 3d amazon web service';
 

+ 8 - 8
src/main/webapp/js/diagramly/sidebar/Sidebar-ArchiMate.js

@@ -5,14 +5,14 @@
 	{
 		var w = 100;
 		var h = 75;
-		var s = 'html=1;shape=mxgraph.archimate.';
-		var am1 = 'html=1;whiteSpace=wrap;fillColor=#ffff99;shape=mxgraph.archimate.';
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#99ffff;shape=mxgraph.archimate.';
-		var am3 = 'html=1;whiteSpace=wrap;fillColor=#99ff99;shape=mxgraph.archimate.';
-		var am4 = 'html=1;whiteSpace=wrap;fillColor=#ffccff;shape=mxgraph.archimate.';
-		var am5 = 'html=1;whiteSpace=wrap;fillColor=#ccccff;shape=mxgraph.archimate.';
-		var am6 = 'html=1;whiteSpace=wrap;fillColor=#ffe0e0;shape=mxgraph.archimate.';
-		var am7 = 'html=1;whiteSpace=wrap;fillColor=#ffe0e0;shape=mxgraph.archimate.';
+		var s = 'html=1;outlineConnect=0;shape=mxgraph.archimate.';
+		var am1 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ffff99;shape=mxgraph.archimate.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#99ffff;shape=mxgraph.archimate.';
+		var am3 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#99ff99;shape=mxgraph.archimate.';
+		var am4 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ffccff;shape=mxgraph.archimate.';
+		var am5 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ccccff;shape=mxgraph.archimate.';
+		var am6 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ffe0e0;shape=mxgraph.archimate.';
+		var am7 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ffe0e0;shape=mxgraph.archimate.';
 		var gn = 'mxgraph.archimate';
 		var dt = 'archimate ';
 		

+ 10 - 10
src/main/webapp/js/diagramly/sidebar/Sidebar-ArchiMate3.js

@@ -16,7 +16,7 @@
 	
 	Sidebar.prototype.addArchimate3ApplicationPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#99ffff;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#99ffff;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -76,8 +76,8 @@
 
 	Sidebar.prototype.addArchimate3BusinessPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#ffff99;strokeColor=#000000;shape=mxgraph.archimate3.';
-		var am3 = 'html=1;whiteSpace=wrap;fillColor=#ffff99;strokeColor=#000000;verticalLabelPosition=bottom;verticalAlign=top;align=center;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ffff99;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am3 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#ffff99;strokeColor=#000000;verticalLabelPosition=bottom;verticalAlign=top;align=center;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -147,7 +147,7 @@
 
 	Sidebar.prototype.addArchimate3CompositePalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#FFB973;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#FFB973;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -176,8 +176,8 @@
 	
 	Sidebar.prototype.addArchimate3ImplementationAndMigrationPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#FFE0E0;strokeColor=#000000;shape=mxgraph.archimate3.';
-		var am3 = 'html=1;whiteSpace=wrap;fillColor=#E0FFE0;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#FFE0E0;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am3 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#E0FFE0;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -214,7 +214,7 @@
 	
 	Sidebar.prototype.addArchimate3MotivationPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#CCCCFF;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#CCCCFF;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -263,7 +263,7 @@
 	
 	Sidebar.prototype.addArchimate3PhysicalPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#AFFFAF;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#AFFFAF;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -363,7 +363,7 @@
 	
 	Sidebar.prototype.addArchimate3StrategyPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#F5DEAA;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#F5DEAA;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;
@@ -394,7 +394,7 @@
 	
 	Sidebar.prototype.addArchimate3TechnologyPalette = function()
 	{
-		var am2 = 'html=1;whiteSpace=wrap;fillColor=#AFFFAF;strokeColor=#000000;shape=mxgraph.archimate3.';
+		var am2 = 'html=1;outlineConnect=0;whiteSpace=wrap;fillColor=#AFFFAF;strokeColor=#000000;shape=mxgraph.archimate3.';
 
 		// Space savers
 		var sb = this;

+ 3 - 3
src/main/webapp/js/diagramly/sidebar/Sidebar-Basic.js

@@ -53,14 +53,14 @@
 			this.createVertexTemplateEntry(s2 + 'diag_stripe;dx=10;', w, h * 0.6, '', 'Diagonal Stripe', null, null, this.getTagsForStencil(gn, 'diag_stripe', dt).join(' ')),
 			this.createVertexTemplateEntry(s + 'rectCallout;dx=30;dy=15;boundedLbl=1;', w, h * 0.6, '', 'Rectangular Callout', null, null, this.getTagsForStencil(gn, 'rectangular_callout', dt).join(' ')),
 			this.createVertexTemplateEntry(s + 'roundRectCallout;dx=30;dy=15;size=5;boundedLbl=1;', w, h * 0.6, '', 'Rounded Rectangular Callout', null, null, this.getTagsForStencil(gn, 'rectangular_callout', dt).join(' ')),
-			this.createVertexTemplateEntry(s2 + 'layered_rect;dx=10;', w, h * 0.6, '', 'Layered Rectangle', null, null, this.getTagsForStencil(gn, 'layered_rect', dt).join(' ')),
+			this.createVertexTemplateEntry(s2 + 'layered_rect;dx=10;outlineConnect=0;', w, h * 0.6, '', 'Layered Rectangle', null, null, this.getTagsForStencil(gn, 'layered_rect', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'smiley', w, h, '', 'Smiley', null, null, this.getTagsForStencil(gn, 'smiley', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'star', w, h * 0.95, '', 'Star', null, null, this.getTagsForStencil(gn, 'star', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'sun', w, h, '', 'Sun', null, null, this.getTagsForStencil(gn, 'sun', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'tick', w * 0.85, h, '', 'Tick', null, null, this.getTagsForStencil(gn, 'tick', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'wave2;dy=0.3;', w, h * 0.6, '', 'Wave', null, null, this.getTagsForStencil(gn, 'wave', dt).join(' ')),
-			this.createVertexTemplateEntry('labelPosition=center;verticalLabelPosition=middle;html=1;shape=mxgraph.basic.button;dx=10;', w, h * 0.6, 'Button', 'Button', null, null, this.getTagsForStencil(gn, 'button', dt).join(' ')),
-			this.createVertexTemplateEntry('labelPosition=center;verticalLabelPosition=middle;html=1;shape=mxgraph.basic.shaded_button;dx=10;fillColor=#E6E6E6;strokeColor=none;', w, h * 0.6, 'Button', 'Button (shaded)', null, null, this.getTagsForStencil(gn, 'button', dt).join(' ')),
+			this.createVertexTemplateEntry('labelPosition=center;verticalLabelPosition=middle;align=center;html=1;shape=mxgraph.basic.button;dx=10;', w, h * 0.6, 'Button', 'Button', null, null, this.getTagsForStencil(gn, 'button', dt).join(' ')),
+			this.createVertexTemplateEntry('labelPosition=center;verticalLabelPosition=middle;align=center;html=1;shape=mxgraph.basic.shaded_button;dx=10;fillColor=#E6E6E6;strokeColor=none;', w, h * 0.6, 'Button', 'Button (shaded)', null, null, this.getTagsForStencil(gn, 'button', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'x', w, h, '', 'X', null, null, this.getTagsForStencil(gn, 'x', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'pie;startAngle=0.2;endAngle=0.9;', w, h, '', 'Pie', null, null, this.getTagsForStencil(gn, 'pie', dt).join(' ')),
 			this.createVertexTemplateEntry(s2 + 'arc;startAngle=0.3;endAngle=0.1;', w, h, '', 'Arc', null, null, this.getTagsForStencil(gn, 'arc', dt).join(' ')),

+ 10 - 10
src/main/webapp/js/diagramly/sidebar/Sidebar-EIP.js

@@ -4,8 +4,8 @@
 	Sidebar.prototype.addEipMessageConstructionPalette = function(expand)
 	{
 		var s = "strokeWidth=2;dashed=0;align=center;fontSize=8;shape=";
-		var s2 = "strokeWidth=2;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
-		var s3 = "strokeWidth=3;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
+		var s2 = "strokeWidth=2;outlineConnect=0;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
+		var s3 = "strokeWidth=3;outlineConnect=0;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern message construction ';
 		var sb = this;
@@ -80,7 +80,7 @@
 	Sidebar.prototype.addEipMessageRoutingPalette = function(expand)
 	{
 		var s = "strokeWidth=2;dashed=0;align=center;fontSize=8;shape=rect;fillColor=#fffbc0;strokeColor=#000000;";
-		var s2 = "strokeWidth=2;dashed=0;align=center;fontSize=8;fillColor=#c0f5a9;verticalLabelPosition=bottom;verticalAlign=top;strokeColor=#000000;shape=mxgraph.eip.";
+		var s2 = "strokeWidth=2;outlineConnect=0;dashed=0;align=center;fontSize=8;fillColor=#c0f5a9;verticalLabelPosition=bottom;verticalAlign=top;strokeColor=#000000;shape=mxgraph.eip.";
 		var s3 = "edgeStyle=none;endArrow=none;dashed=0;html=1;strokeWidth=2;";
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern message routing ';
@@ -122,7 +122,7 @@
 
 	Sidebar.prototype.addEipMessageTransformationPalette = function(expand)
 	{
-		var s = "strokeWidth=2;dashed=0;align=center;fontSize=8;fillColor=#c0f5a9;verticalLabelPosition=bottom;verticalAlign=top;strokeColor=#000000;shape=mxgraph.eip.";
+		var s = "strokeWidth=2;outlineConnect=0;dashed=0;align=center;fontSize=8;fillColor=#c0f5a9;verticalLabelPosition=bottom;verticalAlign=top;strokeColor=#000000;shape=mxgraph.eip.";
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern message transformation ';
 
@@ -144,8 +144,8 @@
 	Sidebar.prototype.addEipMessagingChannelsPalette = function(expand)
 	{
 		var s = "strokeWidth=2;dashed=0;align=center;fontSize=8;html=1;shape=";
-		var s2 = "strokeWidth=2;strokeColor=#000000;dashed=0;align=center;html=1;fontSize=8;shape=mxgraph.eip.";
-		var s3 = "strokeWidth=1;strokeColor=#000000;dashed=0;align=center;html=1;fontSize=8;shape=mxgraph.eip.";
+		var s2 = "strokeWidth=2;outlineConnect=0;strokeColor=#000000;dashed=0;align=center;html=1;fontSize=8;shape=mxgraph.eip.";
+		var s3 = "strokeWidth=1;outlineConnect=0;strokeColor=#000000;dashed=0;align=center;html=1;fontSize=8;shape=mxgraph.eip.";
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern messaging channel message ';
 		var sb = this;
@@ -182,7 +182,7 @@
 
 	Sidebar.prototype.addEipMessagingEndpointsPalette = function(expand)
 	{
-		var s = "dashed=0;strokeWidth=2;strokeColor=#000000;html=1;align=center;fontSize=8;verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.eip.";
+		var s = "dashed=0;outlineConnect=0;strokeWidth=2;strokeColor=#000000;html=1;align=center;fontSize=8;verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.eip.";
 		var s2 = 'fillColor=#c0f5a9;' + s;
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern messaging endpoint ';
@@ -213,9 +213,9 @@
 	Sidebar.prototype.addEipMessagingSystemsPalette = function(expand)
 	{
 		var s = "strokeWidth=2;dashed=0;align=center;fontSize=8;shape=";
-		var s2 = "strokeWidth=2;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
+		var s2 = "strokeWidth=2;outlineConnect=0;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
 		var s3 = "strokeWidth=1;dashed=0;align=center;fontSize=8;shape=";
-		var s4 = "strokeWidth=1;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
+		var s4 = "strokeWidth=1;outlineConnect=0;dashed=0;align=center;fontSize=8;shape=mxgraph.eip.";
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern messaging system ';
 		var sb = this;
@@ -316,7 +316,7 @@
 
 	Sidebar.prototype.addEipSystemManagementPalette = function(expand)
 	{
-		var s2 = "strokeWidth=2;dashed=0;align=center;fontSize=8;verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.eip.";
+		var s2 = "strokeWidth=2;outlineConnect=0;dashed=0;align=center;fontSize=8;verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.eip.";
 		var gn = 'mxgraph.eip';
 		var dt = 'eip enterprise integration pattern system management ';
 		

+ 1 - 1
src/main/webapp/js/diagramly/sidebar/Sidebar-Network.js

@@ -6,7 +6,7 @@
 		var h = 50;
 		var sb = this;
 		var s0 = 'fontColor=#0066CC;verticalAlign=top;verticalLabelPosition=bottom;labelPosition=center;align=center;';
-		var s = 'html=1;fillColor=#CCCCCC;strokeColor=#6881B3;gradientColor=none;gradientDirection=north;strokeWidth=2;shape=mxgraph.networks.';
+		var s = 'html=1;outlineConnect=0;fillColor=#CCCCCC;strokeColor=#6881B3;gradientColor=none;gradientDirection=north;strokeWidth=2;shape=mxgraph.networks.';
 		var s1 = 'fontColor=#0066CC;';
 		var gn = 'mxgraph.networks';
 		var dt = 'computer network ';

+ 9 - 9
src/main/webapp/js/diagramly/sidebar/Sidebar-PID.js

@@ -3,7 +3,7 @@
 	// Adds P&ID shapes
 	Sidebar.prototype.addPidInstrumentsPalette = function()
 	{
-		var s = 'html=1;align=center;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
+		var s = 'html=1;outlineConnect=0;align=center;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
 		var gn = 'mxgraph.pid2inst';
 		var dt = 'pid process instrumentation engineering instrument engineering ';
 
@@ -91,7 +91,7 @@
 	
 	Sidebar.prototype.addPidValvesPalette = function()
 	{
-		var s = 'dashed=0;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
+		var s = 'dashed=0;outlineConnect=0;html=1;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
 		var sv = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2valves.valve;valveType=";
 		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;dashed=0;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2valves.";
 		var gn = 'mxgraph.pid2valves';
@@ -150,7 +150,7 @@
 	
 	Sidebar.prototype.addPidCompressorsPalette = function()
 	{
-		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.compressors.";
+		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.compressors.";
 		var gn = 'mxgraph.pid.compressors';
 		var dt = 'pid process instrumentation engineering ';
 		
@@ -179,7 +179,7 @@
 			
 	Sidebar.prototype.addPidEnginesPalette = function()
 	{
-		var s = "dashed=0;align=center;html=1;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.engines.";
+		var s = "dashed=0;outlineConnect=0;align=center;html=1;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.engines.";
 		var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.engines.";
 		var gn = 'mxgraph.pid.engines';
 		var dt = 'pid process instrumentation engine motor ';
@@ -199,7 +199,7 @@
 			
 	Sidebar.prototype.addPidFiltersPalette = function()
 	{
-		var s = "html=1;dashed=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.filters.";
+		var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.filters.";
 		var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.filters.";
 		var gn = 'mxgraph.pid.filters';
 		var dt = 'pid process instrumentation filter ';
@@ -243,7 +243,7 @@
 			
 	Sidebar.prototype.addPidFlowSensorsPalette = function()
 	{
-		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.flow_sensors.";
+		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;outlineConnect=0;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.flow_sensors.";
 		var gn = 'mxgraph.pid.flow_sensors';
 		var dt = 'process instrumentation sensor ';
 		
@@ -286,7 +286,7 @@
 			
 	Sidebar.prototype.addPidPipingPalette = function()
 	{
-		var s = "html=1;dashed=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.piping.";
+		var s = "html=1;dashed=0;outlineConnect=0;align=center;" + mxConstants.STYLE_SHAPE + "=mxgraph.pid.piping.";
 		var sb = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.piping.";
 		var gn = 'mxgraph.pid.piping';
 		var dt = 'process instrumentation piping ';
@@ -341,8 +341,8 @@
 			
 	Sidebar.prototype.addPidMiscPalette = function()
 	{
-		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
-		var s2 = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.misc.";
+		var s = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid2";
+		var s2 = mxConstants.STYLE_VERTICAL_LABEL_POSITION + '=bottom;outlineConnect=0;align=center;dashed=0;html=1;' + mxConstants.STYLE_VERTICAL_ALIGN + '=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.pid.misc.";
 		var gn = 'mxgraph.pid.misc';
 		var dt = 'process instrumentation ';
 		

+ 1 - 1
src/main/webapp/js/diagramly/sidebar/Sidebar-Sitemap.js

@@ -3,7 +3,7 @@
 	// Adds Sitemap shapes
 	Sidebar.prototype.addSitemapPalette = function()
 	{
-		var s = 'html=1;strokeColor=none;fillColor=#0079D6;labelPosition=center;verticalLabelPosition=middle;verticalAlign=top;align=center;fontSize=12;spacingTop=-6;fontColor=#FFFFFF;shape=mxgraph.sitemap.';
+		var s = 'html=1;strokeColor=none;fillColor=#0079D6;labelPosition=center;verticalLabelPosition=middle;verticalAlign=top;align=center;fontSize=12;outlineConnect=0;spacingTop=-6;fontColor=#FFFFFF;shape=mxgraph.sitemap.';
 
 		// Space savers
 		var sb = this;

+ 2 - 2
src/main/webapp/js/diagramly/sidebar/Sidebar-WebIcons.js

@@ -4,7 +4,7 @@
 	Sidebar.prototype.addWebIconsPalette = function()
 	{
 		var sb = this;
-		var s = 'dashed=0;html=1;align=center;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.webicons.";
+		var s = 'dashed=0;outlineConnect=0;html=1;align=center;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.webicons.";
 		var gn = 'mxgraph.webicons';
 		var dt = 'web icons icon';
 		var w = 0.2;
@@ -369,7 +369,7 @@
 	Sidebar.prototype.addWebLogosPalette = function()
 	{
 		var sb = this;
-		var s = 'dashed=0;html=1;align=center;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.weblogos.";
+		var s = 'dashed=0;outlineConnect=0;html=1;align=center;labelPosition=center;verticalLabelPosition=bottom;verticalAlign=top;' + mxConstants.STYLE_SHAPE + "=mxgraph.weblogos.";
 		var gn = 'mxgraph.weblogos';
 		var dt = 'web logos logo';
 		var w = 0.2;

+ 42 - 34
src/main/webapp/js/diagramly/sidebar/Sidebar.js

@@ -792,7 +792,7 @@
 			{
 				this.addStencilPalette('gcp' + gcp[i], 'GCP / ' + gcp[i],
 						dir + '/gcp/' + gcp[i].toLowerCase().replace(/ /g, '_') + '.xml',
-						';html=1;fillColor=#4387FD;gradientColor=#4683EA;strokeColor=none;verticalLabelPosition=bottom;verticalAlign=top;align=center;');
+						';html=1;outlineConnect=0;fillColor=#4387FD;gradientColor=#4683EA;strokeColor=none;verticalLabelPosition=bottom;verticalAlign=top;align=center;');
 			}
 		}
 
@@ -1112,51 +1112,59 @@
 						{
 							if (req.getStatus() >= 200 && req.getStatus() <= 299)
 							{
-								try
+								// Ignore without error if no response
+								if (req.getText() != null && req.getText().length > 0)
 								{
-									var res = JSON.parse(req.getText());
-									
-									if (res == null || res.icons == null)
+									try
 									{
-										succ(results, len, false, terms);
-										this.editorUi.handleError(res);
-									}
-									else
-									{
-										for (var i = 0; i < res.icons.length; i++)
+										var res = JSON.parse(req.getText());
+										
+										if (res == null || res.icons == null)
 										{
-											var sizes = res.icons[i].raster_sizes;
-											var index = sizes.length - 1;
-											
-											while (index > 0 && sizes[index].size > 128)
-											{
-												index--;
-											}
-					
-											var size = sizes[index].size;
-											var url = sizes[index].formats[0].preview_url;
-					
-											if (size != null && url != null)
+											succ(results, len, false, terms);
+											this.editorUi.handleError(res);
+										}
+										else
+										{
+											for (var i = 0; i < res.icons.length; i++)
 											{
-												(mxUtils.bind(this, function(s, u)
+												var sizes = res.icons[i].raster_sizes;
+												var index = sizes.length - 1;
+												
+												while (index > 0 && sizes[index].size > 128)
 												{
-													results.push(mxUtils.bind(this, function()
+													index--;
+												}
+						
+												var size = sizes[index].size;
+												var url = sizes[index].formats[0].preview_url;
+						
+												if (size != null && url != null)
+												{
+													(mxUtils.bind(this, function(s, u)
 													{
-														return this.createVertexTemplate('shape=image;html=1;verticalAlign=top;' +
-															'verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;imageAspect=0;' +
-															'aspect=fixed;image=' + u, s, s, '');
-													}));
-												}))(size, url);
+														results.push(mxUtils.bind(this, function()
+														{
+															return this.createVertexTemplate('shape=image;html=1;verticalAlign=top;' +
+																'verticalLabelPosition=bottom;labelBackgroundColor=#ffffff;imageAspect=0;' +
+																'aspect=fixed;image=' + u, s, s, '');
+														}));
+													}))(size, url);
+												}
 											}
+						
+											succ(results, (page - 1) * count + results.length, res.icons.length == count, terms);
 										}
-					
-										succ(results, (page - 1) * count + results.length, res.icons.length == count, terms);
+									}
+									catch (e)
+									{
+										succ(results, len, false, terms);
+										this.editorUi.handleError(e);
 									}
 								}
-								catch (e)
+								else
 								{
 									succ(results, len, false, terms);
-									this.editorUi.handleError(e);
 								}
 							}
 							else

File diff suppressed because it is too large
+ 1 - 1
src/main/webapp/js/embed-static.min.js


+ 2 - 1
src/main/webapp/js/mxgraph/Sidebar.js

@@ -989,6 +989,7 @@ Sidebar.prototype.addBasicPalette = function(dir)
  */
 Sidebar.prototype.addMiscPalette = function(expand)
 {
+	var sb = this;
 	var lineTags = 'line lines connector connectors connection connections arrow arrows '
 	
 	var fns = [
@@ -1077,7 +1078,7 @@ Sidebar.prototype.addMiscPalette = function(expand)
 			symbol.vertex = true;
 			cell.insert(symbol);
 	    	
-	    		return sb.createVertexTemplateFromCells([cell], cell.geometry.width, cell.geometry.height, 'Shape Group');
+    		return sb.createVertexTemplateFromCells([cell], cell.geometry.width, cell.geometry.height, 'Shape Group');
 		}),
 	 	this.createVertexTemplateEntry('shape=partialRectangle;whiteSpace=wrap;html=1;left=0;right=0;fillColor=none;', 120, 60, '', 'Partial Rectangle'),
 		this.createVertexTemplateEntry('shape=partialRectangle;whiteSpace=wrap;html=1;bottom=1;right=1;top=0;bottom=1;fillColor=none;routingCenterX=-0.5;', 120, 60, '', 'Partial Rectangle'),

File diff suppressed because it is too large
+ 1 - 1
src/main/webapp/js/reader.min.js


File diff suppressed because it is too large
+ 1 - 1
src/main/webapp/js/viewer.min.js